症状
Linux インスタンスにおける高いメモリ使用量により、次のような症状が発生する可能性があります。
システムの動作が遅くなり、サービスの応答時間が増加し、アプリケーションのパフォーマンスが低下します。
Elastic Compute Service (ECS) コンソールで、インスタンスの高いメモリ使用量を確認できます。一般的に、メモリ使用率が 80% を超える場合は高いと見なされます。
メモリ使用量が設定されたしきい値を超えたというアラートを受信します。
考えられる原因
高いメモリ使用量の一般的な原因は次のとおりです。
異常なプロセスまたはサービスが大量のメモリを消費しています。
アプリケーションのワークロードが高すぎるため、インスタンスの物理メモリが不足しています。
操作手順
top を使用したメモリ使用量の確認
次の手順に従って、高いメモリ使用量を解決します。
ECS インスタンスに接続します。詳細については、「SSH キーペアを使用して Linux インスタンスに接続する」をご参照ください。
大量のメモリを消費しているプロセスを特定します。
次のコマンドを実行して、プロセスごとの CPU、メモリ、およびその他のリソース使用量を確認します。
top説明小文字の q キーを押すと、top コマンドを終了できます。
Mキーを押すと、メモリ使用量順にプロセスをソートできます。次の例では、PID 13183 のプロセスが最も多くメモリを消費していることがわかります。
次の表では、システム概要とプロセスメトリックのフィールドについて説明します。
高いメモリ使用量の解決
次の表は、高いメモリ使用量の一般的な原因とその解決方法を示しています。
問題の説明 | 原因 | 解決策 |
プロセスが長期間にわたって過剰なメモリを消費しています。 | 異常なプログラムまたはプロセスが過剰なメモリを消費しています。 |
|
正常なプロセスが長期間にわたって大量のメモリを消費しています。 | プロセスは正当ですが、動作中に過剰なメモリを消費しています。 | インスタンスにメモリボトルネックが発生している場合は、ビジネスニーズに基づいて戦略を選択します。
|
プロセスで時折、短時間のメモリスパイクが発生します。 | トラフィックのスパイクまたはスケジュールされたタスクが短期的なメモリ急増を引き起こしています。 |
|
単一のプログラムまたはプロセスが大量のメモリを消費していませんが、全体的なメモリ使用量が高くなっています。 | インスタンスでの正常な動作に必要なメモリが、インスタンスに設定されたメモリサイズを超えています。 | インスタンスにメモリボトルネックが発生している場合は、インスタンスタイプを変更してください。 詳細については、「インスタンスタイプを変更する」をご参照ください。 |
関連ドキュメント
Windows インスタンスの高いメモリ使用率のトラブルシューティングと解決方法については、「Windows インスタンスの高いメモリ使用率のトラブルシューティングと解決」をご参照ください。
異常分析のために事前にメモリメトリクスを収集する必要がある場合は、
atopユーティリティを使用できます。詳細については、「atop を使用して Linux システムメトリクスを監視する」をご参照ください。