atop ツールを使用して、EC2 Linux インスタンスのプロセスの使用状況の履歴統計を取得するにはどうすればよいですか。

所要時間3分
0

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスでリソースの使用履歴をモニタリングしたいと考えています。atop ツールを使ってこれを行うにはどうしたらいいですか?

簡単な説明

atop ツールは、後で分析するためにリソースの使用履歴を記録するパフォーマンスモニタリングツールです。このツールでは、リアルタイムのレポート作成も可能です。各プロセスおよびスレッドの CPU 使用率、メモリ消費量、ディスク I/O の使用状況を取得できます。長期的なサーバー分析ができるよう、atop ツールは、統計の記録中はバックグラウンドで アクティブなままになっています。統計情報は、デフォルトで 28 日間保存されます。

注: atop は、インストール後にのみデータのログを開始します。atop のインストール日より前のプロセスに関するパフォーマンスデータの履歴は、取得できません。

解決方法

atop をインストールする

詳細なインストール手順については、「Amazon Linux、RHEL、CentOS、または Ubuntu を実行している自分の EC2 インスタンスに対して、ATOP および SAR モニタリングツールを設定する方法を教えてください」をご参照ください。

過去の確認と分析のために atop レポートログを読む

atop ツールは、/var/log/atop にログファイルを作成します。これらは「atop_ccyymmdd」というフォーマットでファイル名が付きます。例えば、「atop_20210902」は 2021 年 9 月 2 日のレコードです。

ログファイルにアクセスするには、atop -r atoplogfilepath コマンドを実行します。atoplogfilepath を、atop ログファイルへのフルパスに置き換えます。コマンドとログファイルは次の例のように表示されます。

atop -r /var/log/atop/atop_20210902 

ATOP - ip-172-20-139-91                2021/09/02  17:03:44                ----------------                 3h33m7s elapsed
PRC |  sys    6.51s  |  user   7.85s  |  #proc    103  |  #tslpi    81 |  #tslpu     0  |  #zombie    0  |  #exit      0  |
CPU |  sys     0%  |  user      3%  |  irq       0%  |  idle    197% |  wait      0%  |  ipc notavail  |  curscal   ?%  |
cpu |  sys     0%  |  user      1%  |  irq       0%  |  idle     98% |  cpu000 w  0%  |  ipc notavail  |  curscal   ?%  |
cpu |  sys     0%  |  user      1%  |  irq       0%  |  idle     98% |  cpu001 w  0%  |  ipc notavail  |  curscal   ?%  |

前述の出力例では、最初に記録されたスナップショットは 2021/09/02 17:03:44 でした。次のスナップショットに進むには、キーボードの 「t」 (小文字) キーを押します。前のスナップショットに戻るには、「T」(大文字)キーを押します。

特定のタイムスロットを分析するには、「b」 キーを押し、日付と時刻を入力します。atop ツールは、[新しい時刻を入力] 変数で指定された時刻にスキップします。

NET |  lo      ----  |  pcki       2  |  pcko       2  |  sp    0 Mbps |  si    0 Kbps  |  so    0 Kbps  |  erro       0  |
Enter new time (format [YYYYMMDD]hhmm):
  PID              TID              RDDSK              WRDSK             WCANCL              DSK             CMD        1/4

ショートカットキー

ショートカットキーを押すと、さまざまな統計を表示できます。ショートカットキーの例を以下に示します。

ショートカットキー説明
g汎用情報 (デフォルト)。
mメモリの詳細。
dディスクの詳細。
nネットワークの詳細。このキーは netatop カーネルモジュールがインストールされている場合にのみ機能します。
cプロセスごとの完全なコマンドライン

次のショートカットキーを使用して、プロセスのリストをソートできます。

ショートカットキー並べ替え
CCPU アクティビティ。
Mメモリ消費量。
Dディスクアクティビティ。
Nネットワークアクティビティ。このキーは netatop カーネルがインストールされている場合にのみ機能します。
A最もアクティブなシステムリソース (自動モード)。

h キーを押すと、ヘルプドキュメントが表示されます。

atopsar コマンド

atopsar コマンドは、従来の UNIX の sar コマンドに似た機能です。atopsar コマンドを使用して、さまざまなシステムアクティビティレポートを生成できます。

atopsar コマンドは、色分けと(リクエストに応じ)マーカーで、リソースの使用率を強調します。クリティカルな使用率は赤でマークされ、ほぼクリティカルな使用率はシアンでマークされます。

次の例では、フラグ「-c」を使用して、システムの現在の CPU 使用率に関するレポートを生成します。次の例は、1 秒間隔の 2 つの結果を示しています。

$ atopsar -c 1 2

ip-172-20-139-91  4.14.238-182.422.amzn2.x86_64  #1 SMP Tue Jul 20 20:35:54 UTC 2021  x86_64  2021/09/02

-------------------------- analysis date: 2021/09/02 --------------------------

18:50:16  cpu  %usr %nice %sys %irq %softirq  %steal %guest  %wait %idle  _cpu_
18:50:17  all     0     0    0    0        0       0      0      0   200
            0     0     0    0    0        0       0      0      0   100
            1     0     0    0    0        0       0      0      0   100
18:50:18  all     0     0    0    0        0       0      0      0   200
            0     0     0    0    0        0       0      0      0   100
            1     0     0    0    0        0       0      0      0   100

atopsar コマンドは、履歴データを分析することもできます。たとえば、次のコマンドを実行して、当日の 13 時 00 分 (-b) から始まり、13 時 35 分 (-e) に終了するすべてのレポート (-A) を生成します。

atopsar -A -b 13:00 -e 13:35

前日のファイルを読み込むには、「-r」オプションを使用し、ログファイル名を指定します。


関連情報

EC2 Linux インスタンスがリソースの過剰使用が原因で応答しなくなるのはなぜですか?

AWS公式
AWS公式更新しました 1年前
コメントはありません

関連するコンテンツ