サーバの各種リソース使用状況を確認するのに使えるコマンドにdstatというコマンドがあります。vmstatとか、何とかstatといったツールは結構いろいろありますが、dstatは結構お手軽でオプションなども解りやすく、使いやすいのでお勧めです。
また、dstatもredhatやCentOSと言ったメジャーなディストリビューションでも標準パッケージに含まれていて、yumなどでインストール可能になっていたり、インストール時に依存関係が無いため、他のライブラリの依存関係を壊してしまうと言ったことを気にする必要が無いのも採用時の障壁がなくて便利です。
通常はインストールされてない可能性がるので、以下のコマンドでインストールしてください。
$ sudo yum install dstat
[sudo] password for xxxxx:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
epel/metalink | 5.5 kB 00:00
* base: ftp.nara.wide.ad.jp
* epel: mirrors.vinahost.vn
* extras: ftp.nara.wide.ad.jp
* rpmforge: ftp.riken.jp
* updates: ftp.stu.edu.tw
base | 3.7 kB 00:00
epel | 4.2 kB 00:00
epel/primary_db | 5.4 MB 00:15
extras | 3.4 kB 00:00
rpmforge | 1.9 kB 00:00
updates | 3.4 kB 00:00
updates/primary_db | 3.8 MB 00:05
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package dstat.noarch 0:0.7.0-1.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
====================================================
Package Arch Version Repository Size
====================================================
Installing:
dstat noarch 0.7.0-1.el6 base 144 k
Transaction Summary
====================================================
Install 1 Package(s)
Total download size: 144 k
Installed size: 660 k
Is this ok [y/N]: y
Downloading Packages:
dstat-0.7.0-1.el6.noarch.rpm | 144 kB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : dstat-0.7.0-1.el6.noarch 1/1
Verifying : dstat-0.7.0-1.el6.noarch 1/1
Installed:
dstat.noarch 0:0.7.0-1.el6
Complete!
依存関係もないのでインストールも楽ちんです。
使い方は簡単です。何もオプションを指定しない場合は以下のような出力になります。
$ dstat
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read writ| recv send| in out | int csw
1 0 99 0 0 0| 428B 3090B| 0 0 | 3B 24B| 46 55
0 0 100 0 0 0| 0 0 | 212B 1188B| 0 0 | 40 49
0 0 100 0 0 0| 0 12k| 212B 862B| 0 0 | 53 64
CPU使用率だけの表示でよい場合は-cオプションになります。
$ dstat -c
----total-cpu-usage----
usr sys idl wai hiq siq
1 0 99 0 0 0
0 0 100 0 0 0
同様にディスク使用量の場合は-dオプションになります
$ dstat -d
-dsk/total-
read writ
428B 3090B
0 0
0 164k
ネットワークだけの場合は-nオプションになります。
$ dstat -n
-net/total-
recv send
0 0
7416B 2091B
14k 10k
30k 295k
メモリだけでいい場合は-mオプションとなります。
$ dstat -m
------memory-usage-----
used buff cach free
555M 107M 235M 94.6M
555M 107M 235M 94.6M
555M 107M 235M 94.6M
時刻を表示する場合は,-tオプションとなりますが、単独では以下のようになるのであまり意味はありません。
$ dstat -t
----system----
date/time
25-10 21:00:51
25-10 21:00:52
25-10 21:00:53
他のオプションと組み合わせる必要があります。
$ dstat -cmdnt
----total-cpu-usage---- ------memory-usage----- -dsk/total- -net/total- ----system----
usr sys idl wai hiq siq| used buff cach free| read writ| recv send| date/time
1 0 99 0 0 0| 555M 107M 235M 94.6M| 428B 3089B| 0 0 |25-10 21:02:34
1 0 98 0 0 1| 555M 107M 235M 94.6M| 0 0 | 120B 1268B|25-10 21:02:35
0 0 100 0 0 0| 555M 107M 235M 94.6M| 0 0 | 120B 756B|25-10 21:02:36
0 1 99 0 0 0| 555M 107M 235M 94.6M| 0 0 | 120B 756B|25-10 21:02:37
順番が気に入らない場合は、オプションの順序で並べ替えができます。
$ dstat -tcdmn
----system---- ----total-cpu-usage---- -dsk/total- ------memory-usage----- -net/total-
date/time |usr sys idl wai hiq siq| read writ| used buff cach free| recv send
25-10 21:03:38| 1 0 99 0 0 0| 428B 3089B| 555M 107M 235M 94.6M| 0 0
25-10 21:03:39| 0 0 99 0 0 1| 0 0 | 555M 107M 235M 94.6M| 120B 1268B
25-10 21:03:40| 0 0 100 0 0 0| 0 0 | 555M 107M 235M 94.6M| 120B 740B
また-nオプションや-dオプションにはその大文字オプションとパラメータを渡すことでさらに細かいデバイス指定などが出来たりもします。
eth0のネットワーク使用量だけ見たい場合は以下のように-nに加えて"-N eth0"を加えます。
$ dstat -n -N eth0
--net/eth0-
recv send
0 0
120B 612B
558B 9222B
sdaのディスクIOだけ見たい場合は以下のように-dに加えて"-D sda"を加えます。
$ dstat -d -D sda
--dsk/sda--
read writ
428B 3089B
0 0
0 0