- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
このガイドでは Datadog で AWS PrivateLink を構成および使用する方法についてご説明します。
まずはローカルの Datadog Agent がデータを送信可能な VPC の内部エンドポイントを構成します。その後、VPC エンドポイントを Datadog の VPC 内にあるエンドポイントと紐付けます。
Datadog は、us-east-1 で AWS PrivateLink のエンドポイントを公開します。
ただし、他のリージョンから us-east-1
にある Datadog の PrivateLink サービスにトラフィックをルーティングするには、リージョン間の Amazon VPC peering を使用します。リージョン間 VPC ピアリングは、異なる AWS リージョンにまたがる VPC 間の接続を確立することができます。これにより、異なるリージョンの VPC リソース同士がプライベート IP アドレスで通信できるようになります。詳しくは、Amazon VPC ピアリングをご参照ください。
AWS Console をリージョン us-east-1 に接続し、VPC エンドポイントを作成します。
Find service by name を選択します。
Service Name テキストボックスに、AWS PrivateLink を構築したいサービスの名前を入力します。
Datadog | PrivateLink サービス名 | プライベート DNS 名 |
---|---|---|
ログ (Agent の HTTP 取り込み) | com.amazonaws.vpce.us-east-1.vpce-svc-025a56b9187ac1f63 | agent-http-intake.logs.datadoghq.com |
ログ (ユーザーの HTTP 取り込み) | com.amazonaws.vpce.us-east-1.vpce-svc-0e36256cb6172439d | http-intake.logs.datadoghq.com |
API | com.amazonaws.vpce.us-east-1.vpce-svc-064ea718f8d0ead77 | api.datadoghq.com |
メトリクス | com.amazonaws.vpce.us-east-1.vpce-svc-09a8006e245d1e7b8 | metrics.agent.datadoghq.com |
コンテナ | com.amazonaws.vpce.us-east-1.vpce-svc-0ad5fb9e71f85fe99 | orchestrator.datadoghq.com |
プロセス | com.amazonaws.vpce.us-east-1.vpce-svc-0ed1f789ac6b0bde1 | process.datadoghq.com |
Profiling | com.amazonaws.vpce.us-east-1.vpce-svc-022ae36a7b2472029 | intake.profile.datadoghq.com |
トレース | com.amazonaws.vpce.us-east-1.vpce-svc-0355bb1880dfa09c2 | trace.agent.datadoghq.com |
Verify をクリックします。Service name found と表示されない場合は、Datadog サポートにお問い合わせください。
Datadog の VPC サービスエンドポイントと紐付ける VPC およびサブネットを選択します。
Enable DNS name に、Enable for this endpoint がチェックされていることを確認します。
任意のセキュリティグループを選択し、この VPC エンドポイントにトラフィックを送信できる送信元の範囲を指定します。
注: セキュリティグループは、TCP ポート 443
のインバウンドトラフィックを許可する必要があります。
画面下部の Create endpoint をクリックします。作成が完了すると以下が表示されます。
VPC エンドポイントの ID をクリックしてステータスを確認します。
ステータスが Pending から Available に変わるまでお待ちください。約 10 分要する場合があります。Available と表示されれば、AWS PrivateLink を利用することができます。
ログデータを収集する場合は、Agent が HTTPS 経由でログを送信するように構成されていることを確認してください。データがまだない場合は、Agent datadog.yaml
コンフィギュレーションファイルに以下を追加します。
logs_config:
use_http: true
コンテナ Agent をお使いの場合は、代わりに環境変数を設定してください。
DD_LOGS_CONFIG_USE_HTTP=true
この構成は、AWS PrivateLink と Datadog Agent で Datadog にログを送信する際に必要で、Lambda Extension では必要ありません。詳しくは、Agent のログ収集をご参照ください。
Lambda 拡張機能で、環境変数 DD_API_KEY_SECRET_ARN
で指定した ARN を使って AWS Secrets Manager から Datadog API キーを読み込む場合、Secrets Manager 用の VPC エンドポイントを作成する必要があります。
Agent を再起動し、AWS PrivateLink 経由で Datadog にデータを送信します。
Datadog | PrivateLink サービス名 |
---|---|
メトリクス | com.amazonaws.vpce.us-east-1.vpce-svc-09a8006e245d1e7b8 |
ログ (Agent の HTTP 取り込み) | com.amazonaws.vpce.us-east-1.vpce-svc-025a56b9187ac1f63 |
ログ (ユーザーの HTTP 取り込み) | com.amazonaws.vpce.us-east-1.vpce-svc-0e36256cb6172439d |
API | com.amazonaws.vpce.us-east-1.vpce-svc-064ea718f8d0ead77 |
プロセス | com.amazonaws.vpce.us-east-1.vpce-svc-0ed1f789ac6b0bde1 |
Profiling | com.amazonaws.vpce.us-east-1.vpce-svc-022ae36a7b2472029 |
トレース | com.amazonaws.vpce.us-east-1.vpce-svc-0355bb1880dfa09c2 |
コンテナ | com.amazonaws.vpce.us-east-1.vpce-svc-0ad5fb9e71f85fe99 |
Verify をクリックします。Service name found と表示されない場合は、Datadog サポートにお問い合わせください。
次に、Datadog VPC サービスエンドポイントでピアリングする VPC とサブネットを選択します。VPC ピアリングでは DNS を手動で構成する必要があるため、Enable DNS name は選択しないでください。
任意のセキュリティグループを選択し、この VPC エンドポイントにトラフィックを送信できる送信元の範囲を指定します。
注: セキュリティグループは、TCP ポート 443
のインバウンドトラフィックを許可する必要があります。
画面下部の Create endpoint をクリックします。作成が完了すると以下が表示されます。
us-east-1
の VPC にアタッチします。以下のリストを使用して、サービスおよび DNS 名を Datadog の各部にマッピングします。
Datadog | PrivateLink サービス名 | プライベート DNS 名 |
---|---|---|
メトリクス | com.amazonaws.vpce.us-east-1.vpce-svc-09a8006e245d1e7b8 | metrics.agent.datadoghq.com |
ログ (Agent の HTTP 取り込み) | com.amazonaws.vpce.us-east-1.vpce-svc-025a56b9187ac1f63 | agent-http-intake.logs.datadoghq.com |
ログ (ユーザーの HTTP 取り込み) | com.amazonaws.vpce.us-east-1.vpce-svc-0e36256cb6172439d | http-intake.logs.datadoghq.com |
API | com.amazonaws.vpce.us-east-1.vpce-svc-064ea718f8d0ead77 | api.datadoghq.com |
プロセス | com.amazonaws.vpce.us-east-1.vpce-svc-0ed1f789ac6b0bde1 | process.datadoghq.com |
Profiling | com.amazonaws.vpce.us-east-1.vpce-svc-022ae36a7b2472029 | intake.profile.datadoghq.com |
トレース | com.amazonaws.vpce.us-east-1.vpce-svc-0355bb1880dfa09c2 | trace.agent.datadoghq.com |
コンテナ | com.amazonaws.vpce.us-east-1.vpce-svc-0ad5fb9e71f85fe99 | orchestrator.datadoghq.com |
また、AWS API の DescribeVpcEndpointServices
を問い合わせるか、CLI コマンド aws ec2 describe-vpc-endpoint-services --service-names <service-name>
を使用してもこの情報を見つけることができます。
例えば、Datadog のメトリクスエンドポイントの場合:
aws ec2 describe-vpc-endpoint-services --service-names com.amazonaws.vpce.us-east-1.vpce-svc-09a8006e245d1e7b8 | jq '.ServiceDetails[0].PrivateDnsName'
これは、Agent トラフィックの発信元となる VPC と関連付けるために必要な、プライベートホストゾーン名である metrics.agent.datadoghq.com
を返します。このレコードを上書きすると、メトリクスに関連するインテークホスト名がすべて取得されます。
それぞれの新しい Route53 プライベートホストゾーン内に、同じ名前で A レコードを作成します。Alias オプションをトグルし、Route traffic to で、Alias to VPC endpoint、us-east-1 を選び、DNS 名と関連付けられた VPC エンドポイントの DNS 名を入力します。
注:
<version>-app.agent.datadoghq.com
) にテレメトリーを送信します。エンドポイントでは CNAME エイリアスを通じた名前解決が行われ、metrics.agent.datadoghq.com
にルーティングされます。したがって、 metrics.agent.datadoghq.com
のプライベートホストゾーンのセットアップのみが必要となります。Datadog PrivateLink のエンドポイントを含む us-east-1
の VPC と、Datadog Agent を実行する地域の VPC の間で、VPC ピアリングとルーティングを構成します。
VPC が異なる AWS アカウントにある場合、続行する前に Datadog Agent を含む VPC が Route53 プライベートホストゾーンとの関連付けを許可されている必要があります。Datadog Agent が実行する VPC のリージョンと VPC ID を使用して、各 Route53 プライベートホストゾーンに対して VPC 関連付け承認を作成します。このオプションは、AWS Console では利用できません。AWS CLI、SDK、または API を使用して構成する必要があります。
Route53 のホストゾーンを編集して、non-us-east-1 の VPC を追加します。
プライベートホストゾーン (PHZ) が接続されている VPC では、特定の設定、特に enableDnsHostnames
と enableDnsSupport
をオンにする必要があります。プライベートホストゾーンを使用する際の注意点を参照してください。
Agent を再起動し、AWS PrivateLink 経由で Datadog にデータを送信します。
DNS 名は、us-east-1
の VPC の CIDR ブロックに含まれる IP アドレスに解決し、port 443
への接続に成功するはずです。
DNS がパブリック IP アドレスに解決している場合、Route53 ゾーンが代替地域の VPC に関連付けされていないか、A レコードが存在しないことが原因です。
DNS は正しく解決しているのに、port 443
への接続に失敗する場合、VPC のピアリングまたはルーティングが誤って構成されているか、ポート 443 が us-east-1
の VPC の CIDR ブロックへのアウトバウンドを許可されていない可能性があります。
プライベートホストゾーン (PHZ) が接続されている VPC は、いくつかの設定をオンにする必要があります。具体的には、PHZ が関連付けられている VPC で、enableDnsHostnames
と enableDnsSupport
がオンになっている必要があります。Amazon VPC 設定を参照してください。
ログデータを収集する場合は、Agent が HTTPS 経由でログを送信するように構成されていることを確認してください。データがまだない場合は、Agent datadog.yaml
コンフィギュレーションファイルに以下を追加します。
logs_config:
force_use_http: true
コンテナ Agent をお使いの場合は、代わりに環境変数を設定してください。
DD_LOGS_CONFIG_FORCE_USE_HTTP=true
この構成は、AWS PrivateLink と Datadog Agent で Datadog にログを送信する際に必要で、Lambda Extension では必要ありません。詳しくは、Agent のログ収集をご参照ください。
Lambda 拡張機能で、環境変数 DD_API_KEY_SECRET_ARN
で指定した ARN を使って AWS Secrets Manager から Datadog API キーを読み込む場合、Secrets Manager 用の VPC エンドポイントを作成する必要があります。
お役に立つドキュメント、リンクや記事: