JMX 테크놀러지의 소개 - xrath.com 에서 번역됨

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

## 제 1 장

## JMX 테크놀러지의 소개

Java Management Extensions 테크놀러지는, Java 2 Platform, Standard Edition (J2SE) 5.0 의 Java 플랫폼에 표준 장비 되고 있습니다. JMX 테크놀러지에 대해 벌써 이해하고 있는 경우는, 버젼 정보에 대해부록 A 「JMX 테크놀러지의 버젼」 을 참조해 주세요.

JMX 테크놀러지에서는, 어플리케이션, 디바이스, 서비스등의 자원을 관리하기 위한 간단하고 표준적인 방법이 준비되어 있습니다. JMX 테크놀러지는 동적이기 때문에, 자원이 작성, 인스톨, 및 구현되면(자), 그 자원을 감시 및 관리하기 위해서 사용할 수 있습니다. JMX 테크놀러지를 사용해, Java 가상 머신1 (Java VM)을 감시 및 관리할 수도 있습니다.

JMX 테크놀러지는, 밀접하게 관련하는 2 개의 Java Specification Requests (JSR)로서 Java Community Process (JCP)에 의해 개발되었습니다.

- JSR 3, Java Management Extensions Instrumentation and Agent Specification
- JSR 160, Java Management Extensions Remote API

어느 쪽의 JSR 도 Javadoc 툴로 생성된 API 문서에 의해 정의되고 있습니다. 또, 어느쪽이나 스펙 문서가 PDF 에서도 제공되고 있습니다. 「Specifications and Reference Implementations」는 다음의 사이트로부터 다운로드할 수 있습니다.

`http://java.sun.com/products/JavaManagement/download.html`

이름이 가리키는 대로, JMX Remote API 에서는 원격 기능이 JMX 스펙에 추가되고 있어 어플리케이션, 시스템, 및 네트워크를 원격로 감시 및 관리할 수 있습니다. 이 문서에서는, 「JMX 테크놀러지」라고 하는 말은 JMX 스펙과 JMX Remote API 의 양쪽 모두를 가리키고 있습니다.

이 장에서는, 이하의 섹션으로 JXM 테크놀러지에 대해 소개합니다.

- "JMX 테크놀러지에 대해 "
- "JMX 테크놀러지를 사용하는 이유 "

## JMX 테크놀러지에 대해

JMX 스펙에서는, 아키텍쳐(architecture), 설계 패턴, 및 API 에 대해 Java 프로그램 언어로 정의하고 있습니다. 또 어플리케이션과 네트워크의 관리 및 감시의 서비스에 대해서도 정의하고 있습니다.

JMX 테크놀러지를 사용해, 자원은 Managed Bean, 즉 MBean 로 불리는 1 개 또는 복수의 Java 객체에 의해 계측 되고 있습니다. 이러한 MBean 는, MBean 서버로 불리는 코어의 관리 대상 객체 서버에 등록됩니다. MBean 서버는 관리 에이전트로서 동작해, Java 프로그램 언어를 사용할 수 있는 대부분의 디바이스상에서 실행할 수 있습니다.

스펙에서는, 스펙에 준거해 계측 된 자원을 관리하기 위해서 사용하는 JMX 에이전트를 정의하고 있습니다. JMX 에이전트는 MBean 가 등록되어 있는 MBean 서버와 MBean 를 처리하는 일련의 서비스로 구성됩니다. JMX 에이전트는, 이 방법으로 직접 자원을 제어해, remote administration 어플리케이션으로 이용할 수 있도록(듯이) 합니다.

자원이 계측 되는 방법은, 관리 인프라스트럭쳐(infrastructure)와는 완전히 무관계합니다. 그 때문에 자원은, 그 관리 어플리케이션이 구현되고 있는 방법으로 관계없이 관리 가능합니다.

JMX 테크놀러지에서는, 표준 연결기 (JMX 연결기)를 정의하고 있습니다. JMX 연결기를 사용하면(자), remote administration 어플리케이션으로부터 JMX 에이전트에 액세스 할 수 있습니다. 다른 프로토콜을 사용하는 JMX 연결기에서도, 같은 관리 인터페이스를 준비해 있습니다. 그 때문에 관리 어플리케이션에서는, 사용하고 있는 통신 프로토콜에 관계없이, 자원을 투과적으로 관리할 수 있습니다. 또 JMX 에이전트는, JMX 스펙에 준거하고 있지 않지만 JMX 에이전트를 지원하고 있는 시스템이나 어플리케이션에서도 사용할 수 있습니다.

## JMX 테크놀러지를 사용하는 이유

Java 코드의 계측, 유용한 Java 에이전트의 작성, 분산 관리 미들웨어나 매니저의 구현, 기존의 관리 및 감시 시스템에 대한 솔루션의 순조로운 통합 등, JMX 테크놀러지에서는, 모든 업계의 Java 개발자에게 유연성의 높은 실현 방법을 제공합니다.

- 최소한의 투자로 Java 어플리케이션을 관리할 수 있습니다. JMX 테크놀러지 에이전트는, Java 테크놀러지 대응의 대부분의 디바이스로 실행할 수 있기 (위해)때문에, Java 어플리케이션의 설계에 큰 영향을 주는 일 없이 관리할 수 있습니다. Java 어플리케이션에서는, 관리 객체 서버를 묻어, 그 기능의 일부를 객체 서버에 등록된 1 개(살) 또는 몇개의 관리 대상 Bean (MBean)로서 이용할 수 있도록(듯이) 할 필요가 있을 뿐입니다.
- Java 테크놀러지 베이스의 어플리케이션, 시스템, 및 네트워크를 관리하는 표준적인 방법을 준비해 있습니다. 예를 들어, Java Platform, Enterprise Edition (Java EE) 5 어플리케이션 서버는, JMX 아키텍쳐(architecture)에 준거하고 있어, 그러므로에 JMX 테크놀러지를 사용해 관리할 수 있습니다.
- JMX 테크놀러지를 사용하면, Java VM 의 아웃 오브 박스의 관리를 할 수 있습니다. Java 가상 머신 (Java VM)은, JMX 테크놀러지를 사용해 고도로 계측 되고 있습니다. JMX 에이전트를 기동해, 간단하게 편입의 Java VM Instrumentation에 액세스 할 수 있습니다. 이것에 의해, Java VM 의 원격에 의한 감시와 관리를 할 수 있습니다.
- 스케이라불로 동적인 관리 아키텍쳐(architecture)를 준비해 있습니다. 각각의 JMX 에이전트 서비스는, 요건에 응해 관리 에이전트에 플러그 인 가능한 독립 모듈입니다. 이 컴퍼넌트 베이스의 생각에 의해, JMX 솔루션은, 설치 면적의 작은 디바이스로부터 대규모 원거리 통신 스윗치, 또 그 이상의 규모에까지 확대 가능합니다. JMX 스펙에서는, 일련의 코어 에이전트 서비스를 준비해 있습니다. 서비스는 추가로 개발할 수 있어 관리 인프라스트럭쳐(infrastructure)로 동적으로 로드, 언로드, 또는 갱신이 가능합니다.
- JMX 테크놀러지는, 기존의 표준 Java 테크놀러지를 활용하고 있습니다. JMX 스펙에서는, Java Naming and Directory Interface (JNDI)등의 기존의 Java 스펙을 필요에 따라서 참조하고 있습니다.
- NetBeans IDE 5.0 에서는, JMX 모듈을 작성하는 것으로 JMX 어플리케이션의 작성이 간단하게 됩니다. JMX 모듈은, NetBeans Update Center 로부터 입수할 수 있습니다.
- 기존의 관리 솔루션이나 최신 기술과 간단하게 통합할 수 있습니다. 예를 들어 JMX 에이전트는 HTML 브라우저로부터 관리할 수 있습니다. JMX API 는 오픈인터페이스로, 모든 관리 시스템 벤더가 이용 가능합니다. JMX 솔루션에서는, JiniTM 네트워크 테크놀러지나 Service Location Protocol (SLP)등의 검색·검출 서비스 및 프로토콜을 사용할 수 있습니다.

1 「Java 가상 머신」과「Java VM」라고 하는 말은, Java 플랫폼의 가상 머신을 가리킵니다.

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

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