JMX 에이전트의 사용 - xrath.com 에서 번역됨

목차 | 전의 항목 | 다음의 항목 | Java Management Extensions (JMX) 테크놀러지 개요

## 제 4 장

## JMX 에이전트의 사용

Java Management Extensions (JMX) 에이전트는, Java 가상 머신 (Java VM) 내에서 실행되는 관리 엔티티입니다. MBean 와 관리 어플리케이션과의 파이프역으로서 기능합니다. JMX 에이전트의 다양한 컴퍼넌트에 대해, 다음의 섹션으로 설명합니다.

- "MBean 서버 "
- "에이전트 서비스 "
- "프로토콜 어댑터와 연결기 "

## MBean 서버

MBean 서버는, JMX 에이전트의 코어 컴퍼넌트입니다. 관리 조작에 공개되고 있는 에이전트내의 객체의 레지스트리입니다. MBean 서버에 등록되어 모든 객체가, 관리 어플리케이션에 공개됩니다. 다만, MBean 서버는 MBean 의 관리 인터페이스만을 공개해, 객체의 직접 참조는 공개하지 않습니다.

에이전트의 Java VM 의 외부로부터 관리하는 자원은, MBean 로서 서버에 등록할 필요가 있습니다. MBean 서버에는 같은 Java VM 내에서 MBean 에 액세스하기 위한 표준화 된 인터페이스도 있어, 로컬 객체에 있어 관리 가능한 자원을 조작할 수 있다고 하는 이점이 있습니다. MBean 는 다음에 의해 인스턴스화 되고 등록됩니다.

- 다른 MBean
- 에이전트 자신
- remote administration 어플리케이션

MBean 를 등록하는 경우는, 일의의 객체명을 할당할 필요가 있습니다. 관리 어플리케이션에서는 객체명을 사용해, 관리 조작을 실행하는 대상이 되는 객체를 특정합니다. MBean 로 이용 가능한 조작에는, 다음의 조작이 있습니다.

- MBean 의 관리 인터페이스의 검출
- 속성치의 읽고 쓰기
- MBean 에 의해 정의된 조작의 실행
- MBean 에 의해 보내진 통지의 취득
- 객체명 또는 속성치를 기본으로 한 MBean 의 쿼리

## 에이전트 서비스

에이전트 서비스란, MBean 서버에 등록된 MBean 의 관리 조작을 실행할 수 있는 객체입니다. 에이전트에 관리 기능을 갖게하는 것으로, JMX 를 사용하면보다 강력한 관리 솔루션을 구축할 수 있습니다. 에이전트 서비스도 MBean 가 되는 일이 있어, 이 때는 에이전트 서비스와 그 기능을 MBean 서버로부터 제어할 수 있습니다. JMX 스펙에서는, 이하의 에이전트 서비스를 정의하고 있습니다.

- 관리 애플릿 (m-let) 서비스를 개입시킨 동적 클래스 로딩에 의해, 네트워크로부터 동적으로 다운로드된 새로운 클래스와 네이티브 라이브러리를 취득해, 인스턴스화한다
- 모니터로 MBean 속성의 수치 또는 캐릭터 라인치를 관찰해, 각종의 변경을 다른 객체에 통지할 수 있다
- 타이머에 의해, 스케줄링 기구를 제공해, 사전에 정의한 간격으로 통지를 송신할 수 있다
- 관계 서비스에서는 MBean 간의 관계를 정의해, 그 관계의 일관성을 유지한다

## 프로토콜 어댑터와 연결기

프로토콜 어댑터와 연결기를 사용하면(자), remote administration 어플리케이션으로부터 에이전트에 액세스 할 수 있습니다. MBean 서버로 인스턴스화 되고 등록된, 모든 MBean 에 특유의 프로토콜을 사용해 뷰를 제공합니다. Java VM 의 외부의 관리 어플리케이션에서는, 다음 일이 가능하게 됩니다.

- 기존의 MBean 의 속성의 취득 또는 설정
- 기존의 MBean 상에서 조작의 실행
- 새로운 MBean 의 인스턴스화와 등록
- MBean 가 보내는 통지의 등록과 수신

따라서 JMX 에이전트를 관리하려면 , 적어도 1 개(살)은 프로토콜 어댑터나 연결기를 포함하지 않으면 안됩니다. Java SE 플랫폼에는, 표준 RMI 연결기가 포함되어 있습니다. 에이전트는 프로토콜 어댑터나 연결기를 임의의 개수 포함할 수가 있어 다양한 프로토콜에 의해 동시에 원격로 관리 및 감시할 수가 있습니다.

### 프로토콜 어댑터

프로토콜 어댑터는, 지정된 프로토콜을 개입시킨 JMX 에이전트의 관리 뷰를 제공합니다. MBean 의 조작 및 MBean 서버가 지정된 프로토콜의 형식으로 변환합니다. 또, SNMP 와 같은 다른 정보 모델에의 변환도 실시합니다. Java SE 플랫폼은, 프로토콜 어댑터를 표준 장비 하고 있지 않습니다.

프로토콜 어댑터에 접속하는 관리 어플리케이션은, 일반적으로, 지정된 프로토콜 전용입니다. 이것은, 특정의 관리 프로토콜에 의존한 종래의 관리 솔루션의 전형적인 케이스입니다. 관리 어플리케이션은 JMX 에이전트에 대해서, MBean 서버의 원격 형식에서 액세스 하는 것이 아니라, MBean 서버의 조작에 맵 된 조작으로 액세스 합니다.

### 연결기

연결기는, 에이전트와 remote administration 어플리케이션을 접속하기 위해서 사용됩니다. 이 경우의 remote administration 어플리케이션은, JMX 테크놀러지에 대응해, 그 이름대로, JMX 스펙의 분산 서비스를 사용해 개발된 관리 어플리케이션입니다. 이런 종류의 통신은, 에이전트내의 연결기 서버나, 매니저내의 연결기 클라이언트가 실시합니다.

이러한 컴퍼넌트는, 특정의 프로토콜을 사용해 point-to-point로 관리 조작을 투과적으로 전송합니다. JMX 원격 API 는 MBean 서버에 대한 원격 인터페이스를 제공해, 관리 어플리케이션은 이 인터페이스를 통해서 조작을 실행합니다. 연결기는 지정된 프로토콜 전용입니다만, 모든 연결기는 같은 원격 인터페이스를 갖추고 있기 (위해)때문에, 관리 어플리케이션에서는 어느 연결기도 똑같이 사용할 수 있습니다.

표준 JMX 연결기에 대한 자세한 것은,제 5 장 「JMX 연결기를 사용한 자원의 remote administration」 를 참조해 주세요.

목차 | 전의 항목 | 다음의 항목 | Java Management Extensions (JMX) 테크놀러지 개요 Java Management Extensions (JMX), Java Platform, Standard Edition 6

Copyright © 2006 Sun Microsystems, Inc. All rights reserved.