
Amazon Auroraの運用時に監視できる項目について
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
Amazon Auroraの運用について
プレビュー版のAmazon Aurora使えるようになったので色々試しています。新しいDBエンジンということで、運用をどうするか気になっている方も多いのではないでしょうか。Amazon Auroraは、RDSの他のデータベースエンジンと同じように、CloudWatchで運用状況をモニタリングすることができます。これにより、正常稼働しているか、期待するパフォーマンスが出ているか確認することができますので、アラームを設定して運用に役立てることができます。
AuroraのDBクラスタ概念図

Aurora Metricsの種類
Auroraは、大きく分けて2種類の情報があります。Aurora System Monitoringと、Aurora SQL Monitoringです。前者は、ネットワーク/ディスク/CPUなどのシステムに関するモニタリングで、後者は、DML/DDL/処理遅延/デッドロックなどのSQLに関するモニタリングです。
Auroraで指定できるCloudWatchメトリクス

Aurora System Monitoring
Auroraで指定できるシステムモニタリングに関するメトリクスです。
| メトリクス | 説明 |
|---|---|
| CPU Utilization | DBインスタンスのCPU使用率(%)について |
| Freeable memory | 使用可能なランダムアクセスメモリー領域(GB)について |
| Storage | DBクラスターで利用しているストレージサイズ(GB)について。この値は課金のための情報となります。 |
| Network receive throughput | 各クライアントから受信するネットワークスループット(MB/s)について。この値は、DBクラスタとクラスタボリューム間の通信は含まれていません。 |
| Network transmit throughput | 各クライアントから送信するネットワークスループット(MB/s)について。この値は、DBクラスタとクラスタボリューム間の通信は含まれていません。 |
| Read operations | 1秒あたりの平均読み込みディスクI/O回数について |
| Read latency | 読み込みI/Oリクエストの開始から完了までの経過時間(ms) |
| Read throughput | DBクラスタへのリクエストに関するネットワークスループット(MB/s) |
| Read queue depth | 読み込みI/Oリクエストに対してディスクアクセス待ちの件数 |
| Write operations | 1秒あたりの平均書き込みディスクI/O回数について |
| Write latency | 書き込みI/Oリクエストの開始から完了までの経過時間(ms) |
| Write throughput | DBクラスタへのレスポンスに関するネットワークスループット(MB/s) |
| Write queue depth | 書き込みI/Oリクエストに対してディスクアクセス待ちの件数 |
| Replica lag | Auroraにおいて、プライマリインスタンスからレプリカへの更新時の遅延(ms)について |
| Replica lag maximum | プライマリインスタンスと各Auroraインスタンスの間のレプリケーションの最大遅延(ms) |
| Replica lag minimum | プライマリインスタンスと各Auroraインスタンスの間のレプリケーションの最小遅延(ms) |
| Queue depth | ディスクアクセスを待っている未処理のI/Oリクエスト(読み書き)数 |
| Free storage space | 他のDBエンジンとは異なり、Auroraでは、各DBインスタンスの一時テーブルとログのストレージ量(GB)について報告します。より大きなDBインスタンスサイズを選ぶことで、より大きなストレージ量を利用することができます。 |
| Swap usage | Auroraではサポートされていません。 |
| Binary log disk usage | MySQLバイナリログのストレージ利用量(GB)について |
| CPU credit balance | Auroraではサポートされていません。 |
| CPU credit usage | Auroraではサポートされていません。 |
Aurora SQL Monitoring
Auroraで指定できるSQLモニタリングに関するメトリクスです。
| メトリクス | 説明 |
|---|---|
| Select throughput | Selectクエリー数/sec |
| DML throughput | データ操作(Insert/Update/Delete)クエリー数/sec |
| Commit throughput | トランザクションコミット数/sec |
| DDL throughput | データ定義リクエスト数/sec |
| Select latency | データ検索(Select)クエリー遅延(ms) |
| DML latency | データ操作(Insert/Update/Delete)クエリー遅延(ms) |
| Commit latency | トランザクションコミット遅延(ms) |
| DDL latency | データ定義リクエスト遅延(ms) |
| DB Connections | DBインスタンスへのアクティブなコネクション数 |
| Active transactions | DBインスタンスへの実行中トランザクション数(平均/秒) |
| Buffer cache hit ratio | リクエストに対するバッファキャッシュヒット率(%) |
| Resultset cache hit ratio | リクエストに対するリザルトセットヒット率(%) |
| Login failures | ログイン失敗数(平均/秒) |
| Blocked transactions | ブロックされているトランザクション数(平均/秒) |
| Failed SQL statements | SQL実行失敗数(平均/秒) |
| Deadlocks | デッドロック数(平均/秒) |
まとめ
DDL/DMLのスループット/遅延に関する情報や、トランザクション周りの情報をAPIで取得できたり、アラーム設定できるのは嬉しいですね!






