강좌
클라우드/리눅스에 관한 강좌입니다.
네트워크 분류

ucd-snmp 4.2.1로 업그래이드

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문


icon01.giftitle.gif

앞선 강좌에서 snmp업그레이드강좌를 상세히 다룬적이 있다.

이번 강좌는 실제작업내용을 보면서 간단히 따라할수 있도록 꾸며진 것이다.

 

icon04.gif 1. snmp 데몬 내리기

먼저, 서버에서 실행되고 있는 snmpd를 종료시킨다.

아래 예를 보면 종료시키는 설명은 따로 하지않아도 될것 같지만 간단히 언급하면, 리눅스의 모든 데몬의 시작과 종료를 위한 스크립트를 저장하고 있는 디렉토리는 /etc/rc.d/init.d/ 이다.

또한 이 디렉토리의 스크립트들은 서버가 부팅되면서 실행이 설정되 데몬을 올리기위한 데몬들의 시작스크립트들을 포함하고 있다.

ucdsnmp01.gif

기존의 snmpd의 실행을 종료시켰다면 다음과 같이 ps로 실행되고 있는 snmp가 있는가를 확인한다.

snmpd의 새로운버전을 올리려고 하는데 기존에 실행중인 snmpd가 있다면 에러가 나기때문이다.

ucdsnmp02.gif


icon04.gif 2. snmpd소스 압축풀기

아래와 같이 ucd-snmp-4.2.1.tar.gz를 tar로 풀어보자.

tar옵션에서 z옵션을 함께주면 보시는 예처럼 gz과 tar를 동시에 풀어준다.

ucdsnmp03.gif

압축된 snmpd소스를 tar로 풀어주고 나면 ucd-snmp-4.2.1이라는 디렉토리가 생성이 된다.

이 디렉토리로 이동하여 생성된 파일들을 아래와 같이 확인해 보시기 바란다.

ucdsnmp04.gif


icon04.gif 3. Configure

컴파일을 하기전에 먼저 Makefile을 생성하기 위해 configure를 한다.

압축을 푼후에 생성된 디렉토리(ucd-snmp-4.2.1)에서 아래예와 같이 cofigure를 실행한다.

ucdsnmp05.gif

제법 긴 라인이 출력되지만 간단히 생략하였다.

configure의 마지막단계에서는 아래와 같이 몇가지 설정해야하는 것이 있다.

ucdsnmp06.gif

 

 

System Contact Information에서는 시스템관리자의 email을 입력해주면 된다.

default로는 시스템의 root계정이 입력된다.

ucdsnmp07.gif

 

 

System Location 에서는 snmpd가 설치되어 있는 위치를 간단한 주석처럼 입력해주면 된다.

ucdsnmp08.gif

 

Logfile location은 snmpd에 관련된 로그파일의 위치를 절대경로로 입력해주면된다.

리눅스에서의 기본위치는 /var/log/snmpd.log 이며, 물론 다른곳에 위치시킬수도 있다.

ucdsnmp09.gif

이로써 configure가 끝이났다.

이제 컴파일을 한 단계이다.


icon04.gif 4. 컴파일하기(make)

자 이제 컴파일을 해보도록 하자.

간단히 make라고만 하면 위에서 configure라는 작업결과 생성된 Makefile로 컴파일을 하게된다.

ucdsnmp10.gif

제법 긴 라인이 출력되지만 뒷부분은 생략하였다.



icon04.gif 5. 설치하기(make install)

컴파일이 끝난후에는 컴파일결과 생성된 outfile들을 적당한 디렉토리에 위치시키는 "make install"작업을 해야한다.

어떤위치에 설치가되는가를 두루 확인하기바란다.

ucdsnmp11.gif


icon04.gif 6. snmpd.conf파일 설정하기

ucd-snmpd의 소스로 설치하게되면 snmpd.conf파일의 기본위치는 /usr/local/snmpd/snmpd.conf 이다.

따라서 이 디렉토리가 존재하지않는다면 아래예와 같이 mkdir로 생성을 해야한다.

ucdsnmp12.gif

 

그리고, 컴파일결과 생성된 EXAMPLE.conf 파일을 이 디렉토리(/usr/local/snmpd/)로 복사를 한다.

복사한후에 확인한 결과들은 아래예를 참조바란다.

ucdsnmp13.gif



icon04.gif 7. snmpd.conf 파일 수정하기

이제 새로운 snmpd.conf파일을 조금 수정해줘야한다.

물론, MRTG등의 소프트웨어를 운영하면서 가끔씩 이 파일(snmpd.conf)을 수정하게된다.

기본적인 셋팅을 위해서 이파일을 수정해야하는 것이다.

ucdsnmp14.gif

수정할 부분은 아래와 같은 부분의 주석처리이다.

이부분을 주석처리하는 이유는  다음과 같다.

대부분의 snmp Agent들은 community  name으로 public을 사용한다.

이런 Agent들과 snmp를 이용한 정확한 통신을 위해서는 community name을 동일하게 설정해야하는데 모든 Agent들을 일일이 확인하면서 수정할수는 있다.

하지만, MRTG로 작업하는 많은 부분에서 모든 Agent들의 community name을 확인할수는 없을 것이다.

따라서, community name의 기본값인 public으로 설정하기위한 작업이 이 주석처리인 것이다.

ucdsnmp15.gif

 


icon04.gif 8. snmpd 실행

이제 새로운 버전의 snmpd를 실행해보자.

새로운 snmpd는 /usr/local/sbin 디렉토리에 존재하므로 아래와 같이 실행해보자.

물론 잘알고는 있겠지만 노파심에 한마디 하면 업그레이드하기전의 snmpd의 실행은 "/etc/rc.d/init.d/snmpd start"와 같이 했음을 기억하기바란다.

하지만, 새로 업그레이드한 snmpd는 /usr/local/sbin/snmpd로 실행을 한다.

물론, 뒷부분에 설명되어 있지만 서버부팅과 함께 새로운 snmpd의 실행을 위해서 시작스크립트에 넣는 작업도 해야한다.

ucdsnmp16.gif

 

업그레이드된 snmpd의 데몬을 ps로 확인해본 것이다.

ucdsnmp17.gif


icon04.gif 9. snmpwalk 테스트

snmpd의 업그레이드와 설정및 데몬실행이 모두 끝났으므로 이제 snmpwalk로 테스트를 해보도록 하자.

이 테스트하는 방법에 대한 것은 다음과 같은 형식으로 이루어 진다.

형식 : snmpwalk target-ip-address public system

ucdsnmp18.gif

위와 같이 OID의 값들을 정상적으로 쿼리되어 출력되면 snmpd의 업그레이드가 정상적으로 된 것을 의미하며 그 기능에도 이상이 없음을 나타내는 것이다.



icon04.gif 10. 부팅시 자동실행설정(/etc/rc.d/rc.local에 등록)

이제, 마지막으로 서버부팅이나 리부팅시에 snmpd를 자동으로 실행시키기 위해 /etc/rc.d/rc.local 파일에 다음과 같이 등록을 하도록하자.

ucdsnmp19.gif

서버부팅후에 매번 snmpd을 실행시킬수 있는 정말 부지런한 서버관리자라면 관계없겠지만, 필자처럼 게으런 서버관리자들은 자동스크립트에 넣어야 할것이다.

ucdsnmp20.gif

위의 주석처리와 snmpd실행등의 포맷은 정해진 바가 없으므로 필자의 입력양식을 참조하여 나름대로 멋있게 입력해보기 바랍니다.

 

이상으로 snmpd-4.2.1로의 업그레이드에 대한 간단한 강좌를 마치고 질문은 해당질문에서서 받도록 하겠다.

 

저작권 : 수퍼유저코리아(www.superuser.co.kr), 상업적인 용도가 아니면 모든 사용이 가능함


관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,041 명
  • 현재 강좌수 :  35,855 개
  • 현재 접속자 :  114 명