このセクションでは、CentOS サーバーのリソース使用状況を確認する方法について、紹介します。
Vmstat での確認
vmstat では、メモリ/CPU使用率やストレージのIOのリソース状況が確認できます。
【 memory 】
swpd : 仮想メモリ量( KB )
fress : 空きメモリ量( KB )
buff : バッファに用いられているメモリ量( KB )
cache : キャッシュに用いられているメモリ量( KB )
【 swap 】
si : ディスクからスワップインしているメモリ量( KB / sec )
so : ディスクにスワップしているメモリ量( KB / sec )
【 io 】
bi : ブロックデバイスから受け取ったブロック( blocks / sec )
bo : ブロックデバイスに送られたブロック( blocks / sec )
【 system 】
in : 一秒あたりの割り込み回数
cs : 一秒あたりのコンテキストスイッチの回数
【 CPU 】 CPUの総時間に対する割合を示す(パーセンテージ)
us : カーネルコード以外(ユーザー)の実行に使用した CPU の割合(%)
sy : カーネルコード(システム)の実行に使用した CPU の割合(%)
id : CPUのアイドル(未使用)状態の割合(%)
wa : ストレージの IO 待ち時間の割合(%)
[root@server-3 ~]# vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 3 0 0 666032 2108 179404 0 0 389 29 677 773 33 23 44 0 0 [root@server-3 ~]#
リソース状況を定期的に確認する場合には、以下のようなコマンドを実行します。以下では、1秒間隔で5回リソース状況の結果を確認できます。
[root@server-3 ~]# vmstat 1 5 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 2 0 0 665716 2108 179404 0 0 189 14 357 429 16 11 73 0 0 0 0 0 665716 2108 179404 0 0 0 0 55 102 0 0 100 0 0 0 0 0 665716 2108 179404 0 0 0 0 52 102 0 0 100 0 0 0 0 0 665716 2108 179404 0 0 0 0 51 98 0 0 100 0 0 0 0 0 665716 2108 179404 0 0 0 0 53 98 1 0 99 0 0 [root@server-3 ~]#
Top での確認
top では、システム全体(プロセス、CPU、メモリ、スワップ)の負荷状況を確認できます。
[root@server-3 ~]# top top - 01:31:05 up 5 min, 1 user, load average: 0.70, 2.28, 1.29 Tasks: 96 total, 2 running, 94 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.3 us, 0.3 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 1015216 total, 664052 free, 169696 used, 181468 buff/cache KiB Swap: 1048572 total, 1048572 free, 0 used. 678572 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1369 root 20 0 0 0 0 S 0.3 0.0 0:00.58 xfsaild/dm-0 3253 tomcat 20 0 2290576 72964 14460 S 0.3 7.2 0:30.29 java 3607 root 20 0 161880 2176 1552 R 0.3 0.2 0:00.63 top 1 root 20 0 193536 6576 4144 S 0.0 0.6 0:10.58 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.03 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.35 ksoftirqd/0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H 6 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/u2:0 7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh 9 root 20 0 0 0 0 R 0.0 0.0 0:09.34 rcu_sched 10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-dra+ 11 root rt 0 0 0 0 S 0.0 0.0 0:00.04 watchdog/0 13 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kdevtmpfs 14 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns 15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khungtaskd 16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 writeback [root@server-3 ~]#
負荷状況を定期的に確認する場合には、以下のようなコマンドを実行します。以下では、1秒毎に負荷状況の結果を確認できます。
[root@server-3 ~]# top -d1 top - 02:05:08 up 39 min, 1 user, load average: 0.01, 0.06, 0.19 Tasks: 96 total, 2 running, 94 sleeping, 0 stopped, 0 zombie %Cpu(s): 1.0 us, 2.0 sy, 0.0 ni, 97.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 1015216 total, 649968 free, 181740 used, 183508 buff/cache KiB Swap: 1048572 total, 1048572 free, 0 used. 666076 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3666 root 20 0 161880 2192 1568 R 2.9 0.2 0:00.29 top 3253 tomcat 20 0 2320380 82304 14536 S 1.0 8.1 0:53.31 java 1 root 20 0 193536 6644 4176 S 0.0 0.7 0:10.98 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.03 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.37 ksoftirqd/0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H 6 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/u2:0 7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh 9 root 20 0 0 0 0 R 0.0 0.0 0:09.48 rcu_sched 10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-dra+ 11 root rt 0 0 0 0 S 0.0 0.0 0:00.11 watchdog/0 13 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kdevtmpfs 14 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns 15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khungtaskd 16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 writeback 17 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kintegrityd [root@server-3 ~]#