章末問題から解く感じで進めてみる
Do I Know This Already?
1 キャパシティプランニングを行う際に測定すべきもの/測定する意味のないもの
-
測定すべきもの
- swap使用率
- メモリの使用率
- ネットワークのトラフィック
- CPUの使用率
-
測定する意味のないもの
-
swap領域サイズ
- 設定したとおりの容量。勝手に増えたりしないので
-
2 スワップ領域の使用量計測
vmstat
cat /proc/swaps
free
3 vmstatコマンドの出力の読み方
- vmstatではネットワーク利用状況は把握できない
- us, sy, id, wa でCPU使用状況を把握する
-
例: idが0、usが0、syが10くらい、waが90くらい
- CPUアイドル時間(id)が0になっている
- 要因はユーザーアプリケーション(us)やシステム(sy)ではなくI/O待ち(wa)による
- free, buff, cacheでメモリ使用状況を把握する
- swpd, si, so, bi, boでスワップ使用状況を把握する
-
例: swpdが大きく、si, so, bi, boが0でない
- スワップ領域が使用されており、スワップイン(si)・スワップアウト(so)、ディスクI/O(bi,bo)が常に発生している
4 sarの出力ファイル名、記録閲覧
sar -b -f /var/log/sa/saXX
XXは2桁の日付
5 vmstatコマンドのオプション・表示内容
Usage:
vmstat [options] [delay [count]]
vmstat 1 3
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 23443260 351512 917396 0 0 3 14 50 120 1 0 99 0 0
0 0 0 23443252 351512 917412 0 0 0 0 85 231 0 0 100 0 0
0 0 0 23443252 351512 917412 0 0 0 0 71 201 0 0 100 0 0
- 1秒間隔で3回
- スワップ領域、バッファキャッシュ、ページキャッシュ等の利用状況を確認できる
-
搭載しているメモリ総容量は確認できない
/proc/meminfo
で確認できる
cat /proc/meminfo
MemTotal: 26212040 kB
...
6 プロセスごとのメモリ使用量を把握し、CPU消費の大きいものを特定するには
top
ps aux
7 sarの出力する統計情報をTSVで出力するには
-
sadc
- システム状況を収集し、ログに書き込む人
-
sar
- 収集データを表示する人
-
sadf
- ログをTSV, XML, JSON等で出力
1.1 キャパシティプランニング
1.1.1 キャパシティプランニングとは
- コストを抑えつつリソース不足にもならないよう見積もる
- システムのリソースを見積もる場合、個々のプログラムの計測値のボトムアップで求める
- パフォーマンスチューニングのためにも計測は重要
1.2 リソース使用率の測定とトラブルシューティング
1.2.1 総合的なリソース使用率の測定
top
top
top - 13:50:56 up 2 min, 1 user, load average: 0.01, 0.01, 0.01
Tasks: 89 total, 1 running, 88 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 5.9 sy, 0.0 ni, 94.1 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1013796 total, 692376 free, 183388 used, 138032 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 687820 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 127984 6612 4136 S 0.0 0.7 0:01.62 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0
4 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
5 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/u4:0
6 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
...
1行目から読み取れる情報
top - 13:50:56 up 2 min, 1 user, load average: 0.01, 0.01, 0.01
- 現在時刻
- 起動してからの経過時間
- ログイン中のユーザ数
- 平均負荷 (1, 5, 15分間の平均)
平均負荷(load average)はcpuのコア数を超えていないことが目安
grep processor /proc/cpuinfo | wc -l
2
grep cpu.cores /proc/cpuinfo
cpu cores : 1
cpu cores : 1
論理CPU2つ、それぞれ1コアなので、この場合2を超えていないことが目安
2行目から読み取れる情報
Tasks: 89 total, 1 running, 88 sleeping, 0 stopped, 0 zombie
- 総プロセス数
- 実行状態
- スリープ状態
- 停止状態
-
ゾンビ状態
- 終了し、親プロセスのwaitを待っている子プロセス
- forkされるとプロセステーブルに追加される
- 親のwaitをもって子はプロセステーブルから削除される
- つまり、親にwaitで引き取られない限りプロセステーブルから削除されずこれになる
3行目から読み取れる情報
%Cpu(s): 0.0 us, 5.9 sy, 0.0 ni, 94.1 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
- us: user
- sy: system
- ni: nice
- id: idle
- wa: wait
- hi: hardware irq
- si: sofrware irq
- st: steal
【補】vmstatのcpu部分とかぶる
vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 615412 244 213332 0 0 48 25 26 34 0 0 99 0 0
4,5行目から読み取れる情報
KiB Mem : 1013796 total, 614924 free, 185180 used, 213692 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 682628 avail Mem
【補】vmstatのmemory部分とかぶる
vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 615280 244 213472 0 0 44 23 25 33 0 0 99 0 0
のこり
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 127984 6612 4136 S 0.0 0.7 0:01.71 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
4 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.01 ksoftirqd/0
f
: 表示項目を切替できる
Fields Management for window 1:Def, whose current sort field is %CPU
Navigate with Up/Dn, Right selects for move then <Enter> or Left commits,
'd' or <Space> toggles display, 's' sets sort. Use 'q' or <Esc> to end!
* PID = Process Id PGRP = Process Group Id vMj = Major Faults delta
* USER = Effective User Name TTY = Controlling Tty vMn = Minor Faults delta
* PR = Priority TPGID = Tty Process Grp Id USED = Res+Swap Size (KiB)
* NI = Nice Value SID = Session Id nsIPC = IPC namespace Inode
* VIRT = Virtual Image (KiB) nTH = Number of Threads nsMNT = MNT namespace Inode
* RES = Resident Size (KiB) P = Last Used Cpu (SMP) nsNET = NET namespace Inode
* SHR = Shared Memory (KiB) TIME = CPU Time nsPID = PID namespace Inode
* S = Process Status SWAP = Swapped Size (KiB) nsUSER = USER namespace Inode
* %CPU = CPU Usage CODE = Code Size (KiB) nsUTS = UTS namespace Inode
* %MEM = Memory Usage (RES) DATA = Data+Stack (KiB)
* TIME+ = CPU Time, hundredths nMaj = Major Page Faults
* COMMAND = Command Name/Line nMin = Minor Page Faults
PPID = Parent Process pid nDRT = Dirty Pages Count
UID = Effective User Id WCHAN = Sleeping in Function
RUID = Real User Id Flags = Task Flags <sched.h>
RUSER = Real User Name CGROUPS = Control Groups
SUID = Saved User Id SUPGIDS = Supp Groups IDs
SUSER = Saved User Name SUPGRPS = Supp Groups Names
GID = Group Id TGID = Thread Group Id
GROUP = Group Name ENVIRON = Environment vars
l
: 1行目(load averageの行)表示非表示
t
: 2,3行目(プロセス、CPU状態)表示非表示
m
: 4,5行目(Mem, Swapの行)表示形式切り替え
数値
KiB Mem : 1013796 total, 607248 free, 188852 used, 217696 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 678908 avail Mem
グラフ1
KiB Mem : 33.0/1013796 [|||||||||||||||||||||||||||||| ]
KiB Swap: 0.0/0 [ ]
グラフ2 (塗りつぶしっぽいやつ。うまくコピペできなかった)
KiB Mem : 33.0/1013796 [ ]
KiB Swap: 0.0/0 [ ]
非表示
u
: 指定のユーザのプロセスのみ表示
top - 14:33:44 up 45 min, 2 users, load average: 0.00, 0.01, 0.01
Tasks: 89 total, 1 running, 88 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
KiB Mem : 1013796 total, 607272 free, 188828 used, 217696 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 678932 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1251 wand 20 0 156784 2408 1072 S 0.0 0.2 0:00.02 sshd
1252 wand 20 0 115512 1888 1512 S 0.0 0.2 0:00.02 bash
1436 wand 20 0 156784 2552 1188 S 0.0 0.3 0:00.09 sshd
1437 wand 20 0 115516 1936 1532 S 0.0 0.2 0:00.03 bash
1506 wand 20 0 159896 2140 1520 R 0.0 0.2 0:00.00 top
ソート
キーストローク | ソート項目 |
---|---|
P |
CPU使用率 |
M |
メモリ使用率 |
T |
起動時間順 |
< /> |
ソート項目を左/右のものに |
W
: Write. 現在の設定を~/.toprcに保存
k
: kill. シグナル送信
A
: 表示モード切り替え
1 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
869 root 20 0 119704 20780 8048 S 0.3 2.0 0:01.07 google_osconfig
1 root 20 0 127984 6612 4136 S 0.0 0.7 0:01.75 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
4 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.01 ksoftirqd/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
2 PID PPID TIME+ %CPU %MEM PR NI S VIRT RES UID COMMAND
1585 1252 0:00.04 0.0 0.2 20 0 R 159896 2080 1000 top
1584 1437 0:00.07 0.0 0.2 20 0 S 159896 2052 1000 top
1582 2 0:00.00 0.0 0.0 20 0 S 0 0 0 kworker/1:1
1580 1575 0:00.00 0.0 0.1 30 10 S 113640 972 0 awk
1579 1575 0:00.16 0.0 2.1 30 10 S 351600 21776 0 yum-cron
1575 1314 0:00.00 0.0 0.1 30 10 S 113280 1472 0 run-parts
1567 2 0:00.00 0.0 0.0 20 0 S 0 0 0 kworker/1:0
3 PID %MEM VIRT RES CODE DATA SHR nMaj nDRT %CPU COMMAND
...
d
,s
: delay.更新間隔変更
h
,?
: ヘルプ表示
Help for Interactive Commands - procps-ng version 3.3.10
Window 1:Def: Cumulative mode Off. System: Delay 3.0 secs; Secure mode Off.
Z,B,E,e Global: 'Z' colors; 'B' bold; 'E'/'e' summary/task memory scale
l,t,m Toggle Summary: 'l' load avg; 't' task/cpu stats; 'm' memory info
0,1,2,3,I Toggle: '0' zeros; '1/2/3' cpus or numa node views; 'I' Irix mode
f,F,X Fields: 'f'/'F' add/remove/order/sort; 'X' increase fixed-width
L,&,<,> . Locate: 'L'/'&' find/again; Move sort column: '<'/'>' left/right
R,H,V,J . Toggle: 'R' Sort; 'H' Threads; 'V' Forest view; 'J' Num justify
c,i,S,j . Toggle: 'c' Cmd name/line; 'i' Idle; 'S' Time; 'j' Str justify
x,y . Toggle highlights: 'x' sort field; 'y' running tasks
z,b . Toggle: 'z' color/mono; 'b' bold/reverse (only if 'x' or 'y')
u,U,o,O . Filter by: 'u'/'U' effective/any user; 'o'/'O' other criteria
n,#,^O . Set: 'n'/'#' max tasks displayed; Show: Ctrl+'O' other filter(s)
C,... . Toggle scroll coordinates msg for: up,down,left,right,home,end
k,r Manipulate tasks: 'k' kill; 'r' renice
d or s Set update interval
W,Y Write configuration file 'W'; Inspect other output 'Y'
q Quit
( commands shown with '.' require a visible task display window )
Press 'h' or '?' for help with Windows,
q
: 終了
vmstat
vmstat 1 3
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 590112 244 219340 0 0 23 12 19 27 0 0 100 0 0
0 0 0 590088 244 219340 0 0 0 0 22 27 0 0 100 0 0
0 0 0 590088 244 219340 0 0 0 0 18 38 0 0 100 0 0
-
procs
- r: 実行待ちプロセス数
-
b: 割り込み不可能なスリープ状態にあるプロセス数
- 0であることが望ましい
- 0以外の値が多く見られる場合、何らかの対処が必要
-
system
- in: interrupts per second (クロック割り込み含む)
- cs: context switches per second
iostat
インストール
iostat
ない
-bash: iostat: command not found
iostatを含むパッケージをyumで調べる
yum provides iostat
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ty1.mirror.newmediaexpress.com
* epel: d2lzkl7pfhq30w.cloudfront.net
* extras: ty1.mirror.newmediaexpress.com
* updates: ty1.mirror.newmediaexpress.com
sysstat-10.1.5-19.el7.x86_64 : Collection of performance monitoring tools for Linux
Repo : base
Matched from:
Filename : /usr/bin/iostat
sysstat
sysstat-10.1.5-19.el7.x86_64 : Collection of performance monitoring tools for Linux
入れる
sudo yum install -y sysstat
入った
iostat
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/01/20 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.34 0.00 0.15 0.18 0.00 99.32
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 4.10 219.57 263.64 977897 1174136
他にもいろいろ入ったっぽい
yum info sysstat
Installed Packages
Name : sysstat
...
Description : The sysstat package contains sar, sadf, mpstat, iostat, pidstat,
: nfsiostat-sysstat, tapestat, cifsiostat and sa tools for Linux.
...
この後使うsar
も入った
使う
iostat --help
Usage: iostat [ options ] [ <interval> [ <count> ] ]
Options are:
[ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ]
[ -j { ID | LABEL | PATH | UUID | ... } ]
[ [ -T ] -g <group_name> ] [ -p [ <device> [,...] | ALL ] ]
[ <device> [...] | ALL ]
iostat 1 3
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/01/20 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.34 0.00 0.15 0.18 0.00 99.32
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 4.12 223.96 247.69 1067817 1180948
avg-cpu: %user %nice %system %iowait %steal %idle
0.00 0.00 0.00 0.00 0.00 100.00
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
0.00 0.00 0.00 0.00 0.00 100.00
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.00 0.00 0.00 0 0
2番目以降の表示は前回からの差分
CPU使用状況とディスクI/O関連の情報を監視できる
cifsiostat
というのもある
iotop
- I/O情報をtopのように表示する
インストール
yum provides iotop
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ty1.mirror.newmediaexpress.com
* epel: d2lzkl7pfhq30w.cloudfront.net
* extras: ty1.mirror.newmediaexpress.com
* updates: ty1.mirror.newmediaexpress.com
iotop-0.6-4.el7.noarch : Top like utility for I/O
Repo : base
sudo yum install -y iotop
つかう
root権限必要
$ iotop
Netlink error: Operation not permitted (1)
The Linux kernel interfaces that iotop relies on now require root priviliges
or the NET_ADMIN capability. This change occured because a security issue
(CVE-2011-2494) was found that allows leakage of sensitive data across user
boundaries. If you require the ability to run iotop as a non-root user, please
configure sudo to allow you to run iotop as root.
Please do not file bugs on iotop about this.
# iotop
Total DISK READ : 0.00 B/s | Total DISK WRITE : 0.00 B/s
Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 0.00 B/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
1 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % systemd --switched-root --system --deserialize 22
2 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kthreadd]
4 be/0 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kworker/0:0H]
6 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ksoftirqd/0]
7 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [migration/0]
8 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcu_bh]
9 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [rcu_sched]
10 be/0 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [lru-add-drain]
11 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [watchdog/0]
12 rt/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [watchdog/1]
...
sar
sysstatパッケージに入っている
SAR(1) Linux User's Manual SAR(1)
NAME
sar - Collect, report, or save system activity information.
SYNOPSIS
sar [ -A ] [ -B ] [ -b ] [ -C ] [ -d ] [ -F ] [ -H ] [ -h ] [ -p ] [ -q ] [ -R ] [ -r ] [ -S ] [
-t ] [ -u [ ALL ] ] [ -V ] [ -v ] [ -W ] [ -w ] [ -y ] [ -I { int [,...] | SUM | ALL | XALL } ] [
-P { cpu [,...] | ALL } ] [ -m { keyword [,...] | ALL } ] [ -n { keyword [,...] | ALL } ] [ -j {
ID | LABEL | PATH | UUID | ... } ] [ -f [ filename ] | -o [ filename ] | -[0-9]+ ] [ -i interval
] [ -s [ hh:mm:ss ] ] [ -e [ hh:mm:ss ] ] [ interval [ count ] ]
抜粋
[ -f [ filename ] ]
[ -s [ hh:mm:ss ] ]
[ -e [ hh:mm:ss ] ]
[ interval [ count ] ]
sysstatサービスが有効になっていると、sadc
によるログが /var/log/sa/saXX
ファイルに格納される
(XXは2桁の日付)
systemctl is-enabled sysstat
enabled
ls -d /var/log/sa/sa*
/var/log/sa/sa01 /var/log/sa/sa02
オプション
-A
: すべての項目表示
sar -A -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 CPU %usr %nice %sys %iowait %steal %irq %soft %guest %gnice %idle
13:20:01 all 0.37 0.00 0.16 0.20 0.00 0.00 0.00 0.00 0.00 99.27
13:20:01 0 0.26 0.00 0.21 0.23 0.00 0.00 0.01 0.00 0.00 99.29
13:20:01 1 0.48 0.00 0.10 0.16 0.00 0.00 0.00 0.00 0.00 99.25
13:20:01 CPU %usr %nice %sys %iowait %steal %irq %soft %guest %gnice %idle
13:30:01 all 0.34 0.00 0.19 0.02 0.00 0.00 0.01 0.00 0.00 99.44
13:30:01 0 0.17 0.00 0.19 0.03 0.00 0.00 0.01 0.00 0.00 99.60
13:30:01 1 0.51 0.00 0.19 0.01 0.00 0.00 0.01 0.00 0.00 99.28
Average: CPU %usr %nice %sys %iowait %steal %irq %soft %guest %gnice %idle
Average: all 0.36 0.00 0.17 0.11 0.00 0.00 0.01 0.00 0.00 99.36
Average: 0 0.22 0.00 0.20 0.13 0.00 0.00 0.01 0.00 0.00 99.45
Average: 1 0.50 0.00 0.14 0.09 0.00 0.00 0.01 0.00 0.00 99.27
13:10:01 proc/s cswch/s
13:20:01 0.13 55.60
13:30:01 0.21 72.31
Average: 0.17 63.96
13:10:01 pswpin/s pswpout/s
13:20:01 0.00 0.00
13:30:01 0.00 0.00
Average: 0.00 0.00
13:10:01 pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff
13:20:01 302.76 119.70 170.41 0.21 411.62 34.23 0.00 24.71 72.18
13:30:01 12.54 14.86 210.96 0.09 342.24 38.56 0.00 36.41 94.44
Average: 157.64 67.27 190.69 0.15 376.93 36.39 0.00 30.56 83.97
13:10:01 tps rtps wtps bread/s bwrtn/s
13:20:01 5.22 4.26 0.95 605.52 239.39
13:30:01 0.81 0.50 0.31 25.09 29.72
Average: 3.01 2.38 0.63 315.28 134.55
13:10:01 frmpg/s bufpg/s campg/s
13:20:01 -85.66 -0.81 78.59
13:30:01 32.56 -0.09 -33.49
Average: -26.54 -0.45 22.55
13:10:01 kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
13:20:01 490408 523388 51.63 240 308040 475944 46.95 280472 123124 7192
13:30:01 568588 445208 43.91 16 227636 480208 47.37 208224 117004 0
Average: 529498 484298 47.77 128 267838 478076 47.16 244348 120064 3596
13:10:01 kbswpfree kbswpused %swpused kbswpcad %swpcad
13:20:01 0 0 0.00 0 0.00
13:30:01 0 0 0.00 0 0.00
Average: 0 0 0.00 0 0.00
13:10:01 kbhugfree kbhugused %hugused
13:20:01 0 0 0.00
13:30:01 0 0 0.00
Average: 0 0 0.00
13:10:01 dentunusd file-nr inode-nr pty-nr
13:20:01 19328 1088 19563 1
13:30:01 10963 1184 20140 2
Average: 15146 1136 19852 2
13:10:01 runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked
13:20:01 0 123 0.15 0.07 0.06 0
13:30:01 0 126 0.00 0.01 0.05 0
Average: 0 124 0.07 0.04 0.06 0
13:10:01 TTY rcvin/s xmtin/s framerr/s prtyerr/s brk/s ovrun/s
13:20:01 0 0.00 0.61 0.00 0.00 0.00 0.00
13:20:01 1 0.00 0.00 0.00 0.00 0.00 0.00
13:20:01 2 0.00 0.00 0.00 0.00 0.00 0.00
13:20:01 3 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 0 0.00 0.76 0.00 0.00 0.00 0.00
13:30:01 1 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 2 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 3 0.00 0.00 0.00 0.00 0.00 0.00
Average: 0 0.00 0.69 0.00 0.00 0.00 0.00
Average: 1 0.00 0.00 0.00 0.00 0.00 0.00
Average: 2 0.00 0.00 0.00 0.00 0.00 0.00
Average: 3 0.00 0.00 0.00 0.00 0.00 0.00
13:10:01 DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
13:20:01 dev8-0 5.22 605.52 239.39 161.99 0.06 11.57 1.37 0.72
13:30:01 dev8-0 0.81 25.09 29.72 67.41 0.00 3.33 1.17 0.10
Average: dev8-0 3.01 315.28 134.55 149.23 0.03 10.46 1.35 0.41
13:10:01 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
13:20:01 eth0 1.83 1.81 13.86 0.17 0.00 0.00 0.00
13:20:01 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 eth0 1.32 1.03 0.18 0.22 0.00 0.00 0.00
13:30:01 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth0 1.57 1.42 7.02 0.19 0.00 0.00 0.00
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:10:01 IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s
13:20:01 eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:20:01 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:10:01 call/s retrans/s read/s write/s access/s getatt/s
13:20:01 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 0.00 0.00 0.00 0.00 0.00 0.00
Average: 0.00 0.00 0.00 0.00 0.00 0.00
13:10:01 scall/s badcall/s packet/s udp/s tcp/s hit/s miss/s sread/s swrite/s saccess/s sgetatt/s
13:20:01 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:10:01 totsck tcpsck udpsck rawsck ip-frag tcp-tw
13:20:01 196 7 2 0 0 13
13:30:01 200 8 2 0 0 0
Average: 198 8 2 0 0 6
-b: ディスクの入出力と転送レート情報
sar -b -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 tps rtps wtps bread/s bwrtn/s
13:20:01 5.22 4.26 0.95 605.52 239.39
13:30:01 0.81 0.50 0.31 25.09 29.72
Average: 3.01 2.38 0.63 315.28 134.55
-C: プロセスの生成回数
sar -C -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 CPU %user %nice %system %iowait %steal %idle
13:20:01 all 0.37 0.00 0.16 0.20 0.00 99.27
13:30:01 all 0.34 0.00 0.19 0.02 0.00 99.44
Average: all 0.36 0.00 0.18 0.11 0.00 99.36
-n DEV: ネットワーク関連情報出力
sar -n DEV -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
13:20:01 eth0 1.83 1.81 13.86 0.17 0.00 0.00 0.00
13:20:01 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 eth0 1.32 1.03 0.18 0.22 0.00 0.00 0.00
13:30:01 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth0 1.57 1.42 7.02 0.19 0.00 0.00 0.00
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
-n EDEV: ネットワーク関連のエラー情報出力
sar -n EDEV -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s
13:20:01 eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:20:01 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
13:30:01 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
-r: メモリとスワップ関連
sar -r -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
13:20:01 490408 523388 51.63 240 308040 475944 46.95 280472 123124 7192
13:30:01 568588 445208 43.91 16 227636 480208 47.37 208224 117004 0
Average: 529498 484298 47.77 128 267838 478076 47.16 244348 120064 3596
-u: iostatのCPU列と同じ
sar -u -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 CPU %user %nice %system %iowait %steal %idle
13:20:01 all 0.37 0.00 0.16 0.20 0.00 99.27
13:30:01 all 0.34 0.00 0.19 0.02 0.00 99.44
Average: all 0.36 0.00 0.18 0.11 0.00 99.36
cf. iostat
iostat
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.30 0.00 0.25 0.19 0.00 99.25
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 4.04 170.67 44.29 326997 84868
-P (id)|ALL: CPUごとの情報表示
sar -P ALL -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 CPU %user %nice %system %iowait %steal %idle
13:20:01 all 0.37 0.00 0.16 0.20 0.00 99.27
13:20:01 0 0.26 0.00 0.22 0.23 0.00 99.29
13:20:01 1 0.48 0.00 0.11 0.16 0.00 99.25
13:20:01 CPU %user %nice %system %iowait %steal %idle
13:30:01 all 0.34 0.00 0.19 0.02 0.00 99.44
13:30:01 0 0.17 0.00 0.19 0.03 0.00 99.60
13:30:01 1 0.51 0.00 0.19 0.01 0.00 99.28
13:30:01 CPU %user %nice %system %iowait %steal %idle
13:40:01 all 0.02 0.00 0.03 0.02 0.00 99.94
13:40:01 0 0.02 0.00 0.03 0.03 0.00 99.93
13:40:01 1 0.01 0.00 0.03 0.01 0.00 99.95
Average: CPU %user %nice %system %iowait %steal %idle
Average: all 0.24 0.00 0.13 0.08 0.00 99.55
Average: 0 0.15 0.00 0.14 0.10 0.00 99.61
Average: 1 0.34 0.00 0.11 0.06 0.00 99.49
sar -P 0 -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 CPU %user %nice %system %iowait %steal %idle
13:20:01 0 0.26 0.00 0.22 0.23 0.00 99.29
13:30:01 0 0.17 0.00 0.19 0.03 0.00 99.60
13:40:01 0 0.02 0.00 0.03 0.03 0.00 99.93
Average: 0 0.15 0.00 0.14 0.10 0.00 99.61
存在しないものは空
sar -P 2 -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 CPU %user %nice %system %iowait %steal %idle
-R: メモリの統計情報
sar -R -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 frmpg/s bufpg/s campg/s
13:20:01 -85.66 -0.81 78.59
13:30:01 32.56 -0.09 -33.49
13:40:01 -1.91 0.00 1.98
Average: -18.33 -0.30 15.69
- frmpg: freed memory page
- bufpg: buffered memory page
- campg: cached memory page
-W: スワップの情報
sar -W -f /var/log/sa/sa02
Linux 3.10.0-1127.19.1.el7.x86_64 (lpic2-study-1) 12/02/20 _x86_64_ (2 CPU)
13:07:39 LINUX RESTART
13:10:01 pswpin/s pswpout/s
13:20:01 0.00 0.00
13:30:01 0.00 0.00
13:40:01 0.00 0.00
Average: 0.00 0.00
sadf
SADF(1) Linux User's Manual SADF(1)
NAME
sadf - Display data collected by sar in multiple formats.
SYNOPSIS
sadf [ -C ] [ -d | -j | -p | -x ] [ -H ] [ -h ] [ -T | -t | -U ] [ -V ] [ -P { cpu [,...] | ALL }
] [ -s [ hh:mm:ss ] ] [ -e [ hh:mm:ss ] ] [ -- sar_options ] [ interval [ count ] ] [ datafile ]
sadc(system activity data collector)により収集されたログをformatして出力する
-j: JSON
sadf -j -- -u /var/log/sa/sa02
{"sysstat": {
"sysdata-version": 2.16,
"hosts": [
{
"nodename": "lpic2-study-1",
"sysname": "Linux",
"release": "3.10.0-1127.19.1.el7.x86_64",
"machine": "x86_64",
"number-of-cpus": 2,
"file-date": "2020-12-02",
"statistics": [
{
"timestamp": {"date": "2020-12-02", "time": "13:20:01", "utc": 1, "interval": 600},
"cpu-load": [
{"cpu": "all", "user": 0.37, "nice": 0.00, "system": 0.16, "iowait": 0.20, "steal": 0.00, "idle": 99.27}
]
},
{
"timestamp": {"date": "2020-12-02", "time": "13:30:01", "utc": 1, "interval": 600},
"cpu-load": [
{"cpu": "all", "user": 0.34, "nice": 0.00, "system": 0.19, "iowait": 0.02, "steal": 0.00, "idle": 99.44}
]
},
{
"timestamp": {"date": "2020-12-02", "time": "13:40:01", "utc": 1, "interval": 600},
"cpu-load": [
{"cpu": "all", "user": 0.02, "nice": 0.00, "system": 0.03, "iowait": 0.02, "steal": 0.00, "idle": 99.94}
]
}
],
"restarts": [
{
"boot": {"date": "2020-12-02", "time": "13:07:39", "utc": 1}
}
]
}
]
}}
-x: XML
sadf -x -- -u /var/log/sa/sa02
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sysstat PUBLIC "DTD v2.16 sysstat //EN"
"http://pagesperso-orange.fr/sebastien.godard/sysstat-2.16.dtd">
<sysstat>
<sysdata-version>2.16</sysdata-version>
<host nodename="lpic2-study-1">
<sysname>Linux</sysname>
<release>3.10.0-1127.19.1.el7.x86_64</release>
<machine>x86_64</machine>
<number-of-cpus>2</number-of-cpus>
<file-date>2020-12-02</file-date>
<statistics>
<timestamp date="2020-12-02" time="13:20:01" utc="1" interval="600">
<cpu-load>
<cpu number="all" user="0.37" nice="0.00" system="0.16" iowait="0.20" steal="0.00" idle="99.27"/>
</cpu-load>
</timestamp>
<timestamp date="2020-12-02" time="13:30:01" utc="1" interval="600">
<cpu-load>
<cpu number="all" user="0.34" nice="0.00" system="0.19" iowait="0.02" steal="0.00" idle="99.44"/>
</cpu-load>
</timestamp>
<timestamp date="2020-12-02" time="13:40:01" utc="1" interval="600">
<cpu-load>
<cpu number="all" user="0.02" nice="0.00" system="0.03" iowait="0.02" steal="0.00" idle="99.94"/>
</cpu-load>
</timestamp>
</statistics>
<restarts>
<boot date="2020-12-02" time="13:07:39" utc="1"/>
</restarts>
</host>
</sysstat>
フォーマット指定しないとデフォルトTSV
sadf -- -u /var/log/sa/sa02
lpic2-study-1 -1 2020-12-02 13:07:39 UTC LINUX-RESTART
lpic2-study-1 600 2020-12-02 13:20:01 UTC all %user 0.37
lpic2-study-1 600 2020-12-02 13:20:01 UTC all %nice 0.00
lpic2-study-1 600 2020-12-02 13:20:01 UTC all %system 0.16
lpic2-study-1 600 2020-12-02 13:20:01 UTC all %iowait 0.20
lpic2-study-1 600 2020-12-02 13:20:01 UTC all %steal 0.00
lpic2-study-1 600 2020-12-02 13:20:01 UTC all %idle 99.27
lpic2-study-1 600 2020-12-02 13:30:01 UTC all %user 0.34
lpic2-study-1 600 2020-12-02 13:30:01 UTC all %nice 0.00
lpic2-study-1 600 2020-12-02 13:30:01 UTC all %system 0.19
lpic2-study-1 600 2020-12-02 13:30:01 UTC all %iowait 0.02
lpic2-study-1 600 2020-12-02 13:30:01 UTC all %steal 0.00
lpic2-study-1 600 2020-12-02 13:30:01 UTC all %idle 99.44
lpic2-study-1 600 2020-12-02 13:40:01 UTC all %user 0.02
lpic2-study-1 600 2020-12-02 13:40:01 UTC all %nice 0.00
lpic2-study-1 600 2020-12-02 13:40:01 UTC all %system 0.03
lpic2-study-1 600 2020-12-02 13:40:01 UTC all %iowait 0.02
lpic2-study-1 600 2020-12-02 13:40:01 UTC all %steal 0.00
lpic2-study-1 600 2020-12-02 13:40:01 UTC all %idle 99.94
lpic2-study-1 600 2020-12-02 13:50:01 UTC all %user 0.03
lpic2-study-1 600 2020-12-02 13:50:01 UTC all %nice 0.00
lpic2-study-1 600 2020-12-02 13:50:01 UTC all %system 0.02
lpic2-study-1 600 2020-12-02 13:50:01 UTC all %iowait 0.01
lpic2-study-1 600 2020-12-02 13:50:01 UTC all %steal 0.00
lpic2-study-1 600 2020-12-02 13:50:01 UTC all %idle 99.95
CSV出力するオプションはない。TSVで出力してtr
でタブをカンマに置換するとよい:
sadf -- -u /var/log/sa/sa02 | tr '\t' ','
lpic2-study-1,-1,2020-12-02 13:07:39 UTC,LINUX-RESTART
lpic2-study-1,600,2020-12-02 13:20:01 UTC,all,%user,0.37
lpic2-study-1,600,2020-12-02 13:20:01 UTC,all,%nice,0.00
lpic2-study-1,600,2020-12-02 13:20:01 UTC,all,%system,0.16
lpic2-study-1,600,2020-12-02 13:20:01 UTC,all,%iowait,0.20
lpic2-study-1,600,2020-12-02 13:20:01 UTC,all,%steal,0.00
lpic2-study-1,600,2020-12-02 13:20:01 UTC,all,%idle,99.27
...
-t: UTCでなくローカルTZで表示
sadf -t -- -u /var/log/sa/sa02
lpic2-study-1 -1 2020-12-02 13:07:39 LINUX-RESTART
lpic2-study-1 600 2020-12-02 13:20:01 all %user 0.37
lpic2-study-1 600 2020-12-02 13:20:01 all %nice 0.00
lpic2-study-1 600 2020-12-02 13:20:01 all %system 0.16
lpic2-study-1 600 2020-12-02 13:20:01 all %iowait 0.20
lpic2-study-1 600 2020-12-02 13:20:01 all %steal 0.00
lpic2-study-1 600 2020-12-02 13:20:01 all %idle 99.27
...
勉強用GCEインスタンスのTZがUTCなので変わらなかった
uptime
uptime
13:57:21 up 49 min, 2 users, load average: 0.00, 0.01, 0.05
topの1行目と同じ
top -n 1 | head -n 1
top - 13:57:48 up 50 min, 2 users, load average: 0.00, 0.01, 0.05
w
w
13:58:12 up 50 min, 2 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
wand pts/0 softbank06015019 13:17 4.00s 0.10s 0.00s w
wand pts/1 softbank06015019 13:20 13:24 0.04s 0.00s less -s
- 1行目: uptime, topの1行目と同じ
- 2行目以降: 現在ログインしているユーザと各ユーザのプロセス情報
-
JCPU: そのttyに紐づく全プロセスが使用しているCPU時間
- 過去のバックグラウンドジョブは含めない
- 現在実行中のバックグラウンドジョブは含む
- PCPU: WHAT欄で示されているカレントプロセスにより使用されているCPU時間
-h: ヘッダーなし
w -h
wand pts/0 softbank06015019 13:17 7.00s 0.10s 0.00s w -h
wand pts/1 softbank06015019 13:20 14:31 0.04s 0.00s less -s
-s: ログイン時刻、JCPU,PCPUなし
w -s
13:59:29 up 51 min, 2 users, load average: 0.00, 0.01, 0.05
USER TTY FROM IDLE WHAT
wand pts/0 softbank06015019 1.00s w -s
wand pts/1 softbank06015019 14:41 less -s