Contents
CPU使用率を確認
使用するコマンド
- 「top」
- 「vmstat」
- 「sar」
- 「w」
メモリ使用量を確認
使用するコマンド
- 「top」
- 「vmstat」
- 「free」
ディスクI/Oを確認
使用するコマンド
- 「vmstat」
- 「sar」
- 「iostat」
TCPコネクション数
使用するコマンド
- 「netstat」
topコマンド
topでのロードアベレージの表示は、左から、1分、5分、15分間の平均値
vmstatコマンド
※ 1秒間ごとに実行
1 |
vmstat 1 |
※ 3秒ごとに5回実行
1 |
vmstat 3 5 |
※ 時刻も表示
1 |
vmstat 1 | awk '{print strftime("%y/%m/%d %H:%M:%S"), $0}' |
sarコマンド
sysstatのインストール
1 |
yum install sysstat |
※ 1秒ごとに実行
1 |
sar 1 |
※ 3秒ごとに5回実行
1 |
sar 3 5 |
※ ロードアベレージ状況確認(1秒ごと)
1 |
sar -q 1 |
※ マルチコアCPUコア別確認
1 |
sar -P ALL | head -13 |
※ プロセッサ毎にCPU使用率に関する情報を1秒毎5回表示する
1 |
sar -u -P ALL 1 5 |
※ ネットワークの結果の見方
1 2 3 |
sar -n DEV sar -n DEV | grep eht0 watch -n1 'sar -n DEV | grep eth' |
※ ディスクIOの結果
1 |
sar -b |
※ 日付別の過去データ(これは24日のもの)
1 |
sar -f /var/log/sa/sa24 |
netstatコマンド
※80、443ポートのコネクション数確認
1 |
watch "netstat -aln | grep -cE ':(80|443) '" |
把握
1 |
netstat -t | wc -l |
※httpsに絞り込み
1 |
netstat -t | grep https | wc -l |
※mysqlに絞り込み
1 |
netstat -t | grep mysql | wc -l |
※ TIME_WAITの数をカウント
1 |
netstat -na | grep -c TIME_WAIT |
※ 1秒おきに更新
1 2 3 |
watch -n1 'netstat -na | grep -c TIME_WAIT' watch 'netstat -teuv | grep -c https' |
ulimitコマンド
※ 現在のファイルディスクリプタ数確認
1 |
ulimit -n |
※ ファイルディスクリプタ数変更
1 |
ulimit -n 2048 |
※ システム全体のファイルディスクリプタ数の上限
1 |
cat /proc/sys/fs/file-max |
dstatコマンド
vmstat,iostat,netstat,ifstat といったツールを置き換えるために開発された
1 |
dstat -Tclmdrn |
tcp_fin_timeout値確認
1 |
less /etc/sysctl.conf |
編集ファイル
1 |
vim /etc/sysctl.conf |
編集内容
1 2 |
net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_tw_reuse=1 |
反映
1 |
sysctl -p |
まとめ
dstatコマンドはかなり便利で見やすくとりあえず、いろいろ確認したい場合はこちらをまず実行するとよいです。