티스토리 뷰


AIX 시스템 모니터링 (using NMON) - IBM 기술문서



AIX 시스템 모니터링 (using NMON)
부하 테스트를 수행하는 동안 실제 부하를 받는 시스템(AIX)의 모니터링이 필요할 수 있습니다. AIX 시스템 자체에서 제공하는 모니터링 Tool 또는 Utility들을 이용할 수도 있지만 여기에서는 NMON Tool를 사용하여 비교적 간편하게 모니터링한 결과를 로깅하고 분석할 수 있는 자료를 생성하는 방법에 대하여 설명합니다.

9.1 NMON의 설치
nmon은 실시간으로 AIX 성능을 모니터링 하고 모니터링 하는 동안의 성능 데이터를 로깅하여 로깅이 끝난 후에 nmon analyser를 이용하여 데이터를 분석합니다. 현재 AIX V4, V5.2 까지 32bit와 64bit 모두 지원합니다. Nmon을 수행시키면 내부적으로 32bit 커널인 경우 nmon32가 수행되고, 64bit 커널인 경우엔 nmon64가 수행됩니다. 만일 64bit 커널인 경우 nmon 명령으로 수행되지 않으면 nmon64 명령으로 시도해 보십시오.

Nmon은 현재 IBM 인트라넷에서 다운로드 할 수 있으며 한국IBM 사용자 게시판에서도 검색하여 다운 받을 수 있습니다.
http://w3.aixncc.uk.ibm.com/tools/aixtools.html
nmon 버전은 현재 Version 8d 까지 나와 있으며 다이나믹 LPAR와 AIX V5.2를 지원합니다. 이곳에서 다운 받는 파일은 tar로 묶이고 다시 compress로 압축한 형태의 파일입니다. 때문에 사용하기 위해서 아래의 단계를 거칩니다.
# uncompress  nmon8d.tar.Z
# tar  xvf  nmon8d.tar
이렇게 해서 풀린 파일의 nmon 실행 프로그램은 바로 실행 할 수 있는 binary 코드입니다.  실행권한을 확인하여 실행권한이 없는 경우 실행권한 부여 후에 실행하면 됩니다.

정상적인 수행을 점검하기 위하여 Topas와 같은 AIX 내의 실시간 모니터링 Tool과 서로 결과를 비교해볼 수 있습니다. 간혹 시스템의 ML버전 upgrade등의 작업으로 인하여 topas의 모니터링 값이 정상적이지 않을 수 있습니다. 이런 경우 성능 튜닝 및 모니터링을 위한 file set이 설치 되었는지 확인하고, 시스템이 Rebooting 되면 정상적으로 모니터링이 됩니다.
>        bos.adt.samples
>        pergagent.tools


9.2 NMON 사용전 검토사항
시스템 환경 setting 값중에서 iostat 를 true로 변경해주어야 합니다. 기본값은 false로 되어 있습니다. 변경 방법은 smitty에서 smitty => System Environments => Change / Show Characteristics of Operating System => Continuously maintain Disk I/O history 값을 true로 변경하고 smitty를 사용하지 않고 명령라인에서 다음과 같이 변경할 수도 있습니다.
# chdev -l sys0 -a iostat=true
   아래 명령으로 변경여부를 확인합니다.
# lsattr -El sys0
만일 nmon 수행시에 "can't open /dev/kmem" 이라는 메시지가 나오는 경우에는 아래 명령으로 read권한을 줍니다.
# chmod ugo+r /dev/kmem

9.3 NMON 데이터 로깅
       # nmon -f -d -t -s 5(interval 초 단위) -c 100(count 회수)   ===> 5초 단위로 100번 수행 interval은 5분 정도의 데이터를 모으는 경우입니다.
       위 명령 옵션중에 -t 는 프로세스에 대한 정보를 보여주는 부분인데 몇십분 이상의 데이터를 수집하는 경우 너무 많은 데이터가 모아집니다. 이런 경우 엑셀에서 못 읽어 들이는 문제가 발생할 수 있습니다. 때문에 수행 결과로 생성되는 파일의 크기가 너무 커지므로 잠깐 동안 데이터를 수집하는 경우가 아니면 -t 옵션을 빼고 사용하는 것이 좋습니다.  
(ex, # nmon -f -d -s 5 -c 120 )  ==> 5초 단위로 10분동안의 데이터를 수집합니다.
       위 명령을 수행하면 명령을 수행한 디렉토리에 hostname_yymmdd_hhmm.nmon 형식의 파일이 생성되고 계속 data가 모아지면서 file size가 증가합니다.  명령을 수행하면 바로 프롬프트가 떨어지고 해당 명령은 background로 수행됩니다.
       # ps -ef |grep nmon 명령으로 해당 프로세스가 수행이 끝났는지 확인합니다.
       수행이 끝나면 아래와 같이 생성된 hostname_yymmdd_hhmm.nmon 이 file의 내용을 sort해서 확장자 .csv 로 바꾸고 저장합니다.          
# sort  hostname_yymmdd_hhmm.nmon  >  hostname_yymmdd_hhmm.csv
       hostname_yymmdd_hhmm.csv 이 화일을 nmon analyser로 읽어 들이게 되는데 간혹 sort된 파일에서 중복되는 라인 때문에 정상적으로 읽어 들이지 못하는 경우가 있습니다. 이런 경우에는 hostname_yymmdd_hhmm.csv 를 text editer로 직접 열어서 중복된 라인을 찾아 중복되지 않도록 삭제 하는 작업이 필요합니다.

9.4 NMON analyser 사용법
       nmon analyser를 수행하는데 필요한 file 2개 (Excel.xlb , XLUSRGAL.XLS)를 아래의 위치에 옮겨놓습니다.
C:\Documents and Settings\user(사용자)\Application Data\Microsoft\Excel
       nmon analyser (nmon analyser v291.xls)를 실행시킨후 열기(매크로 포함)(E)를 클릭합니다.


       Analyser sheet위에 Analyse nmon data 버튼을 클릭하여 위에서 생성한 hostname_yymmdd_hhmm.csv를 읽어들입니다.



이때 읽어들이는 과정에서 화일이 너무 크거나 화일의 내용중 포맷이 잘 맞지 않은 부분이 있는 경우 error가 발생합니다. 화일이 너무 큰 경우는 hostname_yymmdd_hhmm.csv 화일 안에서 TOP 관련 정보를 일부 삭제하여 화일의 라인수를 줄여야합니다. 때문에 -t 옵션을 빼고 nmon을 수행시키면 TOP관련 정보를 수집하지 않으므로 빼고하는 것이 좋습니다.  포맷이 잘 맞지 않아서 error가 나는 경우는 화일안에 내용중 header부분과 data부분의 컬럼수가 맞지 않아서 발생하는 경우가 대부분입니다. 이것을 적절히 맞춰주어야 하는데 즉, 컬럼수 보다 해더수가 적거나 많아서 error가 발생할 수 있습니다.  이런 경우에는 컬럼수와 해더수를 맞춰줘야 합니다.  


결과 파일이 생성된 후에 많이 sheet들이 생성됩니다.
그 중에서 특히 CPU, DISK I/O, Memory, Network I/O 관련 sheet에서 중요 성능 정보를 갖고 있습니다.
각 sheet는 모니터링 시간 간격마다의 데이터와 이 데이터를 기반으로한 그래프를 가지고 있습니다. 


출처 카페 > 호야창꼬~* | 호야
원문 http://cafe.naver.com/donghoya/46



댓글