연말 감시 명령 Tips

메리 크리스마스!
dots girls Advent Calendar 2015 의 마지막 타자 요시자와입니다!

이번 달 21일의 dots.여자부에서 웹서버 감시 항목에 대해서 슬라이드로 LT를 했습니다.



상기 슬라이드는 감시 항목의 견해나 임계값 설정을 정리하고 있습니다만, 이 기사에서는 터미널에서 확인하는 경우에 사용하는 「일단 억제해야 할 항목」의 커멘드에 대해 정리합니다.
  • LoadAverage
  • CPU 사용률
  • 메모리 사용량
  • TCP 연결 수
  • 디스크 사용량

  • LoadAverage



    LA 확인


    uptime 에서 확인할 수 있습니다.
    왼쪽에서 지난 1분, 5분, 15분의 평균값입니다.
    $ uptime
     17:38:50 up 75 days, 18:19,  1 user,  load average: 0.00, 0.00, 0.00
    

    CPU 사용률



    CPU 사용률 확인



    가장 자세하게 볼 수 있는 것이 sar 명령입니다.
    $ sar -u
    Linux 2.6.32-504.8.1.el6.x86_64 (***)   2015年12月25日   _x86_64_    (2 CPU)
    
    00時00分01秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
    00時10分01秒     all      0.12      0.00      0.01      0.01      0.06     99.80
    00時20分01秒     all      0.22      0.00      0.02      0.06      0.05     99.65
    00時30分01秒     all      0.14      0.00      0.01      0.01      0.04     99.81
    00時40分01秒     all      0.18      0.00      0.01      0.01      0.04     99.75
    00時50分01秒     all      0.12      0.00      0.01      0.00      0.04     99.83
    01時00分01秒     all      0.27      0.00      0.02      0.04      0.06     99.61
    ...
    

    CPU를 가장 많이 사용하는 곳


    top 명령이 CPU를 가장 많이 사용하는 곳에서 순서대로 출력됩니다.
    $ top
    
    top - 17:51:55 up 75 days, 18:32,  1 user,  load average: 0.00, 0.00, 0.00
    Tasks: 107 total,   1 running, 106 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.2%us,  0.2%sy,  0.0%ni, 99.5%id,  0.0%wa,  0.0%hi,  0.0%si,  0.2%st
    Mem:   1020176k total,   955080k used,    65096k free,    73808k buffers
    Swap:  2097148k total,    38756k used,  2058392k free,    65252k cached
    
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                           
        1 root      20   0 19232  472  340 S  0.0  0.0   0:01.45 init                                                               
        2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd                                                           
        3 root      RT   0     0    0    0 S  0.0  0.0   0:00.93 migration/0                                                        
        4 root      20   0     0    0    0 S  0.0  0.0   0:01.74 ksoftirqd/0                                                        
        5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/0
    ...
    

    메모리 사용량



    메모리 사용량 확인


    free 명령으로 확인할 수 있습니다.buffers 또는 cache 에 메모리가 거의 할당되어 있는 상태이면 부하는 걸리지 않습니다.
    $ free
                 total       used       free     shared    buffers     cached
    Mem:       1020176     862824     157352         96      40016      79592
    -/+ buffers/cache:     743216     276960
    Swap:      2097148      36116    2061032
    

    메모리를 가장 많이 사용하는 곳


    top 명령에 -a를 붙이면 가장 메모리를 사용하고 있는 곳에서 순서대로 출력됩니다.
    $ top -a
    
    top - 17:45:10 up 75 days, 18:25,  1 user,  load average: 0.00, 0.02, 0.00
    Tasks: 107 total,   1 running, 106 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Mem:   1020176k total,   949996k used,    70180k free,    73540k buffers
    Swap:  2097148k total,    38772k used,  2058376k free,    63008k cached
    
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                           
     7317 apache    20   0  382m  47m 7528 S  0.0  4.7   0:15.37 httpd                                                              
     7353 apache    20   0  381m  46m 7628 S  0.0  4.7   0:12.34 httpd                                                              
     8180 apache    20   0  376m  40m 7488 S  0.0  4.1   0:02.23 httpd                                                              
     8162 apache    20   0  376m  40m 7504 S  0.0  4.1   0:02.87 httpd                                                              
     8155 apache    20   0  375m  40m 7528 S  0.0  4.1   0:03.81 httpd
    ...
    

    TCP 연결 수



    연결 수 확인


    netstat 에서 통신 상태를 확인할 수 있습니다.-t 를 붙이면 TCP의 커넥션이 나오므로, 그것의 행수를 wc -l 로 출력하고 있습니다.
    $ netstat -t | wc -l
    47
    

    디스크 사용량



    전체 디스크 사용량 확인


    df 명령으로 전체 디스크 사용량을 확인할 수 있습니다.
    $ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/vda3        97G  2.5G   89G   3% /
    tmpfs           499M     0  499M   0% /dev/shm
    /dev/vda1       239M   76M  151M  34% /boot
    

    디렉토리의 디스크 공간 확인



    디스크 사용량이 가득 차면 위치를 식별해야 합니다.
    그 때는 du 명령으로 각 디렉토리를 참조합니다.
    $ du -sh /var/www/*
    84M /var/www/aaaaa
    209M    /var/www/bbbbb
    64M /var/www/ccccc
    4.0K    /var/www/cgi-bin
    1.2M    /var/www/ddddd
    216K    /var/www/error
    8.0K    /var/www/html
    948K    /var/www/icons
    

    이상 억제해 두면 대체로 어떻게든 된다고 생각합니다.
    dots.여자부에서는 서버로부터 프런트까지 풀 스택으로 기술을 익히고 싶은 여자의 부활입니다.
    평상시는 LT나 모쿠모쿠회, 년에 3회 정도 남성도 Welcome인 큰 이벤트도 개최 예정이므로 신경이 쓰이신 분은 팔로우 부탁드리겠습니다!
    트위터
    Facebook

    우리의 싸움은 앞으로입니다\(^o^)/
    좋은 연말을\(^o^)/

    좋은 웹페이지 즐겨찾기