일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- memory
- rac
- cygwin
- oracle install
- PERL
- fdisk
- php5
- patch
- 연산자
- prompt
- Linux
- mariaDB
- MySQL
- Network
- RHEL4
- perl string
- grid
- perl + 정규표현식
- Unix
- Oracle RAC
- bash
- sqlplus
- command & perl
- perl one-liner
- oracle
- solaris
- 오라클
- SQL
- dba
- solaris network
Archives
- Today
- Total
DATA 전문가로 가는 길
[Unix/Linux] AIX 시스템 메모리 사용량 점검 스크립트 (svmon 명령어) 본문
ps -ef -o rssize,comm 으로 전체의 합을 전체 메모리를 나눠서 계산하는 방법을 했지만 정확한 데이터가 나오지 않았습니다. 관제 대상을 가지고 있는 프로그램을 사용하면 좀 더 정확한 UI 형식의 결과물을 볼 수 있을 수 있습니다.
소개하려는 명령어는 svmon 명령어 입니다. 메모리의 현재 상태에 관련하고 실제 메모리의 스냅샵을 구성하는 것이 아니라 명령어의 인터럽트가 가능한 사용자 레벨에서 수행 가능 합니다. 즉 root 권한만 수행 가능 합니다.
중요한 개념을 잡아야 하는데 그 이유는 svmon명령어는 페이지 별로 통계 해준다는 것입니다.
- 1페이지 가상 메모리의 4K 블록
- 1프레임은 실제 메모리의 4K 블록
- 어떠한 명시가 없다면 기본적으로 통계는 4096바이트 메모리 페이지 단위
# svmon
1.
2.
3.
* 수치는 임의대로 적어서 다릅니다.
1.
size inuse free pin virtual
memory 1831616 2028009 5412 391022 1082699
pg space 526500 5021
memory 1831616 2028009 5412 391022 1082699
pg space 526500 5021
2.
work pers clnt
pin 390788 0 234
in use 1082491 0 945518
pin 390788 0 234
in use 1082491 0 945518
3.
PageSize PoolSize inuse pgsp pin virtual
s 4 KB - 1947705 4781 349758 1002187
m 64 KB - 5019 25 2579 5032
s 4 KB - 1947705 4781 349758 1002187
m 64 KB - 5019 25 2579 5032
* 수치는 임의대로 적어서 다릅니다.
- 1번의 실제 메모리 사용 설명
- 전체 사이즈 [ size ] : 1831616
- 페이지 포함 프레임 수 [ inuse ] : 2028009
- 모든 메모리 중 남은 공간(프레임수) [ free ] : 5412
- 고정 페이지의 프레임 수 [ pin ] : 391022
- 가상 영역의 할당된 페이지 수 [ virtual ] : 1082699
- 2번의 실제 메모리의 서브세트
- 작업 세그먼트 페이지를 포함하는 프레임 수 [ work ] : 390788
- 영구 세그먼트 페이지를 포함하는 프레임 수 [ pers ] : 0
- 클라이언트 세그먼트 페이지를 포함하는 프레임 수 [ clnt ] : 234
- in use ( 사용중인 실제 메모리의 서브세트)
- pin(고정된 페이지가 있는 실제 메모리의 서브세트)
- 3번 페이지 공간의 사용을 설명하는 통계
svmon -G
시스템 전체 메모리 사용량 통계 확인
전체 메모리 사이즈는 1831616*4096byte/1024/1024 = 127MB.
Free Memory는 5412*4096/1024/1024 = 41MB
시스템 전체 메모리 사용량 통계 확인
전체 메모리 사이즈는 1831616*4096byte/1024/1024 = 127MB.
Free Memory는 5412*4096/1024/1024 = 41MB
svmon -U root -d
root 사용자가 사용하는 메모리의 내역
root 사용자가 사용하는 메모리의 내역
svmon -C inetd
inetd 데몬에 의해 사용되는 메모리의 통계
inetd 데몬에 의해 사용되는 메모리의 통계
svmon -P (pid)
프로세스 메모리 사용량 통계
프로세스 메모리 사용량 통계
메모리 스왑/실제 메모리 통계 스트립트
#!/usr/bin/csh
# Swap 점검
/usr/sbin/swap -l | /usr/bin/tail -1 |sed 's/MB//g' |awk '{printf"%0.0f\n",100-(($5/$4)*100)}'
# Real Memory 점검
# 계산방법: 100 - ( ( FreeSize / TotSize ) * 100
svmon -G |grep memory |perl -ane 'printf"%0.1f \n", 100 - ( ( $F[3] / $F[1] ) * 100 ) '
# Swap 점검
/usr/sbin/swap -l | /usr/bin/tail -1 |sed 's/MB//g' |awk '{printf"%0.0f\n",100-(($5/$4)*100)}'
# Real Memory 점검
# 계산방법: 100 - ( ( FreeSize / TotSize ) * 100
svmon -G |grep memory |perl -ane 'printf"%0.1f \n", 100 - ( ( $F[3] / $F[1] ) * 100 ) '
- 위의 스크립트를 보면 awk처리와 perl 처리를 두 가지 방법으로 스크립트를 만들었습니다.
참고 자료
http://www.sung-ho.pe.kr/index.php?p=20391
'OS > Fundamental' 카테고리의 다른 글
[Linux/Unix] lsof 명령어 없을시 해당 포트/프로세스 ID 검출하는 방법 (0) | 2010.01.27 |
---|---|
[Unix/Linux] 파일 찾기 유용한 명령어 (0) | 2010.01.22 |
[Windows] WinSCP 사용법 [ 윈도우 SFTP 활용 스크립트 ] (0) | 2009.07.28 |
[Unix/Linux] Cygwin Open SSH 설치 및 서비스 등록 (0) | 2009.06.30 |
[Unix/Linux] Ubuntu SSH 접근 할 때 한글 깨짐 현상 처리 방법[ PuTTY, Nabi ] (0) | 2009.05.21 |
Comments