Datadog Disaster Recovery This product is not supported for your selected
Datadog site . (
).
Limited Availability Datadog Disaster Recovery は現在、限定的に提供されています。お客様の Datadog アカウントチームに連絡して、組織での利用可否を確認してください。
Datadog Disaster Recovery (DDR) は、クラウドプロバイダーのリージョンまたはそのリージョン内の Datadog サービスが中断された場合でも、オブザーバビリティを維持します。DDR を使用すると、別のリージョンにセカンダリ Datadog オーガニゼーションを事前に構成し、そこにリソースをレプリケートできます。フェイルオーバーを実行すると、セカンダリサイトにはチームが必要とするダッシュボード、モニター、ユーザーがすでに用意されています。
DDR はアクティブ/パッシブモデルを使用します。セカンダリサイトは同期された状態を維持しますが、フェイルオーバーを実行するまではパッシブ状態です。フェイルオーバーは自動的には行われません。切り替えのタイミングはユーザーが選択します。
また、DDR を使用すると、定期的にディザスタリカバリ訓練を実施して、障害からの復旧能力をテストし、ビジネスおよび規制コンプライアンスのニーズを満たすことができます。
前提条件 必要な Datadog Agent の最小バージョンは、使用する製品によって異なります。
サポートされているテレメトリ 対応製品 必要な Agent バージョン ログ Logs v7.54+ メトリクス Infrastructure Monitoring v7.54+ トレース APM v7.68+
Datadog は、他の製品で DDR に対応するため、お客様からのリクエストを引き続き評価しています。上記でカバーされていない特定のニーズや今後の機能については、
Disaster Recovery チーム にお問い合わせください。
セットアップ Datadog Disaster Recovery を有効にするには、以下の手順に従います。手順についてご不明な点がありましたら、カスタマーサクセスマネージャー または Datadog サポート にお問い合わせください。
1. DDR オーガニゼーションを作成してライマリオーガニゼーションにリンクする 必要に応じて Datadog が代わりにセットアップを行うことも可能です。
DDR オーガニゼーションの作成 [Get Started with Datadog] (Datadog を始める) に移動します。場合によっては、このページにアクセスするには、現在のセッションからログアウトするか、シークレットモードを使用する必要があります。プライマリとは異なる Datadog サイトを選択します (例: US1 を使用している場合は EU または US5 を選択します)。オプションについては、Datadog サイトのリスト を参照してください。すべての Datadog サイトは地理的に分離されています。 プロンプトに従ってアカウントを作成します。 新しいオーガニゼーション名を カスタマーサクセスマネージャー にメールでご連絡ください。その後、カスタマーサクセスマネージャーがこの新しいオーガニゼーションを DDR オーガニゼーションとして設定します。
セキュリティ上の理由から、Datadog がお客様に代わってオーガニゼーションをリンクすることはできません。
Datadog が DDR オーガニゼーションを指定した後、DDR オーガニゼーションをプライマリオーガニゼーションにリンクします。
List your managed organizations エンドポイントを使用して、プライマリオーガニゼーションと DDR オーガニゼーションのパブリック ID を取得します。
プライマリオーガニゼーションのアプリケーションキーに disaster_recovery_status_write スコープを追加します。
プレースホルダーを適切な値に置き換えて、以下のコマンドを実行します。
export PRIMARY_DD_API_KEY = <PRIMARY_ORG_API_KEY>
export PRIMARY_DD_APP_KEY = <PRIMARY_ORG_APP_KEY>
export PRIMARY_DD_API_URL = <PRIMARY_ORG_API_SITE>
export DDR_ORG_ID = <DDR_ORG_PUBLIC_ID>
export PRIMARY_ORG_ID = <PRIMARY_ORG_PUBLIC_ID>
export USER_EMAIL = <USER_EMAIL>
export CONNECTION = '{"data":{"id":"' ${ PRIMARY_ORG_ID } '","type":"hamr_org_connections","attributes":{"TargetOrgUuid":"' ${ DDR_ORG_ID } '","HamrStatus":1,"ModifiedBy":"' ${ USER_EMAIL } '", "IsPrimary":true}}}'
curl -v -H "Content-Type: application/json" -H \
"dd-api-key: ${ PRIMARY_DD_API_KEY } " -H \
"dd-application-key: ${ PRIMARY_DD_APP_KEY } " --data " ${ CONNECTION } " --request POST ${ PRIMARY_DD_API_URL } /api/v2/hamr
オーガニゼーションをリンクすると、フェイルオーバーオーガニゼーションにこのバナーが表示されます。
2. アクセス、インテグレーション、同期、およびエージェントをセットアップする 障害発生時にすべてのユーザーが DDR オーガニゼーションにログインできるようにするため、Datadog はシングルサインオン (SSO) を使用することを推奨しています 。
DDR オーガニゼーションの Organization Settings に移動して、ユーザー向けに SAML または Google Login を構成します。
マネージド同期により、プライマリオーガニゼーションから DDR オーガニゼーションにユーザーアカウントが複製されます。Datadog では SAML を使用したジャストインタイムプロビジョニング を構成することを推奨しています。これにより、ユーザーはフェイルオーバー中にパスワードをリセットすることなく DDR オーガニゼーションにアクセスできます。
セットアップ手順については、AWS 、Azure 、および Google Cloud のインテグレーションを参照してください。
プライマリオーガニゼーションと DDR オーガニゼーションの両方でクラウドインテグレーションを構成する必要がありますが、クラウドインテグレーションは一度にいずれか 1 つのオーガニゼーションでのみ実行されます。デフォルトではプライマリオーガニゼーションで実行され、フェイルオーバー中は DDR オーガニゼーションで実行されます。
詳細については、クラウドインテグレーションのフェイルオーバー のセクションを参照してください。
Datadog はオープンソースの datadog-sync-cli ツールを使用して、お客様に代わってリソース同期を管理します。このツールをお客様自身で実行または運用する必要はありません。
マネージド同期により、定期的なスケジュールでプライマリオーガニゼーションから DDR オーガニゼーションにリソースが複製されます。複製されるリソースには、ダッシュボード、モニター、ユーザー、ノートブック、および 34 種類以上のその他のリソース が含まれます。複製はこのスケジュールで実行されます。これにより、障害発生までに DDR オーガニゼーションが最新の状態に保たれます。
**ユーザーは各 Datadog サイトにスコープ設定されます。**マネージド同期により、ユーザーアカウントが DDR オーガニゼーションに複製されます。ただし、ユーザーが DDR オーガニゼーションに初めてログインするときに、パスワードのリセットが必要になる場合があります。Datadog では、SAML を使用したジャストインタイムプロビジョニング を構成することを推奨しています。これにより、手動でのパスワードリセットなしでユーザーが DDR オーガニゼーションにアクセスできるようになります。
**マネージド同期は、Datadog の サービスアカウント を使用します。**プライマリオーガニゼーションからリソースを読み取って複製するために、オンボーディング中に DDR オーガニゼーションでサービスアカウントを作成します。マネージド同期によって同期されたリソースは、可能な場合には元のオーナーにマッピングされたユーザーによってプロビジョニングされます。
Remote Configuration (RC) では、インフラストラクチャーにデプロイされた Datadog Agent の構成とその動作の変更をリモートで行うことができます。
Remote Configuration は新しいオーガニゼーションに対してデフォルトで有効になっています。作成する新しい API キーに対し、Agent で使用するために Remote Configuration が有効になります。。詳細については、Remote Configuration のドキュメント を参照してください。
Datadog では、より優れたフェイルオーバー制御のために Remote Configuration を使用することを強く推奨しています。Remote Configuration の代替手段として、Datadog Agent を手動で構成するか、Puppet、Ansible、Chef などの構成管理ツールを使用できます。
デュアルシッピングを有効にするには、大規模な管理のために Fleet Automation を使用することが推奨されます。または、datadog.yaml ファイルを編集して手動で構成することもできます。
パフォーマンスと目標復旧時間 (RTO) を測定するフェイルオーバーテストのための専用時間枠をスケジュールするには、Datadog カスタマーサクセスマネージャーまでご連絡ください。
DDR オーガニゼーションの Fleet Automation > Configure Agents に移動してフェイルオーバーポリシーを作成するか、既存のポリシーを再利用し、Agent のフリートに適用します。ポリシーが有効になるとすぐに、Agent はプライマリと DDR (フェイルオーバー) の両方の監視可能性サイトへのテレメトリのデュアルシッピングを開始します。
フェイルオーバーポリシーを作成するには、Create Failover Policy をクリックします。
次に、プロンプトに従ってフェイルオーバーする必要があるホストとテレメトリ (メトリクス、ログ、トレース) のスコープを設定します。
Cloud Integrations は、プライマリ Datadog サイトまたは DDR Datadog サイトのいずれか 1 つでのみ実行できますが、両方で同時に実行することはできません。そのためフェイルオーバーすると、プライマリサイトで Cloud Integrations データが停止します。インテグレーションのフェイルオーバー中には、インテグレーションは DDR データセンターでのみ実行されます。 フェイルオーバーでなくなった場合は、フェイルオーバーポリシーを無効にして、インテグレーションデータ収集をプライマリオーガニゼーションに戻します。
フェイルオーバー中またはフェイルオーバー演習中は、以下の例に示すように Datadog Agent の datadog.yaml 構成ファイルを更新し、Agent を再起動します。
enabled: trueでは、Agent が metadata Agent とインフラストラクチャーホストに関するデータ。例: host name、host tags、Agent version。 を DDR Datadog サイトに送信できるようになり、DDR オーガニゼーションで Agent とインフラストラクチャーホストを確認できます。これにより、フェイルオーバーオーガニゼーションで Agent とインフラストラクチャーホストを確認できるようになります。
failover_metrics、failover_logs、およびfailover_apm はデフォルトで false です。これらを true に設定すると、Agent が DDR オーガニゼーションへの telemetry Datadog プラットフォームに送信されるデータ。例:logs、metrics、traces。 の送信を開始します。
multi_region_failover:
enabled: true
failover_metrics: false
failover_logs: false
failover_apm: false
site: <DDR_SITE> # For example, "site: us5.datadoghq.com" for a US5 site
api_key: <DDR_SITE_API_KEY>
DNS ベースのフェイルオーバーは、Agent ベースのフェイルオーバーを補完するアプローチです。Agent にセカンダリサイトのエンドポイントを構成する代わりに、すべてのデータソースが Datadog 提供の単一カスタムインテイク URL にテレメトリを送信するように構成します。フェイルオーバーイベントの発生中は、Datadog がその URL の DNS レコードを更新し、トラフィックをプライマリサイトから DDR サイトへリダイレクトします。
DNS フェイルオーバーは、完全に実行されるか、または一切実行されないかのいずれかです。カスタムエンドポイントを使用しているすべてのテレメトリソースが同時に切り替わります。
カスタム DNS エンドポイントの受信 DNS ベースのフェイルオーバーを使用することを選択した場合、Datadog はオーガニゼーションのカスタムインテイク URL (例: <your-org>.intake.datadoghq.com) をプロビジョニングします。すべてのデータソース (Agent、ログシッパー、カスタムインスツルメンテーションなど) が、デフォルトの Datadog インテイク URL ではなく、このエンドポイントにテレメトリを送信するように構成します。これは一度限りの構成変更です。
DNS フェイルオーバーのトリガー DNS フェイルオーバーを開始するには、カスタマーサクセスマネージャー または Datadog サポート にお問い合わせください。Datadog はトラフィックをプライマリサイトから DDR サイトにリダイレクトするため、DNS レコードを更新します。目標復旧時間 (RTO) は、フェイルオーバー開始時点から 2 時間です。
お客様が制御できる DDR オーガニゼーションから直接 DNS フェイルオーバーをトリガーする手法は、プレビュー版です。詳細については、
カスタマーサクセスマネージャー にお問い合わせください。
3. さまざまな環境でフェイルオーバーテストを実行する Agent のフェイルオーバーをトリガーするには、DDR オーガニゼーションの Fleet Automation にあるポリシーの 1 つをクリックし、Enable をクリックします。フェイルオーバーが発生すると、各ホストのステータスが更新されます。
ご使用の環境に該当する手順を使用して、DDR フェイルオーバーを有効にしてテストします。
非コンテナ化環境へ Agent をデプロイするには、以下の Agent CLI コマンドを使用してください。
agent config set multi_region_failover.failover_metrics true
agent config set multi_region_failover.failover_logs true
agent config set multi_region_failover.failover_apm true
Kubernetes のようなコンテナ化環境で Agent を実行している場合でも Agent コマンドラインツールを使用できますが、Agent を実行しているコンテナで呼び出す必要があります。必要に応じて、以下のいずれかを使用して変更を行うことができます。
kubectl の使用 kubectl を使用して、公式 Helm チャートまたは Datadog Operator のいずれかでデプロイされた Datadog Agent Pod のメトリクスとログをフェイルオーバーする例を以下に示します。<POD_NAME> は、Agent Pod の名前に置き換える必要があります。
kubectl exec <POD_NAME> -c agent -- agent config set multi_region_failover.failover_metrics true
kubectl exec <POD_NAME> -c agent -- agent config set multi_region_failover.failover_logs true
kubectl exec <POD_NAME> -c agent -- agent config set multi_region_failover.failover_apm true
Agent 構成ファイル {#using-the-agent-configuration-file} の使用 あるいは、メインの Agent 構成ファイル (datadog.yaml) で以下の設定を指定し、Datadog Agent を再起動して変更を適用することもできます。
multi_region_failover:
enabled: true
failover_metrics: true
failover_logs: true
failover_apm: true
site: NEW_ORG_SITE
api_key: NEW_SITE_API_KEY
Helm チャートまたは Datadog Operator の使用 カスタム構成を指定する必要がある場合は、公式 Helm チャートまたは Datadog Operator のいずれかで同様の変更を行うことができます。それ以外の場合は、設定を環境変数として渡すことができます。
DD_MULTI_REGION_FAILOVER_ENABLED = true
DD_MULTI_REGION_FAILOVER_FAILOVER_METRICS = true
DD_MULTI_REGION_FAILOVER_FAILOVER_LOGS = true
DD_MULTI_REGION_FAILOVER_FAILOVER_APM = true
DD_MULTI_REGION_FAILOVER_SITE = ADD_NEW_ORG_SITE
DD_MULTI_REGION_FAILOVER_API_KEY = ADD_NEW_SITE_API_KEY
DDR オーガニゼーションのランディングページから、クラウドインテグレーションのフェイルオーバーをテストできます。
フェイルオーバーのランディングページで、DDR オーガニゼーションのステータスを確認するか、[Fail over your integrations ] (インテグレーションをフェイルオーバー) をクリックしてクラウドインテグレーションのフェイルオーバーをテストします。
フェイルオーバーでなくなった場合は、DDR オーガニゼーションでフェイルオーバーポリシーを無効にして 、インテグレーションデータ収集をプライマリオーガニゼーションに戻します。
テスト中、インテグレーションテレメトリは両方のオーガニゼーションに分散されますフェイルオーバーテストをキャンセルすると、インテグレーションは再びプライマリデータセンターで実行されます。
参考資料