AWS Redshift¶
AWS Redshift の主要なパフォーマンス指標には、クエリ性能、ディスク空き容量の使用率、CPU 使用率、データベース接続数、ディスク I/O 操作が含まれます。これらは、データウェアハウスの性能を評価し最適化するうえで重要な指標です。
設定¶
Func のインストール¶
Guance では、統合 - 拡張 - マネージド版 Func の利用を推奨します。前提条件はすべて自動でインストールされるため、そのままスクリプトのインストールを続けてください。
Func を自前でデプロイする場合は、Func を自前でデプロイする を参照してください
インストールスクリプト¶
注意:要件を満たす Amazon AK を事前に用意してください。簡単のため、グローバル読み取り専用権限
ReadOnlyAccessを直接付与してもかまいません。
マネージド版の有効化スクリプト¶
- Guance コンソールにログインします
- 【統合】メニューをクリックし、【クラウドアカウント管理】を選択します
- 【クラウドアカウントを追加】をクリックし、【AWS】を選択して、画面に必要な情報を入力します。すでにクラウドアカウント情報を設定済みの場合は、この手順を省略します
- 【テスト】をクリックし、成功したら【保存】をクリックします。失敗した場合は、関連する設定情報が正しいか確認して再度テストしてください
- 【クラウドアカウント管理】の一覧で追加済みのクラウドアカウントを確認できます。該当するクラウドアカウントをクリックして詳細ページに入ります
- クラウドアカウント詳細ページの【統合】ボタンをクリックし、
未インストール一覧からAWS Redshiftを見つけて、【インストール】ボタンをクリックするとインストール画面が表示されるので、そのままインストールします
手動有効化スクリプト¶
-
Func コンソールにログインし、【スクリプトマーケット】をクリックして Guance のスクリプトマーケットに入り、
integration_aws_redshiftを検索します -
【インストール】をクリックし、AWS AK ID、AK Secret、およびアカウント名を入力します
-
【起動スクリプトをデプロイ】をクリックすると、システムが自動的に
Startupスクリプトセットを作成し、対応する起動スクリプトを自動で設定します -
有効化後は、「管理 / 自動トリガー設定」で対応する自動トリガー設定を確認できます。【実行】をクリックすると、定期実行を待たずにすぐ 1 回実行できます。しばらくすると、実行タスクの記録と対応するログを確認できます
確認¶
- 「管理 / 自動トリガー設定」で、対応するタスクに自動トリガー設定が存在するか確認し、あわせてタスクの記録とログで異常がないか確認します
- Guance の「基盤 / カスタム」で資産情報が存在するか確認します
- Guance の「メトリクス」で対応する監視データがあるか確認します
メトリクス¶
Amazon CloudWatch を設定すると、既定のメトリクスセットは次のとおりです。設定によって、さらに多くのメトリクスを収集できます。Amazon CloudWatch のメトリクス詳細
Redshift メトリクス¶
| メトリクス名 | 説明 | 単位 | ディメンション |
|---|---|---|---|
| CPUUtilization | CPU 使用率。クラスターの場合、このメトリクスはすべてのノード(リーダーノードとコンピュートノード)の CPU 使用率の合計を表します | % | ClusterIdentifier |
| HealthStatus | クラスターの正常性チェック | 1:正常 または 0:異常 | ClusterIdentifier |
| MaintenanceMode | クラスターがメンテナンスモードかどうか | 1:ON または 0:OFF | ClusterIdentifier |
| PercentageDiskSpaceUsed | 使用済みディスク容量の割合 | % | ClusterIdentifier |
| DatabaseConnections | クラスター内のデータベース接続数 | count | ClusterIdentifier |
| CommitQueueLength | 指定時点でコミット待ちのトランザクション数 | count | ClusterIdentifier |
| ConcurrencyScalingActiveClusters | いずれかの時点でクエリを処理している同時スケーリングクラスター数 | count | ClusterIdentifier |
| NetworkReceiveThroughput | ノードまたはクラスターが受信するデータの速度 | byte/s | ClusterIdentifier |
| NetworkTransmitThroughput | ノードまたはクラスターが書き込むデータの速度 | byte/s | ClusterIdentifier |
| MaxConfiguredConcurrencyScalingClusters | パラメータグループで設定された同時スケーリングクラスターの最大数 | count | ClusterIdentifier |
| NumExceededSchemaQuotas | クォータを超過した schema 数 | count | ClusterIdentifier |
| ReadIOPS | 1 秒あたりの平均ディスク読み取り操作数 | count/s | ClusterIdentifier |
| ReadLatency | ディスク読み取り I/O 操作に要する平均時間 | 秒 | ClusterIdentifier |
| ReadThroughput | 1 秒あたりにディスクから読み取られる平均バイト数 | byte | ClusterIdentifier |
| TotalTableCount | 特定時点で開いているユーザーテーブル数 | count | ClusterIdentifier |
| WriteIOPS | 1 秒あたりの平均ディスク書き込み操作数 | count/s | ClusterIdentifier |
| WriteLatency | ディスク書き込み I/O 操作に要する平均時間 | 秒 | ClusterIdentifier |
| WriteThroughput | 1 秒あたりにディスクへ書き込まれる平均バイト数 | byte | ClusterIdentifier |
オブジェクト¶
収集された Amazon AWS Redshift オブジェクトのデータ構造です。「基盤 - カスタム」でオブジェクトデータを確認できます
{
"measurement": "aws_redshift",
"tags": {
"ClusterAvailabilityStatus" : "Modifying",
"ClusterIdentifier" : "hn-test",
"ClusterStatus" : "creating",
"ClusterSubnetGroupName" : "default",
"ClusterVersion" : "1.0",
"DBName" : "dev",
"MasterUsername" : "awsuser",
"NodeType" : "dc2.large",
"PreferredMaintenanceWindow" : "sat:19:30-sat:20:00",
"RegionId" : "cn-northwest-1",
"VpcId" : "vpc-b1ca3ff0fa4d",
"name" : "hn-test"
},
"fields": {
"AllowVersionUpgrade" : true,
"AutomatedSnapshotRetentionPeriod" : 1,
"ClusterNodes" : "[]",
"ClusterParameterGroups" : "[{\"ParameterApplyStatus\": \"in-sync\", \"ParameterGroupName\": \"default.redshift-1.0\"}]",
"ClusterSecurityGroups" : "[]",
"Encrypted" : false,
"Endpoint" : "{}",
"ManualSnapshotRetentionPeriod" : -1,
"NumberOfNodes" : 1,
"PendingModifiedValues" : "{\"MasterUserPassword\": \"****\"}",
"PubliclyAccessible" : false,
"VpcSecurityGroups" : "[{\"Status\": \"active\", \"VpcSecurityGroupId\": \"sg-467a\"}]",
"message" : "{实例 JSON 数据}"
}
}
注意:
tags、fieldsの項目は、今後の更新により変更される場合があります注意 1:
tags.nameの値はインスタンス ID であり、一意識別子として使用されます注意 2:
fields.message、fields.network_interfaces、fields.blockdevicemappingsは JSON 直列化後の文字列です