원격 모니터링 시스템이란 네트웍에 분산된 호스트 혹은 원격 어플리케이션의 상태를 실시간으로 모니터링 하는 시스템이다. 네트웍에 분산된 호스트들은 다양한 플랫폼을 갖추고 있는 것이 현실이다. 하지만, 기존의 모니터링 시스템들은 플랫폼에 의존적인 성격을 띠고 있다. 네트웍을 통해서 모니터링을 하기 때문에 잠재적인 네트웍의 문제발생에 대한 적절한 대응이 필요하지만, 기존의 모니터링 시스템들은 네트웍의 문제에 대해서 적절하게 대응을 못하고 있다. 그리고 호스트의 상태를 변화시키는 요인은 호스트의 시스템 자원보다는 어플리케이션의 상태변화가 주 요인이 되고 있지만, 기존의 시스템들은 주로 호스트의 상태정보만 모니터링을 하고 있다. 따라서, 분산된 호스트들의 플랫폼에 독립적이고, 네트웍의 잠재적인 문제발생을 적절하게 대응을 할 수 있고, 호스트의 상태정보 보다는 호스트의 어플리케이션의 상태정보를 모니터링 하는 시스템이 필요한 실정이다. 본 논문에서는 네트웍에 분산된 어플리케이션의 실시간 모니터링을 통해서 어플리케이션 상태를 효과적으로 관리할 수 있는 모니터링 시스템인 RAMS (Remote Applications Monitoring System)의 설계 및 구현을 제시한다. 이 시스템은 네트웍에 분산된 호스트들의 효과적인 관리를 위해 호스트 어플리케이션의 상태를 모니터링 한다. RAMS는 모니터링 대상인 호스트 어플리케이션의 모니터링을 담당하는 Agent, 호스트의 등록, 관리를 담당하는 Manager로 구성된다. Manager와 Agent는 네트웍 단절 혹은 호스트 failure의 상황에도 자동으로 복구가 가능할 수 있도록 JINI를 최대한 활용함으로써 다른 시스템에 비해 시스템의 구성 및 관리가 용이한 특성을 갖는다.
원격 모니터링 시스템이란 네트웍에 분산된 호스트 혹은 원격 어플리케이션의 상태를 실시간으로 모니터링 하는 시스템이다. 네트웍에 분산된 호스트들은 다양한 플랫폼을 갖추고 있는 것이 현실이다. 하지만, 기존의 모니터링 시스템들은 플랫폼에 의존적인 성격을 띠고 있다. 네트웍을 통해서 모니터링을 하기 때문에 잠재적인 네트웍의 문제발생에 대한 적절한 대응이 필요하지만, 기존의 모니터링 시스템들은 네트웍의 문제에 대해서 적절하게 대응을 못하고 있다. 그리고 호스트의 상태를 변화시키는 요인은 호스트의 시스템 자원보다는 어플리케이션의 상태변화가 주 요인이 되고 있지만, 기존의 시스템들은 주로 호스트의 상태정보만 모니터링을 하고 있다. 따라서, 분산된 호스트들의 플랫폼에 독립적이고, 네트웍의 잠재적인 문제발생을 적절하게 대응을 할 수 있고, 호스트의 상태정보 보다는 호스트의 어플리케이션의 상태정보를 모니터링 하는 시스템이 필요한 실정이다. 본 논문에서는 네트웍에 분산된 어플리케이션의 실시간 모니터링을 통해서 어플리케이션 상태를 효과적으로 관리할 수 있는 모니터링 시스템인 RAMS (Remote Applications Monitoring System)의 설계 및 구현을 제시한다. 이 시스템은 네트웍에 분산된 호스트들의 효과적인 관리를 위해 호스트 어플리케이션의 상태를 모니터링 한다. RAMS는 모니터링 대상인 호스트 어플리케이션의 모니터링을 담당하는 Agent, 호스트의 등록, 관리를 담당하는 Manager로 구성된다. Manager와 Agent는 네트웍 단절 혹은 호스트 failure의 상황에도 자동으로 복구가 가능할 수 있도록 JINI를 최대한 활용함으로써 다른 시스템에 비해 시스템의 구성 및 관리가 용이한 특성을 갖는다.
In general, remote monitoring systems monitor the status of distributed hosts and/or applications in real-time for diverse managerial purposes. However, most of the extant systems have a few undesirable problems. First of all, they are platform-dependent and are not resilient to network and/or host ...
In general, remote monitoring systems monitor the status of distributed hosts and/or applications in real-time for diverse managerial purposes. However, most of the extant systems have a few undesirable problems. First of all, they are platform-dependent and are not resilient to network and/or host failures. Moreover, they normally focus on the resource usage trends in monitored hosts, rather than on the status change of the applications running on them. We strongly believe that the latter has more direct and profound effect on the resource usage patterns on each host. In this paper, we present the design and implementation of the Remote Applications Monitoring System (RAMS) that enables us to effectively manage distributed applications through a real-time monitoring of their respective resource usages. The RAMS is a centralized system that consists of many distributed agents and a single centralized manager. An agent on each host is in charge of collecting and reporting the status of local applications. The manager handles agent registration and provides a central access point to the selection and monitoring of distributed applications. The salient features of the system include robustness and portability The adoption of JINI greatly facilitates an automatic recovery from partial network failure and host failure.
In general, remote monitoring systems monitor the status of distributed hosts and/or applications in real-time for diverse managerial purposes. However, most of the extant systems have a few undesirable problems. First of all, they are platform-dependent and are not resilient to network and/or host failures. Moreover, they normally focus on the resource usage trends in monitored hosts, rather than on the status change of the applications running on them. We strongly believe that the latter has more direct and profound effect on the resource usage patterns on each host. In this paper, we present the design and implementation of the Remote Applications Monitoring System (RAMS) that enables us to effectively manage distributed applications through a real-time monitoring of their respective resource usages. The RAMS is a centralized system that consists of many distributed agents and a single centralized manager. An agent on each host is in charge of collecting and reporting the status of local applications. The manager handles agent registration and provides a central access point to the selection and monitoring of distributed applications. The salient features of the system include robustness and portability The adoption of JINI greatly facilitates an automatic recovery from partial network failure and host failure.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
따라서, 본 논문에서는 기존 원격 모니터링 시스템들의 단점을 해결하기 위한 해결책으로, JINI를 기반으로 한 분산환경에서 네트웍에 분산된 호스트들의 어플리케이션 상태정보를 실시간으로 모니터링올 해서, 호스트의 상태를 효과적으로 관리할 수 있는 모니터링 시스템인 RAMS (Remote Applications Monitoring System) 에대한 설계 및 구현을 제시하였다.
본 논문에서는 분산환경에서 네트웍에 존재하는 원격호스트들을 효율적으로 관리하기 위해 실시간 원격 어플리케이션 모니터링 시스템인 RAMS를 JAVA, JINI, JNI, C 라이브러리를 이용하여 신뢰성을 확보하고, 확장성을 유지할 수 있도록 설계 및 구현을 하였다.
제안 방법
로부터 요청을 전송받아 그 요청에 대한 실행을 Command 클래스를 상속받고 있는 적당한 하위 Command 클래스들올 선택 올 해서 요청올 수행하도록 하는 역할을 한다. 그리고 Agent-Communicatorlnterface6l]정의한 인터페이X를 구현하였다.
룩업 서비스를 처음으로 찾게 된다. 그리고 Mana- ger가 실행이 되었는지를 판단하고, 호스트의 이름과 IP 를 Manager에게 전송올 하였다. 다음으로 Manager가 Agent에게 어플리케이션 리스트를 요청을 해서, Agent 가 호스트의 어플리케이션을 수집해서 전송을 하였다.
그리고 Mana- ger가 실행이 되었는지를 판단하고, 호스트의 이름과 IP 를 Manager에게 전송올 하였다. 다음으로 Manager가 Agent에게 어플리케이션 리스트를 요청을 해서, Agent 가 호스트의 어플리케이션을 수집해서 전송을 하였다.
대상 데이터
하는 시스템이다. 모니터링 대상은 CPU, 메모리 사용량, 네트웍 사용량, 그리고 상위 5 프로세스에 대한정보이다. Sinfo 시스템은 Linux 2.
시스템이다. 모니터링 대상은 원격 호스트에서 서비스하는 프로토콜인, SMTP, IMAP, POP3, HTTP, SSHD둥과 호스트 자원인 CPU, 디스크, 메모리등이다. Zabbix 시스템은 Unix/Linux 기반으로, OpenBSD, FreeBSD, HP-UX, AIX, Solaris, MacOS X, SCO Open Server둥의 환경에서 사용이 가능하다.
성능/효과
호스트들은 네트웍 상에 분산되어 있다. 3 결과 분산된 호스트들의 상태를 관리자가 로컬에서 체크 및 관리하기에는 인적자원 및 비용이 상당히 필요하게 되었다. 따라서, 분산되어 있는 호스트들올 관리하기 위해서는 원격으로 호스트의 자원 및 상태를 모니터링 할 수 있는 시스템이 요구가 되어 왔고, 기존의 여러 시스템들이 존재하고 있다 그러나, 기존의 원격 모니터링 시스템들의 문제점을 살펴보면, 첫째, 호스트 플랫폼에 의존적이기 때문에 이 기종 시스템일 경우 시스템 확장 및 재구성에 어려운 문제점이 있다.
둘째, 네트웍 및 호스트의 일시적 장애시에도 시스템모니터링을 쉽게 restart할 수 있는 유연한 플랫폼 독립적 프레임워크를 제공한다. 클러스터의 구성은 다양한 기종으로 형성될 수 있기 때문에 어떠한 호스트를 클러스터에 추가하더라도 그에 필요한 작업이 최소화, 자동화 될 수 있어야 한다.
따라서, 분산되어 있는 호스트들올 관리하기 위해서는 원격으로 호스트의 자원 및 상태를 모니터링 할 수 있는 시스템이 요구가 되어 왔고, 기존의 여러 시스템들이 존재하고 있다 그러나, 기존의 원격 모니터링 시스템들의 문제점을 살펴보면, 첫째, 호스트 플랫폼에 의존적이기 때문에 이 기종 시스템일 경우 시스템 확장 및 재구성에 어려운 문제점이 있다. 둘째, 네트웍 장애 등의 잠재적인 문제를 적절하게 대웅하기 어렵다. 셋째, 어플리케이션의 상태정보 보다는 호스트의 자원 및 상태정보에 대해서 더 중점을 두고 있기 때문에, 부하가 큰 호스트의 어떤 어플리케이션을 이동(Migration) 시켜야 하는지 판단하기가 어렵다.
제공한다. 첫째, 어플리케이션 모니터링을 통해 서비스의 상태를 보다 정확히 파악하여 일정한 성능을 유지하면서 고객에게 지속적인 서비스를 제공할 수 있도록 한다. 이를 가능하도록 하기 위해 RAMS는 각 호스트에서 수행중인 하나 이상의 서버프로그램。들 각각에 대하여 자원 및 성능을 모니터링 할 수 있도록 하였고 아를 바탕으로 구체적으로 어떤 프로그램이 호스트의 상태에 영향을 미치고 있는 지 파악이 가능하게 됨으로 자원을 많이 사용하고 있는 프로세스를 다른 호스트로 이주시키는 둥의 관리를 통해 고객에게 지속적인 서비스를 만족스럽게 제공할 수 있다.
후속연구
발전함에 따라 극복될 것으로 기대된다. 그리고, 현재 시스템에서는 감시 대상인 어플리케이션이 수행되고 있는 호스트의 성능 또는 장애 발생시의 문제 해결에 초점을 맞추고 있으나, 궁극적으로는 Manager 장애시의 문제 해결 방안이 모색되어야 할 것으로 본다
향후 RAMS는 원격 어플리케이션을 위한 모니터링시스템뿐만 아니라 네트웍에 존재하는 이 기종의 모든 시스템에 대한 잠재적인 문제발생에 대한 진단과 예방이 가능한 시스템으로의 확장이 가능할 것으로 기대된다.
참고문헌 (12)
Tobias Oetiker, Dave RandMRTG, 'Performance Monitoring Extensions,' http://mrtg-pme.sourceforge.net
※ AI-Helper는 부적절한 답변을 할 수 있습니다.