Lから始まるLinux

6章11話
systemd-timesyncd
6章12話 sysstat
もくじ
6章13話
smartmontools
sysstat
若木 みどり
お兄ちゃん! リソース状況を見るには コマンドを打たないと いけないのかな? 真夜中の状況や 1日の変動などを 見るには不便だよ!
若木 しげる
リソース監視ツールと いうものがあるよ! 今回は古くから使われている リソース監視ツール sysstat を使おう
インストール
若木 しげる
まずは sysstat パッケージを インストールしよう
sudo apt install -y sysstat
若木 みどり
パッケージ管理システムのおかげですごい楽だよ!
設定
若木 しげる
設定ファイルは /etc 配下にsysstat という名前で置かれているよディストリビューションによってパスが異なるので見つからなかったら find を使おう!
sudo find /etc -name sysstat
若木 みどり
うん!
/etc/default/sysstat
若木 みどり
このファイルが設定ファイルなんだね!
若木 しげる
一部のディストリビューションではENABLED という項目が false になっているんだこの場合 sysstat を動作させてあげるには値を true に変更してあげる必要があるよ
若木 みどり
お兄ちゃんのいうとおりだったよENABLED という項目があったよ
ENABLED="false"
若木 みどり
これをこう書き換えればいいんだよね?
ENABLED="true"
若木 しげる
うんそれでいいよ!
起動
若木 しげる
それでは sysstat を動かし自動起動を有効にしよう
sudo systemctl enable --now sysstat
若木 しげる
正常に動作しているかどうかは以下で確認できるよ
systemctl status sysstat
若木 みどり
正しく動作しているはずなんだけど…それらしいプロセスが見当たらないよ?
若木 しげる
sysstatcron ベースの仕組みで動いているんだなので常に sysstat のプロセスが動いていないんだよsysstat では以下のプログラムが cron で動いているよ
プログラム動作タイミング役割
sa110分おきリソース状況収集
sa21日の最後リソース統計出力
確認
若木 しげる
sarsysstat が収集した情報を表示するよ
sar [オプション]... [日付 [表示間隔]]
オプション説明
-uCPU 状況を表示(デフォルト)
-rメモリ状況を表示
-bストレージ I/O 状況を表示
-n DEVネットワーク状況を表示
--human人間に読みやすい形式で表示
若木 しげる
日付は -1 を指定すると「1日前」のリソース状況を表示するよ指定が無ければ本日を表示するんだ
若木 しげる
ここではオプションなしで実行してみよう!
sar
若木 みどり
うん!
Linux 6.6.51+rpt-rpi-2712 (carter)      13/01/25        _aarch64_       (4 CPU)

00:00:01        CPU     %user     %nice   %system   %iowait    %steal     %idle
00:10:01        all      0.01     59.55      0.02      0.01      0.00     40.42
00:20:04        all      0.01     59.90      0.01      0.10      0.00     39.98
00:30:00        all      0.00     60.11      0.01      0.00      0.00     39.87
00:40:00        all      0.01     59.94      0.01      0.00      0.00     40.04
...
若木 みどり(驚き)
おお!本日10分おきのCPU リソース状況が表示されたよ!
若木 しげる
デフォルトは CPU に関する情報だけどオプションを指定すると他のリソース状況も確認できるんだ
まとめ
若木 みどり
今回はリソース監視ツールsysstat を学んだよ!定期的にシステム負荷情報を収集して後から確認ができるんだ!
若木 しげる
今回は基本的な使い方の紹介だけだよsar をスクリプトに組み込んだりデータをグラフ化するツールと組み合わせることもできるよリソース不足をいち早く知れるようリソース監視体制を整えておくのがおすすめだよ