AWS Neptune Cluster¶
AWS Neptune Cluster の表示メトリクスには、コールドスタート時間、実行時間、同時実行数、メモリ使用量が含まれます。これらのメトリクスは、Neptune Cluster 関数の応答速度、拡張性、リソース使用状況を示します。
設定¶
Func のインストール¶
推奨されるのは、Guance の統合 - 拡張 - マネージド版 Func を有効化する方法です。前提条件はすべて自動でインストールされますので、続けてスクリプトをインストールしてください。
Func を自前でデプロイする場合は、Func を自前でデプロイ を参照してください。
インストールスクリプト¶
ヒント:要件を満たす Amazon のクラウド AK を事前に用意してください(簡単のため、CloudWatch の読み取り専用権限
CloudWatchReadOnlyAccessを直接付与して構いません)
マネージド版 有効化スクリプト¶
- Guance コンソールにログインする
- 【統合】メニューをクリックし、【クラウドアカウント管理】を選択する
- 【クラウドアカウントを追加】をクリックし、【AWS】を選択して画面に必要な情報を入力する。すでにクラウドアカウント情報を設定済みの場合は、この手順を省略する
- 【テスト】をクリックし、成功したら【保存】をクリックする。テストに失敗した場合は、関連設定が正しいか確認してから再度テストする
- 【クラウドアカウント管理】一覧で追加済みのクラウドアカウントを確認できる。該当するクラウドアカウントをクリックして詳細ページに入る
- クラウドアカウント詳細ページの【統合】ボタンをクリックし、
未インストール一覧からAWS Neptune Clusterを見つけて【インストール】をクリックすると、インストール画面が表示されるのでそのままインストールする
手動有効化スクリプト¶
-
Func コンソールにログインし、【スクリプトマーケット】をクリックして Guance スクリプトマーケットに入り、
integration_aws_neptune_clusterを検索する -
【インストール】をクリックした後、必要なパラメータとして AWS AK ID、AK Secret、およびアカウント名を入力する
-
【デプロイしてスクリプトを起動】をクリックすると、システムが自動で
Startupスクリプトセットを作成し、対応する起動スクリプトを自動設定する -
有効化後は「管理 / 自動トリガー設定」で対応する自動トリガー設定を確認できる。【実行】をクリックすれば、定期実行を待たずにすぐ 1 回実行できる。しばらく待つと、実行タスクの記録と対応するログを確認できる
検証¶
- 「管理 / 自動トリガー設定」で、対応するタスクに自動トリガー設定が存在するか確認し、あわせてタスク記録とログを確認して異常がないかチェックする
- Guance の「インフラストラクチャ / カスタム」で資産情報が存在するか確認する
- Guance の「メトリクス」で対応する監視データがあるか確認する
メトリクス¶
Amazon CloudWatch を設定すると、デフォルトのメトリクスセットは次のとおりです。設定により、さらに多くのメトリクスを収集できます。
Amazon CloudWatch Neptune Cluster メトリクス詳細
メトリクス¶
| メトリクス | 説明 |
|---|---|
BackupRetentionPeriodStorageUsed |
Neptune データベースクラスターのバックアップ保持ウィンドウを支えるバックアップストレージの総量(バイト)。TotalBackupStorageBilled メトリクスの報告総量に含まれます。 |
BufferCacheHitRatio |
バッファキャッシュが提供したリクエストの割合です。このメトリクスは、キャッシュミスによる大きな遅延を診断するのに役立ちます。キャッシュヒット率が 99.9 未満の場合は、より多くのデータをメモリにキャッシュできるよう、インスタンスタイプのアップグレードを検討してください。 |
ClusterReplicaLag |
読み取り専用レプリカの場合、プライマリインスタンスから更新を複製する際の遅延量(ミリ秒)。 |
ClusterReplicaLagMaximum |
データベースクラスター内のプライマリインスタンスと各 Neptune データベースインスタンスの間の最大遅延量(ミリ秒)。 |
ClusterReplicaLagMinimum |
データベースクラスター内のプライマリインスタンスと各 Neptune データベースインスタンスの間の最小遅延量(ミリ秒)。 |
CPUUtilization |
CPU 使用率(%)。 |
EngineUptime |
インスタンスの稼働時間(秒)。 |
FreeableMemory |
使用可能な RAM 容量(バイト)。 |
GlobalDbDataTransferBytes |
Neptune グローバルデータベースにおいて、プライマリ AWS リージョンからセカンダリ AWS リージョンへ転送された redo ログデータのバイト数。 |
GlobalDbReplicatedWriteIO |
グローバルデータベースで、プライマリ AWS リージョンからセカンダリ AWS リージョン内のクラスター・ボリュームへ複製された書き込み I/O オペレーション数。 Neptune グローバルデータベースでは、各データベースクラスターの課金計算に、クラスター内で実行された書き込みオペレーションを表す VolumeWriteIOPS メトリクスを使用します。プライマリデータベースクラスターでは、セカンダリデータベースクラスターへのリージョン間レプリケーションを考慮するため、課金計算に GlobalDbReplicatedWriteIO を使用します。 |
GlobalDbProgressLag |
ユーザートランザクションとシステムトランザクションについて、セカンダリクラスターがプライマリクラスターに対して遅れているミリ秒数。 |
GremlinRequestsPerSec |
Gremlin エンジンへの 1 秒あたりのリクエスト数。 |
GremlinWebSocketOpenConnections |
Neptune へのオープン済み WebSocket 接続数。 |
LoaderRequestsPerSec |
1 秒あたりのローダーリクエスト数。 |
MainRequestQueuePendingRequests |
入力キューで実行待ちのリクエスト数。リクエストが最大キュー容量を超えると、Neptune はリクエストの制限を開始します。 |
NCUUtilization |
クラスター単位で、NCUUtilization はクラスター全体で使用されている最大容量の割合を示します。 |
NetworkThroughput |
Neptune データベースクラスター内の各インスタンスがクライアントから受信し、クライアントへ送信するネットワークスループットを、バイト/秒で示します。このスループットには、データベースクラスター内のインスタンスとクラスター・ボリューム間のネットワークトラフィックは含まれません。 |
オブジェクト¶
収集された AWS Neptune Cluster オブジェクトのデータ構造です。オブジェクトデータは「インフラストラクチャ / カスタム」で確認できます。
{
"measurement": "aws_neptune_cluster",
"tags": {
"DBClusterIdentifier" :"test",
"class" :"aws_neptune_cluster",
"cloud_provider" :"aws",
"FunctionName" :"dataflux-alb",
"name" :"dataflux-alb",
"PackageType" :"Zip",
"RegionId" :"cn-northwest-1",
"RevisionId" :"5e52ff51-615a-4ecb-96b7-40083a7b4b62",
"Role" :"arn:aws-cn:iam::XXXX:role/service-role/s3--xxxx-role-xxxx",
"Runtime" :"python3.7",
"Version" :"$LATEST"
},
"fields": {
"CreatedTime" : "2022-03-09T06:13:31Z",
"ListenerDescriptions": "{JSON データ}",
"AvailabilityZones" : "{アベイラビリティゾーンの JSON データ}",
"message" : "{インスタンスの JSON データ}"
}
}
注意:
tags、fields内のフィールドは、今後の更新により変更される場合がありますヒント 1:
tags.account_nameの値はインスタンス ID であり、一意の識別子として使用されます