SNMP 기본
SNMP(Simple Network Management Protocol)는 주로 네트워크 관리 시스템에서 관리 주의를 보증하는 조건에 대해 네트워크 디바이스를 모니터하는 데 사용되는 인터넷 표준 프로토콜입니다. 일반적으로 SNMP를 지원하는 디바이스는 라우터, 스위치, 서버, 워크스테이션 및 프린터를 포함합니다. 이 절은 SNMP 기본을 소개하고 Cast Iron MIB의 개요를 제공합니다.
SNMP의 어휘에서, Cast Iron 통합 어플라이언스는 "네트워크 요소" 또는 "관리 디바이스"로 참조되어 네트워크의 구성원이며 관리할 수 있음을 표시합니다. 네트워크 요소에는 요소에 관한 정보를 제공하는 에이전트가 포함됩니다. 에이전트는 두 가지 핵심 기능을 수행합니다. 첫 번째, 관리 시스템의 요청에 응답하고 두 번째로 네트워크 요소의 이벤트에 관한 알림을 발송합니다. 에이전트에서 관리자로의 비동기 알림은 트랩으로 부릅니다.
SNMP 트랩은 에이전트가 요청되지 않은 SNMP 메시지를 통해 관리 스테이션에 중요한 이벤트를 알릴 수 있습니다. 폴링 또는 트랩을 통해 제공되는 정보는 MIB(Management Information Base)에서 정의됩니다. MIB는 통신 네트워크에서 엔티티 관리에 사용되는 가상 데이터베이스입니다. MIB는 고유한 오브젝트 ID(OID)를 갖는 각 오브젝트로 오브젝트 계층 구조를 정의합니다. OID는 마침표로 구분된 숫자로 지정됩니다(예: ".1.3.6.1.2.1.1"). OID를 때로는 공통 이름이라고 부릅니다. 예를 들어, 특정 OID .1.3.6.1.2.1.1을 "시스템"으로 참조할 수 있습니다. SNMP 프로토콜은 많은 공용 MIB를 정의하며, 조직이 사용자 정의된 애플리케이션 특정 MIB를 정의할 수 있게 합니다.
Cast Iron MIB 이해
Cast Iron WMC에서 다운로드된 파일은 복수의 MIB DEFINITIONS = BEGIN - END 섹션을 갖습니다. 각 섹션이 고유한 계층 구조로 MIB를 구성합니다. Cast Iron 특정 정보를 폴링하려면 CASTIRON-IA-MIB를 사용하십시오. 각 MIB는 MIB 기능을 설명하는 MODULE-IDENTITY를 갖습니다. MODULE-IDENTITY 뒤에 오는 주석 섹션은 MIB 컨텐츠의 개요를 제공하며 모든 MIB 오브젝트의 이름과 OID를 나열하는 오브젝트 요약을 포함합니다.
-- ciIaProjectSummary ciia.1.1.1
-- ciIaNbrProjects ciia.1.1.1.1
-- ciIaNbrRunningOrchs ciia.1.1.1.2
-- ciIaNbrStoppedOrchs ciia.1.1.1.3
-- ciIaNbrRunningJobs ciia.1.1.1.4
-- ciIaNbrCompletedJobs ciia.1.1.1.5
-- ciIaNbrErroredJobs ciia.1.1.1.6
ciIaNbrRunningJobs OBJECT-TYPE -- ciia.1.1.1.4
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Total number of currently running jobs.
"
::= { ciIaProjectSummary 4 }
핵심 영역은 다음과 같습니다. - ciIaNbrRunningJobs OBJECT-TYPE - 오브젝트의 이름을 정의합니다. 끝에 OID의 단축 양식을 제공하는 주석이 있음을 참고하십시오.
- SYNTAX Unsigned32 - 이것은 해당 값이 오르거나 내릴 수 있는 부호 없는 정수입니다.
- MAX-ACCESS read-only - 읽기 전용 값입니다. 관리자가 요청할 수 있지만 변경할 수 없습니다.
- DESCRIPTION - 오브젝트를 설명합니다.
$ snmpwalk -v 2c -c public -M "+/home/choller/mibs" -m "+CASTIRON-IA-MIB" flintstone2 ciIaProjectSummary
CASTIRON-IA-MIB::ciIaNbrProjects.0 = Gauge32: 2
CASTIRON-IA-MIB::ciIaNbrRunningOrchs.0 = Gauge32: 0
CASTIRON-IA-MIB::ciIaNbrStoppedOrchs.0 = Gauge32: 14
CASTIRON-IA-MIB::ciIaNbrRunningJobs.0 = Gauge32: 0
CASTIRON-IA-MIB::ciIaNbrCompletedJobs.0 = Gauge32: 0
CASTIRON-IA-MIB::ciIaNbrErroredJobs.0 = Gauge32: 0
다음 데이터는 lciIaProjectTable을 폴링할 때 표시됩니다. -- ciIaProjectTable ciia.1.1.2
-- ciIaProjectEntry ciia.1.1.2.1
-- ciIaProjEntryIndex ciia.1.1.2.1.1
-- ciIaProjEntryName ciia.1.1.2.1.2
-- ciIaProjEntryVersion ciia.1.1.2.1.3
-- ciIaProjEntryConfig ciia.1.1.2.1.4
-- ciIaProjEntryState ciia.1.1.2.1.5
-- ciIaProjEntryNbrRunning ciia.1.1.2.1.6
-- ciIaProjEntryNbrCompleted ciia.1.1.2.1.7
-- ciIaProjEntryNbrErrored ciia.1.1.2.1.8
-- ciIaProjEntryTimePublished ciia.1.1.2.1.9
SNMP
테이블이 인증 확인 중일 수 있습니다. SNMP 테이블은 데이터베이스
스키마와 비슷하게 어플라이언스의 각 프로젝트에 관한 이름, 버전,
구성, 상태 및 기타 정보를 표시합니다. 각 항목 이름(예:
ciIaProjEntryName, ciIaProjEntryVersion)은 테이블의 열을
설명합니다. 각 항목에 대한 추가 정보를 찾기 위해 MIB에서 해당
문자열을 검색할 수 있습니다. 참고: 반복적인 방식으로 프로젝트 테이블을
"탐색"하려고 시도하면 문제가 발생할 수 있습니다. 대신, 테이블 정보를
볼 때 항상 테이블을 이해하는 도구 기능을 사용하십시오.
다음 예는 "탐색" 기술을 설명합니다. 이 경우에
프로젝트가 공개된 후에 새 구성을 작성하기 위해 복제되어 두 개의
테이블 행이 생성되었습니다. 출력이 표시하는 것처럼, 어떤 항목이
특정 행과 연관되는지를 이해하는 것은 어렵습니다. 이 경우
항목 및 행의 올바른 배열을 판별하기 위해 색인(OID의 마지막
부분)을 보아야 합니다. $ snmpwalk -v 2c -c public -M "+/home/choller/mibs" -m "+CASTIRON-IA-MIB" flintstone2 ciIaProjectTable
CASTIRON-IA-MIB::ciIaProjEntryName.98304 = STRING: OnlineLicensing
CASTIRON-IA-MIB::ciIaProjEntryName.98305 = STRING: OnlineLicensing
CASTIRON-IA-MIB::ciIaProjEntryVersion.98304 = STRING: 1.0
CASTIRON-IA-MIB::ciIaProjEntryVersion.98305 = STRING: 1.0
CASTIRON-IA-MIB::ciIaProjEntryConfig.98304 = STRING: Default
CASTIRON-IA-MIB::ciIaProjEntryConfig.98305 = STRING: OnlineLicensingClone
CASTIRON-IA-MIB::ciIaProjEntryState.98304 = INTEGER: undeployed(1)
CASTIRON-IA-MIB::ciIaProjEntryState.98305 = INTEGER: undeployed(1)
CASTIRON-IA-MIB::ciIaProjEntryNbrRunning.98304 = Gauge32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrRunning.98305 = Gauge32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrCompleted.98304 = Counter32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrCompleted.98305 = Counter32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrErrored.98304 = Counter32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrErrored.98305 = Counter32: 0
CASTIRON-IA-MIB::ciIaProjEntryTimePublished.98304 = STRING: 2009-6-12,16:36:20.0,+0:0
CASTIRON-IA-MIB::ciIaProjEntryTimePublished.98305 = STRING: 2009-6-12,16:36:20.0,+0:0
정보가
snmptable 명령을 사용하여 맵핑될 때 다음
예에서 보는 것처럼 더 명확하게 표시됩니다. $ snmptable -v 2c -c public -M "+/home/choller/mibs" -m "+CASTIRON-IA-MIB" flintstone2 ciIaProjectTable
SNMP table: CASTIRON-IA-MIB::ciIaProjectTable
PEN* PEV PEC PES PER COM PEE PETP
OnlineLicensing 1.0 Default undeployed 0 0 0 2009-6-12,16:36:20.0,
+0:0
OnlineLicensing 1.0 OnlineLicensingClone undeployed 0 0 0 2009-6-12,16:36:20.0,
+0:0
*Table Key: PEN=ciIaProjEntryName, PEV=ciIaProjEntryVersion, PEC=ciIaProjEntryConfig,
PES=ciIaProjEntryState, PER=ciIaProjEntryNbrRunning, COM=ciIaProjEntryNbrCompleted,
PEE=ciIaProjEntryNbrErrored, PETP=ciIaProjEntryTimePublished
이들 예는 OID가 아닌 텍스트 이름을 사용함을 참고하십시오. MIB의 기능이 OID와 텍스트 이름 사이를 맵핑하는 것이기 때문에 정기적으로 OID를 사용할 필요가 없습니다.