Splunk Terraform を使ってクラウドサービスを接続する 🔗
Terraform を使用して Splunk Observability Cloud API を設定ファイルに変換し、ガイド付きセットアップによって手動でシステムを設定したくない場合は、Splunk Terraform プロバイダの splunk-terraform/signalfx
を使用して、Splunk Observability Cloud を AWS、Azure、または GCP に接続します。
Terraformの基盤となるHashiCorp Configuration Languageは自動化をサポートしています。1つの設定ファイルを複数のクラウドサービスプロバイダに適用できますが、このトピックではTerraformレジストリを使用して単一のサービスをSplunk Observability Cloudに接続する方法を説明します。
他の接続オプションと同様に、Terraform は Splunk Observability REST API のエンドポイントを使用します。例については、次を参照してください:
要件 🔗
各クラウドサービスプロバイダーの要件を参照してください:
注釈
CloudWatch Metric Streamsを使用するには、Splunkが提供する CloudFormationテンプレート のいずれかを使用して、AWSアカウントに追加のリソースをデプロイする必要があります。また、IAMポリシー を確認し、必要なすべてのアクションがSplunk Observability Cloudで利用可能であることを確認してください。
必要なトークン 🔗
Terraform を設定するには、これらの Splunk トークンが必要になる可能性があります。:
Splunk Observability Cloud ユーザー API アクセストークン (必須) 🔗
Splunk Observability Cloud にアクセスし、Settings を選択します。
上部のアバターまたは名前を選択すると、Personal information にアクセスできます。ユーザーAPIアクセストークンは右隅にあります。
Splunk Observability Cloud orgトークン 🔗
orgトークン を取得するには、2つのオプションがあります:
Splunk Observability Cloud にアクセスします。Settings で、Access tokens を選択します。
トークンの名前を取得するには、Splunk Observability Cloud API を使用します。
クラウドサービスに接続するためにTerraformを設定する 🔗
注釈
Terraform のドキュメントでは、Splunk Observability Cloud は SignalFx とされています。そのため、インテグレーションは signalfx_aws_integration
、signalfx_azure_integration
、signalfx_gcp_integration
と呼ばれています。
Terraformで接続を設定するには、以下の手順を実行します:
Terraformのレジストリ にアクセスし、検索ボックスで
signalfx
を探してください。splunk-terraform
のsignalFx
プロバイダサイトにドキュメント、利用可能なリソース、互換性のあるデータソースが表示されます。Use provider
のコードをコピーして、設定ファイルの main.tf のrequired_providers
ブロックにSignalFx
を追加します。以下のようになります:terraform { required_providers { splunk = { source = "splunk-terraform/signalfx" version = "6.22.0" } } } provider "signalfx" { auth_token = "${var.signalfx_auth_token}" } # Add resources resource "signalfx_dasboard" "default" { # ... }
必須.プロバイダ設定ファイルの
auth_token
フィールドにユーザー API アクセストークンを貼り付けます。環境変数SFX_AUTH_TOKEN
を使用して設定することもできます。これは Splunk Observability Cloud の API への Terraform リクエストを認証するために必要です。Terraformのインフラストラクチャーオブジェクトである、必要な追加リソースを設定します。
AWS の場合、
signalfx_aws_integration
リソースが必要です。namedToken
フィールドに org トークンを追加すると、インテグレーションごとに異なるトークンを使用している場合、そのトークンが識別するインテグレーションからのトラフィック量を確認できます。
IAM ポリシーと ARN ロールを使って認証する場合は、
signalfx_aws_external_integration
を参照してください。Terraform Registry の SignalFx ページのドキュメントセクションにある構文例をコピーして修正し、それを使って AWS で認証を行います。AWS Security Token認証を使用している場合は、
signalfx_aws_token_integration
リソーストークン/キーの欄にAWSトークンを貼り付けます。Azureの場合は、
signalfx_azure_integration
リソースを使用します。GCPの場合は、
signalfx_gcp_integration
リソースを使用します。
Data Source: signalfx_aws_services、Data Source: signalfx_azure_services、 または Data Source: signalfx_gcp_services で説明されているように、データソースとしてクラウドサービスを追加します。データソースによって、TerraformはTerraformの外で定義された情報、別のTerraform設定によって定義された情報、関数によって変更された情報を利用できるようになります。
その他のリソース 🔗
こちらも参照してください:
Terraform構文の例については、ブログエントリー Manage Your Splunk Infrastructure as Code Using Terraform を参照してください。
Splunk Observability Cloud API による設定方法の例については、Connect to AWS using Splunk Observability Cloud API を参照してください。
AWS Terraformテンプレートの場合は、Terraformテンプレートを使用してSplunk Observability Cloudに接続する を参照してください。
次のステップ 🔗
Splunk Observability Cloudをクラウドサービスプロバイダーと接続した後:
Splunk Observability Cloud を使用して一連のメトリクスを追跡し、AWS データをリアルタイムで分析する方法については、AWS とのインテグレーションからデータを活用する方法を参照してください。
Azure の次のステップ を参照してください。
GCP の次のステップ を参照してください。