翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
OS モニタリング
Amazon RDS for MySQL または MariaDB の DB インスタンスは、基盤となるシステムリソースである CPU、メモリ、ネットワーク、ストレージを使用する Linux オペレーティングシステムで実行されます。
MySQL [(none)]> SHOW variables LIKE 'version%'; +-------------------------+---------------------+ | Variable_name | Value | +-------------------------+---------------------+ | version | 8.0.28 | | version_comment | Source distribution | | version_compile_machine | aarch64 | | version_compile_os | Linux | | version_compile_zlib | 1.2.11 | +-------------------------+---------------------+ 5 rows in set (0.00 sec)
データベースと基盤となるオペレーティングシステムの全体的なパフォーマンスは、システムリソースの使用率に大きく依存します。たとえば、CPU はデータベースソフトウェアの指示を実行し、他のシステムリソースを管理するため、システムのパフォーマンスにとって重要なコンポーネントです。CPU が過剰に使用されている場合 (つまり、負荷が DB インスタンスにプロビジョニングされたよりも多くの CPU 電力を必要とする場合)、この問題はデータベースのパフォーマンスと安定性、ひいてはアプリケーションに影響します。
データベースエンジンは、メモリを動的に割り当てて解放します。RAM に現在の作業を実行するのに十分なメモリがない場合、システムはディスクにあるスワップメモリにメモリページを書き込みます。ディスクはメモリよりもはるかに低速であるため、ディスクが SSD NVMe テクノロジーに基づいていても、メモリの割り当てが多すぎるとパフォーマンスが低下します。メモリ使用率が高いと、ページファイルのサイズが大きくなり、追加のメモリがサポートされるため、データベースレスポンスのレイテンシーが増加します。メモリ割り当てが高すぎて RAM とスワップメモリスペースの両方が枯渇すると、データベースサービスが使用できなくなる可能性があり、ユーザーは などのエラーが発生する可能性があります[ERROR] mysqld: Out of memory (Needed xyz bytes)
。
MySQL および MariaDB データベース管理システムは、テーブル、インデックス、バイナリログ、REDO ログ、元に戻すログ、二重書き込みバッファファイルなどのディスク上の構造OS error code 28: No space left on device
可能性があるため、ディスク容量の割り当てをモニタリングしてアラートを生成することが重要です。
Amazon RDS は、DB インスタンスが実行されるオペレーティングシステムのメトリクスをリアルタイムで提供します。Amazon RDS は、1 つの OS メトリクスセットを CloudWatch に自動的に発行します。これらのメトリクスは、Amazon RDS コンソールと CloudWatch ダッシュボードで表示および分析でき、CloudWatch で選択したメトリクスにアラームを設定できます。以下に例を示します。
-
CPUUtilization
– CPU 使用率の割合。 -
BinLogDiskUsage
– バイナリログによって占有されているディスク容量。 -
FreeableMemory
– 使用可能なランダムアクセスメモリの量。これは、 のMemAvailable
フィールドの値を表します/proc/meminfo
。 -
ReadIOPS
– 1 秒あたりのディスク読み取り I/O オペレーションの平均数。 -
WriteThroughput
– ローカルストレージのディスクに書き込まれた 1 秒あたりの平均バイト数。 -
NetworkTransmitThroughput
– DB ノードの送信ネットワークトラフィック。モニタリングとレプリケーションに使用されるデータベーストラフィックと Amazon RDS トラフィックの両方を結合します。
Amazon RDS から CloudWatch に発行されたすべてのメトリクスの完全なリファレンスについては、Amazon RDS ドキュメントの「Amazon RDS の Amazon CloudWatch メトリクス」を参照してください。
次の図は、Amazon RDS コンソールに表示される Amazon RDS の CloudWatch メトリクスの例を示しています。

次のグラフは、CloudWatch ダッシュボードに表示される同様のメトリクスを示しています。

他の一連の OS メトリクスは、Amazon RDS の拡張モニタリングによって収集されます。このツールを使用すると、リアルタイムのシステムメトリクスと OS プロセス情報を提供することで、Amazon RDS for MariaDB および Amazon RDS for MySQL DB インスタンスの状態をより詳細に把握できます。DB インスタンスで拡張モニタリングを有効にし、目的の粒度を設定すると、ツールはオペレーティングシステムのメトリクスとプロセス情報を収集します。この情報は、次の画面に示すように、Amazon RDS コンソールで表示および分析できます。

拡張モニタリングが提供する主要なメトリクスには、次のようなものがあります。
-
cpuUtilization.total
– 使用中の CPU の合計パーセンテージ。 -
cpuUtilization.user
– ユーザープログラムによって使用されている CPU の割合。 -
memory.active
– 割り当てられたメモリの量をキロバイト単位で表します。 -
memory.cached
– ファイルシステムベースの I/O のキャッシュに使用されるメモリの量。 -
loadAverageMinute.one
– 過去 1 分間に CPU 時間をリクエストしたプロセスの数。
メトリクスの完全なリストについては、Amazon RDS ドキュメントの「拡張モニタリング」の「OS メトリクス」を参照してください。
Amazon RDS コンソールでは、OS プロセスリストに、DB インスタンスで実行されている各プロセスの詳細が表示されます。リストは 3 つのセクションに分かれています。
-
OS プロセス ‒ このセクションは、すべてのカーネルプロセスとシステムプロセスの集約された概要を表します。これらのプロセスは、通常、データベースのパフォーマンスへの影響は最小限です。
-
RDS プロセス – このセクションでは、Amazon RDS DB インスタンスのサポートに必要な AWS プロセスの概要を示します。例えば、Amazon RDS 管理エージェント、モニタリングと診断プロセス、および同様のプロセスが含まれます。
-
RDS 子プロセス – このセクションでは、DB インスタンスをサポートする Amazon RDS プロセスの概要を示します。この場合、
mysqld
プロセスとそのスレッドです。mysqld
スレッドは親mysqld
プロセスの下にネストされた状態で表示されます。
次の画面図は、Amazon RDS コンソールの OS プロセスリストを示しています。

Amazon RDS は、拡張モニタリングのメトリクスを CloudWatch Logs アカウントに配信します。Amazon RDS コンソールに表示されるモニタリングデータは、CloudWatch Logs から取得されます。DB インスタンスのメトリクスを CloudWatch Logs からログストリームとして取得することもできます。 CloudWatch これらのメトリクスは JSON 形式で保存されます。選択したモニタリングシステムで CloudWatch Logs からの拡張モニタリング JSON 出力を使用できます。
CloudWatch ダッシュボードにグラフを表示し、メトリクスが定義されたしきい値を超えた場合にアクションを開始するアラームを作成するには、CloudWatch Logs から CloudWatch にメトリクスフィルターを作成する必要があります。詳細な手順については、拡張モニタリング CloudWatch Logs をフィルタリングして Amazon RDS の自動カスタムメトリクスを生成する方法に関する AWS re:Post 記事
次の例は、 Custom/RDS
名前空間CPU.User
のカスタムメトリクスを示しています。このカスタムメトリクスは、CloudWatch Logs からcpuUtilization.user
拡張モニタリングメトリクスをフィルタリングすることによって作成されます。

CloudWatch リポジトリでメトリクスが使用可能な場合、CloudWatch ダッシュボードでメトリクスを表示および分析し、さらに数学およびクエリオペレーションを適用し、アラームを設定してこの特定のメトリクスをモニタリングし、観測値が定義されたアラーム条件と一致しない場合にアラートを生成できます。