linux

linux - 성능 모니터링

sysman 2020. 11. 24. 18:09

# free   //메모리 사용률

# free -s 3  //3초마다 나옴

# watch free

#watch -n 1 -d free   //-n 시간 설정 , -d 변화 부분

 

 

# pstree

실행중인 프로세스 상태를 트리 구조로 뵤여줌

# pstree [process 사용자id]  //조회 가능

 

 

# top

cpu 점유 프로세스들 실시간 조회 명령어

1. 시스템 uptime, 사용자, 로드상태

2. task 프로세스 상황

3. cpu 

4. mem 상황

5. swap 메모리 상황

 pid 프로세스 우선순위

user : 프로세스를 실행시킨 사용자id

pr: 프로세스의 우선순위

ni:nice값, 마이너스를 가지는 nice value는 우선순위가 높다.

virt 가상메모리의 사용량(swap+res)

res: 현재 페이지가 상주하고 있는크기(resident size)

shr: 분할된 페이지, 프로세스에 의해 사용된 메모리를 나눈 메모리의 총합

-s : 프로세스의 상태[S(sleeping),R(running),W(swapped out process),z(zombies)]

- %cpu: 프로세스가 사용하는 cpu 사용률

-%MEM : 프로세스가 사용하는 메모리의 사용률

-COMMAND:실행된 명령어

 

#vmstat

프로세스, 메모리의 상태를 보여주는 명령어

 

 * process

-r : cpu 접근 대기 중인 실행 가능 프로세스 수

-b : 인터럽트 불가능한 수면 상태인 프로세스 수

 

*memory

-swpd : 사용된 가상 메모리 용량

-free : 여유 메모리 용량

-buff:버퍼에 사용된 메모리 용량

-cache : 페이지 캐시에 사용된 메모리 용량

 

*swap

-si: 디스크에서 메모리로 스왑된 메모리 용량

-so:디스크로 스왑되어 나간 메모리 용량

 

*입출력

-bi : 블록 장치로 보내진 블록

-bo:블록 장치에서 받아온 블록

 

*시스템

-in:1초당 인터럽트 수

-cs: 일초당 문맥 전환 작업 수

 

*cpu

-us: cpu가 사용자 수준 코드를 실행한 시간(백분율 단위)

-sy: cpu가 시스템 수준 코드를 실행한 시간(백분율 단위)

-id: cpu idle time(백분율 단위)

-wa : 입출력 대기

 

# vmstat         //마지막 부팅 이후의 평균값

# vmstat 2 10  //10초동안 2초간격으로 정보 갱신

 

# iostat

-한개 이상의 디스크 드라이브에 대한 입출력 통계와 cpu 활용량

커널 버전 밑에 보이는 cpu 평균은 마지막 재부팅 이후의 평균 활용률

%user: 어플리케이션 등 사용자 모드에 소모된 시간

%nice : nice를 사용하여 스케줄링 우선순위가 바뀐 프로세스에 소모된 시간

%system : 시스템(커널)이 사용한 시간

%iowait : 디스크I/O 요청 때문에 cpu가 대기한 시간

%steal :  다른 가상 cpu 가 서비스하는 동안 비자발적으로 대기한 시간

%idle : 대기한 시간

tps : 초당 전송(입출력) 수

Blk_read/s : 초당 읽혀진 512바이트 블록 수

Blk_wrtn/s : 초당 쓰여진 512바이트 블록 수

Blk_read : 지금까지 읽혀진 총 512바이트 블록 수

Blk_wrtn: 지금까지 쓰여진 총 512바이트 블록 수

k 옵션 : 사용 시 블록 단위가 아닌 킬로바이트 단위의 정보를 볼 수 있다.

cpu의 시스템에서 사용하는 cpu시간이 지나치게 높으면(50%이상) 디스크 I/O에서 문제가 있을 가능성이 크다

시스템 전체의 부하가 높은데도 cpu에서 휴지시간(idle time, id항목)이 일반적으로 10%를 넘는다면 I/O나 메모리에 

문제가 있을 가능성이 크다

휴지시간이 항상 0이라면 cpu를 완전하게 100%사용하고 있는 상태이며 cpu의 과부하를 의미한다.

 

# mpstat

 

옵션없이 사용하면 iostat과 큰 차이 없음

-P ALL 옵션을 같이 사용하면 각 CPU별 사용현황을 볼 수 있음

 

sadc 및 sar

-system activity data collector

-/etc/cron.d/sysstat 파일을 통해 주기적으로 작업하고 /var/log/sa 디렉토리에 sa<dd>형식으로 저장(dd -날짜)

- sadc의 수집자료는 sar에 의해 var/log/sa디렉토리에 sar<dd>형식으로 저장

-sar<dd>파일은 00:00~23:50까지 10분단위로 기록하며 총 17개 항목을 보고

 

 

'linux' 카테고리의 다른 글

centos - ssh에서 root접속 제한  (0) 2020.11.25
linux - 기본  (0) 2020.11.25
redhat - vlans with native vlan setting in linux  (0) 2020.11.24
centos8 - network 설정  (0) 2020.11.24
centos 8 - ssh 포트 변경  (0) 2020.11.24