Linux
AdventCalendar
tips
監視

年末監視コマンドTips

More than 1 year has passed since last update.

メリークリスマス!
dots girls Advent Calendar 2015のラストバッター吉澤です!

今月21日のdots.女子部でWebサーバー監視項目についてスライドでLTをしました。

上記スライドは監視項目の見方や閾値設定をまとめていますが、この記事ではターミナルで確認する場合に使う「とりあえず抑えるべき項目」のコマンドについてまとめます。

  1. LoadAverage
  2. CPU使用率
  3. メモリ使用量
  4. TCPコネクション数
  5. ディスク使用量

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コマンドで確認ができます。
bufferscacheにメモリがほとんど割り当てられている状態であれば負荷はかかっていません。

$ 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な大きめのイベントも開催予定なので気になってくださった方はフォローお願いいたします!
Twitter
Facebook

私たちの戦いはこれからです\(^o^)/
良い年末を\(^o^)/