Amazon Web Services (v2)
DANGER
古い形式のインテグレーション Amazon Web Services (Classic) は将来的に廃止されます。
インテグレーションの仕組み
AWS インテグレーションに必要なアプリケーションは、CloudFormation のテンプレートで提供されており、AWS コンソールや IaC ツールを利用してデプロイ可能です。
インテグレーションは次の 3 つのパッケージから構成されます。必要に応じたテンプレートをデプロイすることで、お客様の AWS 環境に関連する AWS リソースが自動的に作成されます。
パッケージ | デプロイ方法 | デプロイリージョン | 説明 | 主に作成されるリソース |
---|---|---|---|---|
srest-integration (必須) | CloudFormation Stack | us-east-1 | srest と連携するための IAM ロール (AssumeRole) を作成。 | IAM ロール |
srest-aws-event-forwarder | CloudFormation StackSets | マルチリージョン指定可能 | EventBridge に収集されたログを srest に配信する。 | EventBridge ルール |
srest-data-exports | CloudFormation Stack | us-east-1 | Data Exports を有効化し、コストデータを srest に配信する。 | Data Exports、S3 バケット |
収集可能なデータ
コスト
srest は AWS インテグレーションによって作成された IAM ロールを利用して、Cost Explorer 及び Data Exports を用いてコストデータを取得します。
イベント (EventBridge)
AWS が提供する EventBridge の機能を利用して、各種イベントログを srest に送信できます。
イベントタイプ | イベントソース | イベントの概要 |
---|---|---|
Amazon CloudWatch | aws.cloudwatch | CloudWatch アラーム状態の更新 |
Amazon EC2 | aws.ec2 |
|
Amazon ECS | aws.ecs |
|
Amazon GuardDuty | aws.guardduty |
|
Amazon Inspector2 | aws.inspector2 | Inspector が検出したセキュリティ評価の更新 |
Amazon RDS | aws.rds |
|
Amazon Security Hub | aws.securityhub |
|
AWS Health | aws.health |
|
※イベントソースは、EventBridge に送信されたイベントの source
パラメータの値を指します。
INFO
- GuardDuty や Security Hub、Inspector イベントを収集するには、事前にサービスを有効化しておく必要があります。 サービスにはそれぞれ利用料が発生するため、詳しくは AWS のドキュメントをご確認ください。
- EventBridge によるサービス連携は今後拡充予定です。
次の JSON データは、RDS がスナップショットを作成した際、EventBridge に送信されるイベントのサンプルコードです。
{
"version": "0",
"id": "xxx",
"detail-type": "RDS DB Cluster Snapshot Event",
"source": "aws.rds",
"account": "xxx",
"time": "2024-01-05T13:15:18Z",
"region": "ap-northeast-1",
"resources": [
"arn:aws:rds:ap-northeast-1:xxx"
],
"detail": {
"EventCategories": [
"backup"
],
"SourceType": "CLUSTER_SNAPSHOT",
"SourceArn": "arn:aws:rds:ap-northeast-1:xxx",
"Date": "2024-01-05T13:15:18.495Z",
"Message": "Automated cluster snapshot created",
"SourceIdentifier": "rds:production-2024-01-05-13-15",
"EventID": "RDS-EVENT-0169"
}
}
srest は、お客様の環境で EventBridge が受信したイベントログを srest に配送する形で、ダッシュボードを用いたログの可視化を提供します。
設定手順
srest と AWS を連携するには、CloudFormation から srest-integration
スタックをデプロイします。
画面右上のユーザーアイコンをクリックして [サービス設定] を開きます。
サイドバーから [インテグレーション] を選択します。
[Amazon Web Services (v2)] の [設定] を開きます。
[CloudFormation スタックの作成] ボタンをクリックします。
CloudFormation のコンソールが開くので、右上に表示されているアカウント情報がデプロイ対象のアカウントと一致していることを確認します。 別の AWS アカウントが表示されている場合は、デプロイ対象の AWS アカウントに再ログインしたうえで、再度 srest から [CloudFormation スタックの作成] ボタンをクリックしてください。
CloudFormation は、
srest-integration
というスタック名で srest と連携するための IAM ロールを作成します。 スタック作成時は IAM ロール作成の承認チェックボックスが表示されるため、I acknowledge that AWS CloudFormation might create IAM resources.
にチェックを付けます。INFO
srest が作成する AWS リソースは、[Template URL] から確認できます。
[Create Stack] ボタンをクリックするとスタックの作成が始まるので、数分待ちます。
スタックのステータスが [CREATE_COMPLETE] に更新されたことを確認後、[Resources] タブを開き、[IntegrationIAMRole] から [Physical ID] のリンクをクリックします。
srest-integration の IAM ロールの ARN をコピーします。
srest に戻り、[IAM Role ARN] フィールドに先ほどコピーした ARN を貼り付け、[設定を反映] ボタンをクリックします。
インテグレーションが成功すると通知メッセージが表示されるので、[閉じる] ボタンをクリックします。
イベントログとコストデータ取得方法については、下記ドキュメントを参照してください。
インテグレーションの解除
AWS と srest のインテグレーションを解除するには、CloudFormation から srest-integration
スタックを削除する必要があります。
DANGER
AWS インテグレーションを解除する場合、事前にコスト、及びイベントログのインテグレーションを解除しておく必要があります。
AWS コンソールから CloudFormation のページを開きます。
サイドバーから [Stacks] をクリックします。
スタックの一覧から
srest-integration
を選択し、[Delete] ボタンをクリックします。確認モーダルで srest-integration が削除されることを確認し、[Delete] ボタンをクリックします。
スタックの一覧から
srest-integration
が削除されることを確認します。srest のインテグレーションページを開き、[Amazon Web Services (v2)] の [設定] ボタンをクリックします。
[連携解除] ボタンをクリックします。