Skip to content

mrtg on freebsd , monitor windows2003

조회 수 16813 추천 수 0 2009.10.11 23:39:54

FreeBSD에 mrtg를 설치하여 윈도우 서버의 cpu사용량을 모니터해보자..

일단 Freebsd 서버에서 작업하자..

1. snmp설치..(실제로를 설치하지않아도 상관없으나 snmpwalk를 실행해서 윈도우 서버에 접속이 잘되나 확인하려면 필요함.)
 
cd /usr/ports/net-mgmt/net-snmp
make install clean

2. mrtg 설치

cd /usr/ports/net-mgmt/mrtg/
make install clean

3. 윈도우 서버 snmp설치

제어판 >> 프로그램 추가 삭제 >> 윈도우 컴포넌트 >> 네트웍메니지먼트 뭐시기...
snmp를 클릭하고 선택한다..아마도  cd가 필요할것임.

설치되엇으면 comunity를 세팅해줘야한다.

제어판 > administrator 관리 >> service 에서 snmp선택후 오른쪽버튼 클릭 프로퍼티
커뮤니티를 public으로 만들자..그 아래부분도 선택을 모든 호스트에서 물어보기 가능으로 바꾼다.
(보안상의 문제는 나중에 다된다음에 개인적으로수정할것)

이제 됫다..

4. snmpwalk 으로 snmp값을 가져오는지 확인한다.

snmpwalk -Os -c public -v 1 10.1.5.101(아이피)

무슨 값들으 쭉나오면 일단 성공..

이제 cpu 인스턴스를 찾아보자.

snmpwalk -Os -c public -v 1 10.1.5.101 .1.3.6.1.2.1.25.3.3.1.2

hrProcessorLoad.2 = INTEGER: 87
hrProcessorLoad.3 = INTEGER: 87
hrProcessorLoad.4 = INTEGER: 87
hrProcessorLoad.5 = INTEGER: 86
hrProcessorLoad.6 = INTEGER: 87
hrProcessorLoad.7 = INTEGER: 86
hrProcessorLoad.8 = INTEGER: 86
hrProcessorLoad.9 = INTEGER: 84

이런 비슷한 값이 나온다..
필자는 코어가 8개이므로 8개가 나온다..hrProcessorLoad 다음에 나오는 숫자가 인스턴트 숫자이다..



5. 이제 mrtg  config만들자.
cd /usr/local/etc/mrtg/
vi mrtg.cfg

다음 내용을 넣는다.
Workdir:/usr/local/www/apache22/data/mrtg
IconDir: /usr/local/share/mrtg
Options[_]: bits,growright
language:korean

Target[R-21]:.1.3.6.1.2.1.25.3.3.1.2.2&.1.3.6.1.2.1.25.3.3.1.2.3:public@10.1.5.196
MaxBytes[R-21]: 100
Title[R-21]: R-56 CPU LOAD
Unscaled[R-21]: ymwd
ShortLegend[R-21]:%
YLegend[R-21]: CPU  Utilization
Legend1[R-21]: CPU #1 in % (Load)
Legend2[R-21]:CPU#2  in % (Load)
LegendI[R-21]:  CPU #1
LegendO[R-21]:CPU#2
Options[R-21]: gauge,integer,nopercent
PageTop[R-21]: <H1>  R-21 CPU Load % </H1>
        <div>
                <TABLE>
                        <TR><TD>Node Name</TD><TD>R-21</TD></TR>
                </TABLE>
        </div>

제일 중요한건 Target부분이다..이 설정은 2번core  하고 3번 코어의 사용량을 그래프로 나타내준다.
mrtg 는 꼭 그런지 므로겟으나 in 과 out 이 있으므로 저렇게 & 표시로 연결해줘야한다..
public은 커뮤니티이름 그뒤에 아이피 이렇게 써주면된다..

일단 cpu가 두개인분들은 이러면 끝이다..

그런데 난 cpu가 8개이므로 그래프를 8 or 4개를 그려도 되나..전체합친 cpu  사용량을 찾아보기로 결정..다음처럼 수정한다..

target 부분만 수정한다.

Target[R-21]:.1.3.6.1.2.1.25.3.3.1.2.2&.1.3.6.1.2.1.25.3.3.1.2.3:public@10.1.5.196 + .1.3.6.1.2.1.25.3.3.1.2.4&.1.3.6.1.2.1.25.3.3.1.2.5:public@10.1.5.196
  + .1.3.6.1.2.1.25.3.3.1.2.6&.1.3.6.1.2.1.25.3.3.1.2.7:public@10.1.5.196 + .1.3.6.1.2.1.25.3.3.1.2.8&.1.3.6.1.2.1.25.3.3.1.2.9:public@10.1.5.196

설명을 하면 그래프는 두개인다 인과 아웃  그러므로 인의 값에 2 4 6 8  번 코어값을 더해서 나타낸다..아웃의 경우는 3 5 7 9 core의 값을 더해서 나타낸다..
꼭 이해해야하는부분이 맨마지막의 인스턴스넘버이다..필자와 다를수잇으므로 꼭 snmpwalk으로 확인하기 바람.

이렇게 하면 최대 100까지 나오는것들을 4개를 합쳤으므로 max값을 400으로 바꾼다..(나중에 뭐 4로 나눠도됨.)

총 정리된 설정이다.

MaxBytes[R-21]: 400
Title[R-21]: R-56 CPU LOAD
Unscaled[R-21]: ymwd
ShortLegend[R-21]:%
YLegend[R-21]: CPU  Utilization
Legend1[R-21]: CPU #1 in % (Load)
Legend2[R-21]:CPU#2  in % (Load)
LegendI[R-21]:  CPU #1
LegendO[R-21]:CPU#2
Options[R-21]: gauge,integer,nopercent
PageTop[R-21]: <H1>  R-21 CPU Load % </H1>
        <div>
                <TABLE>
                        <TR><TD>Node Name</TD><TD>R-21</TD></TR>
                </TABLE>
        </div>


이제 mrtg를 실행해보자

mrtg /usr/local/etc/mrtg/mrtg.cfg

처음 3번은 에러가 나온다..기존 데이터가 없어서..무시한다..

이제 웹사이트를 띄워서 mrtg폴더를 본다...

cd /usr/local/www/apache22/data/mrtg

ls

html이랑 이미지 파일이 생성되있으면 성공..
이제 그러면 웹사이트를 열고 /mrtg/하면 결과값을볼수잇다..

이제 5분마다 mrtg를 실행해서 결과값을 계속 업데이트하는과정을 해야한다.

vi /etc/crontab

*/5     *       *       *       *       root    /usr/local/etc/mrtg/mrtg.sh
 
이부분을 추가한다..5분마다 프로그램을 실행해라라는 뜻..

 이제 mrtg.sh를 만들자

cd /usr/local/etc/mrtg
vi mrtg.sh

#!/bin/sh
/usr/local/bin/mrtg /usr/local/etc/mrtg/mrtg.cfg

저장하고 실행권한 준다
 chmod +x mrtg.sh

리부팅해주면 5분마다 크론탭이  mrtg를 실행시켜주며 컴퓨터 cpu사용량을 업데이트해준다..
이제 웹사이트로 보면 된다...

이제 서버가 여러개의 경우를 생각해보자..
쉽다.. cfg파일만 여러개 만든후 mrtg.sh파일에 추가해주면된다.

여러개의 cfg파일이 잇으면  html 이 너무 많아서 지저분해진다.
5분간격으로 나타난 그래프만 모아서 한 페이지로 만들어보자..

indexmaker  --output=/usr/local/www/apache22/data/mrtg/index.html /usr/local/etc/mrtg/mrtg.cfg

profile

일요일은 짜빠게뤼~ 먹는날~^^

엮인글 :
http://adminplay.com/3157/a26/trackback
List of Articles
번호 제목 글쓴이 날짜 조회 수sort

도메인 Status 상태별 설명 안내

HDD Guardian (a graphical user interface for smartctl)

dpkg 사용법

top 화면 내용중 load average와 PRI : priority(우선순위...

ubuntu 10.04 에서 Nginx, Mysql, PHP5

HP 서버 disk 증설 (hpacucli 사용)

리눅스 메모리 관리, 왜 메모리 여유공간이 없을까? (top ...

windows smartctl

ZFS 파일에 ACL 설정

make 정리

SSL 패스워드 삭제 하기

EXT4 파일 시스템을 Btrfs 파일 시스템으로 변환하기

tar 압축을 실수로 디렉토리 생성 안하고 풀었을때 대처법

ll 명령시 날짜 전체가 보이도록 하기

hddtemp와 mrtg를 이용한 하드디스크 온도 체크 file

python과 mysql 연동시 libmysqlclient_r.so.* 에러가 날 ...

linux 커널 파라메터 수정

우분투(Ubuntu) ssh 설정하기

error: Hm, kex protocol error: type 30 seq 1 [preauth]... file

운영중인 Linux 서버에서 NTFS 파일 시스템 삭제하기

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234