Datadog-Amazon CloudFormation

Datadog-Amazon CloudFormation リソースは、us-east-1 リージョンのCloudFormation パブリックレジストリでのみ利用可能です。その他のリージョンでリソースを非公開で登録するには、提供されているパッケージを使用してください。

AWS CloudFormation は、環境内のすべての AWS リソースを一度に記述、構成、プロビジョニングするためのテンプレートを提供します。Datadog-AWS CloudFormation リソースでは、サポートされている Datadog リソースとのやりとり、任意の Datadog データセンターへのリソースの送信、任意のリージョンにおける Datadog リソースを使用した拡張機能の非公開登録を行うことができます。

これらのリソースにアクセスするには、AWS マネジメントコンソール (UI) または AWS コマンドラインインターフェイス (CLI) を使用します。

AWS マネジメントコンソール

始めるには

  1. アカウントで AWS マネジメントコンソールにサインインし、CloudFormation に移動します。

  2. 左側のペインから “Public extensions” を選択し、“Third Party” でパブリッシャーをフィルタリングします。

  3. 検索バーを使用して、“Datadog” プレフィックスでフィルタリングします。

注: すべての公式 Datadog リソースは Datadog:: で始まり、それが Published by Datadog であることを指定します。

  1. 目的のリソース名を選択してそのスキーマに関する詳細情報を表示し、Activate をクリックします。

  2. Extension details ページで、次のように指定します。

  • 拡張機能名
  • 実行ロール ARN
  • マイナーバージョンリリースの自動更新
  • コンフィギュレーション
  1. リソースコンフィギュレーションについては、クリアテキストの代わりに AWS Secrets Manager または同様のサービスを使用して Datadog API とアプリケーションキーを保存することを強くお勧めします

AWS Secrets Manager を使用している場合は、コンフィギュレーションで API キーとアプリケーションキーを動的に参照できます。詳細については、AWS ドキュメントを参照してください。

例:

{
  "DatadogCredentials": {
      "ApiKey": "{{resolve:secretsmanager:MySecret:SecretString:SecretAPIKey}}",
      "ApplicationKey": "{{resolve:secretsmanager:MySecret:SecretString:SecretAppKey}}"
  }
}
  1. リソースを構成したら、アクティブ化された Datadog リソースのいずれかを含む AWS スタックを作成します。

使用可能なコマンドとワークフローの詳細については、公式の AWS ドキュメントを参照してください。

AWS コマンドラインインターフェース

始めるには

  1. aws-cli tool を使用して、ターミナルで Datadog リソースを登録します。

    aws cloudformation register-type \
        --region "<REGION>" \
        --type RESOURCE \
        --type-name "<DATADOG_RESOURCE_NAME>" \
        --schema-handler-package "<LINK_TO_S3>"
    
  2. ターミナルで以下を実行して、新しく登録されたリソースのバージョンを表示します。

    aws cloudformation list-type-versions \
    --region "<REGION>" \
    --type RESOURCE \
    --type-name "<DATADOG_RESOURCE_NAME>"
    
  3. ターミナルで以下を実行して、この新しく登録されたバージョンを default として設定します。

    aws cloudformation set-type-default-version \
        --region "<REGION>" \
        --type RESOURCE \
        --version-id <VERSION_ID> \
        --type-name "<DATADOG_RESOURCE_NAME>"
    

    次の必須プレースホルダーを使用します。

    • <REGION>: 使用している AWS リージョン。
    • <DATADOG_RESOURCE_NAME>: 登録するリソースの名前。Datadog がサポートするリソースについては、下記の表を参照してください。
    • <LINK_TO_S3>: リソースへの S3 リンク。
      • S3リンク: s3://datadog-cloudformation-resources/<リソースフォルダー>/<リソースフォルダー>-<リソースバージョン>.zip
      • [利用可能なリソース]セクション(#利用可能なリソース)を参照してください。サポート中の S3 リンクの最新例がリンクされています。
    • VERSION_ID: ステップ 2 のコマンドによって返されるリソースの基本バージョン。
  4. ターミナルで以下を実行して、この新しく登録されたリソースコンフィギュレーションを設定します。

    aws cloudformation set-type-configuration \
        --type-name "<DATADOG_RESOURCE_NAME>" \
        --type RESOURCE \
        --configuration '{"DatadogCredentials": {"ApiKey": "{{resolve:secretsmanager:MySecret:SecretString:SecretAPIKey}}", "ApplicationKey": "{{resolve:secretsmanager:MySecret:SecretString:SecretAppKey}}"}}'
    
  5. AWS アカウントで、登録済みの Datadog リソースのいずれかを含む AWS スタックを作成します。

使用可能なコマンドとワークフローの詳細については、公式の AWS ドキュメントを参照してください。

利用可能なリソース

次の Datadog リソースは、AWS アカウント内で登録できます。それぞれの構成方法については、専用のドキュメントを参照してください。

Resource名前説明フォルダーS3 パッケージリンク
ダッシュボードDatadog::Dashboards::DashboardDatadog ダッシュボードの作成、更新および削除datadog-dashboards-dashboardスキーマハンドラーのバージョン
Datadog AWSインテグレーションDatadog::Integrations::AWSDatadog と Amazon Web Service のインテグレーションを管理datadog-integrations-awsスキーマハンドラーのバージョン
モニターDatadog::Monitors::MonitorDatadog モニターの作成、更新および削除datadog-monitors-monitorスキーマハンドラーのバージョン
ダウンタイムDatadog::Monitors::Downtimeモニターのダウンタイムを有効化/無効化datadog-monitors-downtimeスキーマハンドラーのバージョン
ユーザーDatadog::IAM::UserDatadog ユーザーの作成と管理datadog-iam-userスキーマハンドラーのバージョン
SLODatadog::SLOs::SLODatadog SLO の作成および管理datadog-slos-sloスキーマハンドラーのバージョン

トラブルシューティング

ご不明な点は Datadog サポートまでお問い合わせください。