0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【初心者向け】ファイルシステムのパフォーマンス可観測性ツール【5分で読める】

Last updated at Posted at 2025-02-17

ファイルシステムのパフォーマンス可観測性ツール

理解のために小咄形式でまとめました。

登場人物

  • 太郎(後輩):入社1年目の若手エンジニア。
  • 花子(先輩):システムエンジニア歴3年の先輩。

場面:オフィスの開発ルーム
太郎が ファイルシステムのパフォーマンス可観測性ツール に関する資料を見ながら、花子に質問する。

太郎:「花子先輩、ファイルシステムのパフォーマンスを監視 するための パフォーマンス可観測性ツール って、どんなものがありますか?」

花子:「いい質問ね! ファイルシステムのパフォーマンス可観測性ツール は、 I/O の状態やファイルのアクセスパターンを監視するため に使われるわ。 代表的なツール 10 種類 を紹介するわね。」


ファイルシステムのパフォーマンス可観測性ツール

花子:「パフォーマンス可観測性ツール には、 ファイルシステムの状態や I/O の動作を調査するため10 の主要なツール があるの。」

  1. mount:マウント情報を確認
  2. free:メモリとキャッシュの統計情報
  3. top:システムの全体的なリソース使用状況
  4. vmstat:CPU、メモリ、I/O の統計情報
  5. sar:経時的なシステムパフォーマンスの監視
  6. slabtop:カーネルスラブキャッシュの統計情報
  7. strace:プロセスのシステムコールをトレース
  8. fatrace:ファイルシステムオペレーションのトレース
  9. LatencyTOP:システムのレイテンシを分析
  10. opensnoop:ファイルのオープン操作を監視

1. mount

花子:「mount コマンドは、 システムにマウントされているファイルシステムの一覧 を表示するのに使うわ。」

  • マウントされているファイルシステムの種類やオプションを確認できる。
  • mount | column -t を使うと、見やすく表示できる。

「これは 地図アプリで、現在地の周辺の建物情報を見る のと似てるわね。」


2. free

花子:「free コマンドは、 メモリとキャッシュの統計情報を表示するツール よ。」

  • キャッシュやバッファの使用状況を確認できる。
  • free -h を使うと、 GBMB 単位でわかりやすく表示できる。

「例えば 冷蔵庫の収納状況をチェックする のと同じで、 どれだけの空きスペースがあるか を確認できるのよ。」


3. top

花子:「topシステム全体のリソース使用状況をリアルタイムで監視するツール よ。」

  • CPU やメモリ、ロードアベレージを確認できる。
  • top -o %CPUtop -o %MEM で、ソートして表示可能。

「これは 監視カメラで工場の稼働状況を見る のと同じね。」


4. vmstat

花子:「vmstatCPU、メモリ、I/O の統計情報をリアルタイムで取得するツール よ。」

  • vmstat 1 5 を使うと、 1秒ごとに5回の統計情報を表示 できる。
  • CPUの使用率、スワップ、I/O の負荷を確認できる。

「これは 電力メーターを見て、電気の使用状況を確認する のと似てるわ。」


5. sar

花子:「sarシステムのパフォーマンス情報を経時的に記録し、分析するツール よ。」

  • sar -u 1 5 で、 1秒ごとの CPU 使用率を 5 回取得 できる。
  • sar -d で、 ディスクの I/O 負荷を分析 できる。

「これは 天気予報の過去データを見る のと同じで、 過去のパフォーマンスを振り返ることができる のよ。」


6. slabtop

花子:「slabtopカーネルスラブキャッシュの使用状況をリアルタイムで表示するツール よ。」

  • カーネルが管理するキャッシュの詳細情報を取得できる。
  • slabtop -o で、 使用率の高いものをソート できる。

「これは 倉庫の在庫管理リストをリアルタイムで見る のと同じね。」


7. strace

花子:「straceプロセスのシステムコールをトレースするツール よ。」

  • strace -p <PID> で、特定のプロセスのシステムコールを監視。
  • strace -e open,read,write ./myapp で、ファイル I/O の動作を分析。

「これは レシートを見て、どこで何を買ったのかをチェックする のと似てるわ。」


8. fatrace

花子:「fatraceファイルシステムのオペレーションをトレースするツール よ。」

  • fatrace -c で、 特定のプロセスのファイルアクセスを監視
  • fatrace -t で、 タイムスタンプ付きでファイルアクセスを記録

「これは セキュリティカメラの履歴を確認する のと同じね。」


9. LatencyTOP

花子:「LatencyTOPシステムのレイテンシをリアルタイムで分析するツール よ。」

  • LatencyTOP を実行すると、プロセスごとの 遅延の原因 が表示される。
  • I/O のボトルネックを特定するのに有効。

「これは レストランで、料理が遅れている原因を調べる のと同じね。」


10. opensnoop

花子:「opensnoopファイルのオープン操作を監視するツール よ。」

  • opensnoop -p <PID> で、特定のプロセスの ファイルオープンを監視
  • opensnoop を実行すると、 どのプロセスがどのファイルを開いたか が表示される。

「これは ドアの開閉ログを記録する のと同じね。」


まとめ

花子:「これらの パフォーマンス可観測性ツール を活用することで、 システムの状態をリアルタイムで監視し、パフォーマンスのボトルネックを特定 できるわ。」

太郎:「ありがとうございます! strace を使って、 アプリケーションの I/O 動作を調査 してみます!」

参考リンク

システムパフォーマンス関連記事の目次

システムパフォーマンス関連記事は、以下の書籍を参考に記述しています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?