리눅스 모니터링 명령어 정리

IOSTAT



별도의 설치 필요 없으며, 물리적 드라이버 별로 기본적인 Disk Read/Write를 볼 수 있다.

한 개 이상의 디스크 드라이브에 대한 입출력 통계와 CPU 활용량 등을 분석 가능하다.

 

-      Avg-cpu : 마지막 재부팅 이후의 평균 CPU 활용량

-      %user : Application 등 사용자 모드에 소모된 시간

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

-      %system : System(Kernel)이 사용한 시간

-      %iowait : 디스크 I/O 요청으로 인해 CPU가 대기한 시간

-      %steal : 다른 가상 CPU가 서비스하는 동안 강제적으로 대기한 시간

-      %idle : 대기한 시간

-      Device : 디바이스 구분

-      tps : 초당 전송(I/O)

-      Blk_read/s : 초당 읽혀진 KB (Blk=512 bytes)

-      Blk_wrtn/s : 초당 쓰여진 KB (Blk=512 bytes)

-      Blk_read : 지금까지 읽혀진 KB (Blk=512 bytes)

-      Blk_wrtn : 지금까지 쓰여진 KB (Blk=512 bytes)



VMSTAT

 

 

별도의 설치 필요 없으며 시스템의 리소스 상황(CPU, I/O, Memory)을 모니터링 할 수 있다

vmstat(옵션없음) - 마지막 부팅 이후의 평균 값

vmstat 2 10 => 2초 간격으로 10회 정보 갱신

        

procs : r – 현재 실행중인 프로세스의 수(CPU 접근 대기중인 실행 가능 프로세스 수)

                b – 인터럽트가 불가능한 sleep 상태에 있는 프로세스의 수

                 (I/O 처리를 하는 동안 블록 처리된 프로세스)

             w – 강제로 swap out 된 프로세스

memory : swpd – 사용하고 있는 swap 메모리 양(사용된 가상 메모리 용량)

                   free – 사용 가능한 메모리 양

                    buff – 버퍼로 사용되고 있는 메모리 양

                    cache – 캐시로 사용되고 있는 메모리 양

           swap : si – swap in(디스크에서 메모리로 swap 된 메모리 용량)

                 so – swap out(디스크로 swap 되어 나간 메모리 용량)

io : bi – 초당 블록 디바이스로 보내는 블록 수(블록 장치로 보내진 블록)

bo – 초당 블록 디바이스로부터 받은 블록 수(블록 장치에서 받아온 블록)

system : in – 초당 인터럽트 되는 양

        cs – 초당 context switch 되는 양

cpu : us – 사용자의 CPU 사용 시간 비율

(CPU가 사용자 수준 코드를 실행한 시간, 백분율(%))

               sy – 시스템의 CPU 사용시간 비율

                         (CPU가 시스템 수준 코드를 실행한 시간, 백분율(%))

               Id – CPU idle time(백분율 단위)

               wa – 입출력 대기



TOP



별도의 설치 필요 없으며, CPU 점유 프로세스들을 실시간으로 조회하는 명령어이다.

1 top : 시스템의 전반적 상태(가동시간 등)

    현재시간, 재부팅 없이 운영중인 업타임 시간, 로그인 된 유저 수, 1 5 15분에 대한 각각의 부하율

2 Tasks : 프로세스들의 상황

    실행중인 전체 프로세스 수, 실행중인 프로세스, 유휴상태의 프로세스, 정지된 프로세스, 좀비 프로세스의 수

3 CPU : CPU의 상황

    사용자, 시스템, ni정책의 CPU 사용률, CPU 미사용률, 입출력 대기상태의 CPU 사용률

4 Mem : 메모리 상황

    전체적인 물리 메모리, 사용중인 메모리, 여유 메모리, 버퍼된 메모리의 양

5 Swap : 스왑 메모리 상황

    전체 스왑 메모리, 사용중인 스왑 메모리, 여유 스왑 메모리, 캐싱 메모리

6 PID : 프로세스 ID

    USER : 프로세스를 실행시킨 사용자 ID

    PR : 프로세스 우선순위

    NI : NICE

    VIRT : 가상 메모리 사용량(SWAP+RES)

    RES : 현재 페이지가 상주하고 있는 크기 (Resident Size)

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

    S : 프로세스의 상태(Sleeping, Running, Swapped out process, Zombies)

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

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

    TIME+ : CPU TIME

    COMMAND : 실행된 명령어




Free


 

시스템의 실제메모리와 스왑메모리에 대한 사용현황을 확인할 수 있는 명령어

1 Mem : 시스템의 물리적인 메모리에 대한 사용량을 각 필드 단위로 표시 (단위 : Kbyte)

-      Total : 전체 메모리의 용량

-      Used : 시스템에서 사용중인 메모리 용량

-      Shared : 시스템에서 공유한 메모리 용량

-      Buffers : 시스템에서 Buffering 된 메모리 용량

-      Cached : 시스템에 Caching 된 메모리 용량

2 -/+ buffers/cache : 현재 캐시 메모리에서 버퍼링된 사용량을 표시(used/free)

3 Swap : 서버설치 시에 결정한 Swap Memory 양으로 디스크의 일부분을 메모리로 잡아서 설정되기 때문에

Swap Memory가 많이 사용되고 있다는 것은 시스템의 전체적인 속도가 떨어진다는 것을 의미하며

지속적으로 Swap Memory가 사용된다는 것은 결국 실제 메모리를 증설해야 한다는 것이다.

-      Total : 시스템의 전체 Swap Memory 용량 표시

-      Used : 전체 Swap Memory 중에서 현재 사용중인 Swap 용량 표시

-      Free : 전체 Swap Memory 중에서 사용되지 않고 남아있는 메모리 용량


티스토리 툴바