を使用した Amazon Route 53 と Amazon Route 53 Resolver リソースの作成 AWS CloudFormation - Amazon Route 53

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

を使用した Amazon Route 53 と Amazon Route 53 Resolver リソースの作成 AWS CloudFormation

Amazon Route 53 と Amazon Route 53 Resolver は と統合されています。これは AWS CloudFormation、 AWS リソースとインフラストラクチャの作成と管理に費やす時間を短縮できるように、リソースのモデル化とセットアップに役立つサービスです。必要なすべての AWS リソースを記述するテンプレートを作成し、それらのリソースを AWS CloudFormation プロビジョニングして設定します。

を使用すると AWS CloudFormation、テンプレートを再利用して、Route 53 および Route 53 Resolver リソースを一貫して繰り返しセットアップできます。リソースを一度記述し、複数の AWS アカウント およびリージョンで同じリソースを何度もプロビジョニングします。

Route 53、Route 53 Resolver、および AWS CloudFormation テンプレート

Route 53、Route 53 Resolver、および関連サービスのリソースをプロビジョニングして設定するには、「AWS CloudFormation templates」を理解する必要があります。テンプレートは、JSON や YAML でフォーマットされたテキストファイルです。これらのテンプレートは、 AWS CloudFormation スタックでプロビジョニングするリソースを記述します。JSON または YAML に慣れていない場合は、 AWS CloudFormation デザイナー を使用して AWS CloudFormation テンプレートの使用を開始できます。詳細については、 AWS CloudFormation ユーザーガイドAWS CloudFormation 「デザイナーとは」を参照してください。

Route 53 は、 で次のリソースタイプの作成をサポートしています AWS CloudFormation。

  • AWS::Route53::DNSSEC

  • AWS::Route53::HealthCheck

  • AWS::Route53::HostedZone

  • AWS::Route53::KeySigningKey

  • AWS::Route53::RecordSet

  • AWS::Route53::RecordSetGroup

Route 53 リソースの JSON テンプレートと YAML テンプレートの例を含む詳細については、AWS CloudFormation ユーザーガイドの「Amazon Route 53 resource type reference」を参照してください。

Route 53 Resolver は、次のリソースタイプの作成をサポートしています AWS CloudFormation。

  • AWS::Route53Resolver::FirewallDomainList

  • AWS::Route53Resolver::FirewallDomainList

  • AWS::Route53Resolver::FirewallRuleGroupAssociation

  • AWS::Route53Resolver::ResolverDNSSECConfig

  • AWS::Route53Resolver::ResolverEndpoint

  • AWS::Route53Resolver::ResolverQueryLoggingConfig

  • AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation

  • AWS::Route53Resolver::ResolverRule

  • AWS::Route53Resolver::ResolverRuleAssociation

Route 53 Resolver リソースの JSON テンプレートと YAML テンプレートの例を含む詳細については、AWS CloudFormation ユーザーガイドの「Amazon Route 53 Resolver resource type reference」を参照してください。

Route 53 と のベストプラクティス AWS CloudFormation

AWS CloudFormation を使用して Route 53 リソースを管理する場合は、以下のベストプラクティスに従って一般的な問題を回避し、信頼性の高いデプロイを確保します。

結果整合性について

Route 53 は、DNS の変更に結果整合性モデルを使用します。これは、特にロールバックや急激な連続した変更中に、オペレーションに影響を与える AWS CloudFormation 可能性があります。

重要

が DNS レコードの変更をロールバック AWS CloudFormation しようとすると、Route 53 の結果整合性モデルが原因でロールバックが失敗する可能性があります。が最近削除されたが、結果整合性のためにまだ存在するように見えるレコードを再作成 AWS CloudFormation しようとすると、DNS が壊れた状態のままになるInvalidChangeBatchエラーが発生する可能性があります。

結果整合性に関連する問題を最小限に抑えるには:

  • 変更を慎重に計画する - 同じ DNS レコードに迅速に連続して変更を行わない

  • 本番環境以外の環境で最初にテストする - 本番環境に適用する前に、開発環境で常に DNS の変更をテストします。

  • デプロイのモニタリング - DNS 関連のデプロイ中に AWS CloudFormation スタックイベントを注意深く監視します。モニタリングガイダンスについては、「」を参照してくださいAmazon Route 53 のモニタリング

  • ロールバック手順の準備を整える - 自動ロールバックが失敗した場合の手動復旧手順を準備する

DNS レコードの順序付けと論理 IDs

で複数の DNS レコードを作成するときは AWS CloudFormation、レコードの順序付けと論理 ID の割り当てに注意してください。

警告

AWS CloudFormation テンプレート内の配列またはリストで DNS レコードを定義すると、リストの中央に新しいレコードを挿入すると、 が既存のレコード AWS CloudFormation に論理 IDs を再割り当てする可能性があります。これにより、サービスの中断やロールバックの失敗につながる可能性のあるレコードの置き換えがトリガーされます。

DNS レコード管理のベストプラクティス:

  • 明示的な論理 IDs を使用する - 配列インデックスに依存するのではなく、常に明示的で意味のある論理 IDs を DNS レコードに割り当てます。 AWS CloudFormation 論理 IDs「リソース」セクション構造を参照してください。 AWS CloudFormation

  • 新しいレコードを追加する - 既存のリストに新しい DNS レコードを追加するときは、中央に挿入するのではなく、末尾に追加します。

  • 関連レコードのグループ化 - 関連レコードを一緒に管理AWS::Route53::RecordSetGroupするために を使用することを検討してください。詳細については、 AWS CloudFormation ユーザーガイドAWS::Route53::RecordSetGroup」を参照してください。

  • 変更セットの確認 - デプロイ前に必ず変更セットを確認して AWS CloudFormation 、予期しないレコードの置き換えを特定します。詳細については、AWS CloudFormation ユーザーガイドの「変更セットを使用したスタックの更新」を参照してください。

ロールバック失敗の処理

DNS 関連の問題が原因で AWS CloudFormation ロールバックが失敗した場合、手動復旧の実行が必要になる場合があります。

失敗した DNS ロールバックから手動復旧を実行するには
  1. AWS CloudFormation スタックイベントと Route 53 ホストゾーンレコードを確認して、失敗した DNS レコードを特定する

  2. Route 53 コンソールまたは API を使用して、欠落している DNS レコードを手動で作成または更新します。レコードの作成の詳細については、「」を参照してくださいレコードを使用する

  3. DNS が復元されたら、現在の状態に合わせて AWS CloudFormation テンプレートを更新します。

  4. 修正されたテンプレートをデプロイして、実際のリソースと同期 AWS CloudFormation させます。

ロールバックの失敗を防ぐには:

  • トラフィックの多い時間帯に DNS レコードの置き換えをトリガーする可能性のある変更を行わないようにする

  • ヘルスチェックとモニタリングを実装して、DNS の問題をすばやく検出します。ヘルスチェックの詳細については、「」を参照してくださいヘルスチェックの作成と更新

  • 重要な DNS 変更には、ブルー/グリーンデプロイ戦略を使用することを検討してください。デプロイのベストプラクティスの詳細については、「」を参照してくださいAmazon Route 53 のベストプラクティス

  • 手動 DNS 復旧の緊急手順を文書化する

の詳細 AWS CloudFormation

詳細については AWS CloudFormation、次のリソースを参照してください。