2026年9月27日
2026年9月27日
Linuxのパフォーマンス分析ツール(perf/sysstat)の使い方
はじめに
Linuxサーバーのパフォーマンス管理は、システムの最適化と障害対応に不可欠です。perfとsysstatはそのために使用される2つの強力なツールで、それぞれメモリやCPUの問題を特定し、定期的な監視情報を提供します。
症状・背景
- サーバーのパフォーマンス低下
- 不必要なプロセスが増加する
- システムリソースが不足している
- 障害の早期発見と対処
手順・設定方法
ステップ1: perfを使用する基本操作
# perfコマンドを実行してプロセスのトレースを行う
$ sudo perf record -p $(pgrep httpd) -- sleep 60
# 生成されたデータを分析するためにperf reportを実行する
$ sudo perf report
ステップ2: sysstatの主要オプション/設定
# sarコマンドを使用してCPU使用率を定期的に監視する
$ sudo apt-get install sysstat
$ sudo sar -u 1 60 > cpu_usage.txt
# ファイルを確認する
$ cat cpu_usage.txt
ステップ3: perfとsysstatの応用/組み合わせ
# perfコマンドを使用してI/Oデバイスのパフォーマンスを分析する
$ sudo perf stat -e disk:blockio-throttle-ops-read,disk:blockio-throttle-ops-write -a sleep 60
# 結果を表示する
$ cat /sys/kernel/debug/tracing/trace
ステップ4: 実践/トラブルシュート/監視
# perfコマンドを使用してCPU利用率の低い時間帯でのI/O使用率を確認する
$ sudo perf record -a -- sleep 60
$ sudo perf script | grep "blockio-throttle-ops-read" > io_usage.txt
# 結果を確認する
$ cat io_usage.txt
注意事項
perfコマンドの使用にはroot権限が必要です。sysstatはパッケージをインストールすることにより簡単に使用できますが、定期的なログ分析のためにファイルサイズやディスク空き容量に注意してください。perfのログデータは大量になりやすいので、適切なタイミングで削除しましょう。
まとめ
1. perf: メモリとI/Oデバイスの問題を特定するのに役立ちます。root権限が必要です。
2. sysstat: CPUやメモリ使用率などの定期的な監視情報を提供します。
3. 組み合わせ: perfとsysstatを一緒に使用することで、より詳細なパフォーマンス分析が可能になります。
4. 注意点: データの大量生成に注意し、適切な管理を行いましょう。
5. 実践: 定期的な監視と問題発生時の迅速な対応を心掛けてください。
関連記事: