加重エイリアスレコードの値 - Amazon Route 53

加重エイリアスレコードの値

加重エイリアスレコードを作成するときは、以下の値を指定します。詳細については、「エイリアスレコードと非エイリアスレコードの選択」を参照してください

ルーティングポリシー

[加重] を選択します。

レコード名

トラフィックをルーティングするドメインまたはサブドメインの名前を入力します。デフォルト値はホストゾーンの名前です。

注記

ホストゾーンと同じ名前のレコードを作成する場合は、[名前] フィールドに値 (@ 記号など) を入力しないでください。

加重レコードのグループで、すべてのレコードに同じ名前を入力します。

CNAME レコード

[レコードタイプ] の値が [CNAME] のレコードを作成する場合、レコードの名前をホストゾーンの名前と同じにすることはできません。

CloudFront ディストリビューションと Amazon S3 バケットへのエイリアス

指定する値は、トラフィックをルーティングする AWS リソースによって一部異なります。

  • CloudFront ディストリビューション – ディストリビューションには、レコードの名前と一致する代替ドメイン名が含まれる必要があります。例えば、レコード名が acme.example.com の場合、CloudFront ディストリビューションには代替ドメイン名の 1 つとして acme.example.com が含まれる必要があります。詳細については、Amazon CloudFront デベロッパーガイドの「代替ドメイン名 (CNAME) を使用する」を参照してください。

  • Amazon S3 バケット – レコード名は、Amazon S3 バケット名と一致する必要があります。例えば、 バケット名が [acme.example.com] である場合、このレコード名も [acme.example.com] である必要があります。

    また、ウェブサイトホスティング用にバケットを設定する必要があります。詳細については、Amazon Simple Storage Service デベロッパーガイドの「ウェブサイトホスティング用にバケットを設定する」を参照してください。

特殊文字

a~z、0~9、- (ハイフン) 以外の文字を指定する方法、および国際化されたドメイン名を指定する方法については、「DNS ドメイン名の形式」を参照してください。

ワイルドカード文字

名前にはアスタリスク (*) を使用できます。DNSは、名前の中の位置に応じて、「*」をワイルドカードまたはアスタリスク (ASCII 42) として処理します。詳細については、「ホストゾーンおよびレコード名のアスタリスク (*) を使用する」を参照してください

レコードタイプ

DNS レコードタイプ。詳細については、「」を参照してくださいサポートされる DNS レコードタイプ

トラフィックをルーティングする AWS リソースに基づいて、適切な値を選択します。

API Gateway のカスタムリージョン API またはエッジ最適化 API

[A — IPv4 アドレス] を選択します。

Amazon VPC インターフェイスのエンドポイント

[A — IPv4 アドレス] を選択します。

CloudFront 配信

[A — IPv4 アドレス] を選択します。

ディストリビューションに対して IPv6 が有効になっている場合は、2 つのレコードを作成します。1 つは [レコードタイプ] として [A — IPv4 アドレス]の値を持つもの、もう 1 つは [AAAA IPv6 — アドレス] の値を持つものとします。

ローカル化されたサブドメインがある Elastic Beanstalk 環境

[A — IPv4 アドレス] を選択します。

ELB ロードバランサー

[A — IPv4 アドレス] または [AAAA — IPv6 アドレス] を選択します。

Amazon S3 バケット

[A — IPv4 アドレス] を選択します。

このホストゾーン内の別のレコード

エイリアスを作成するレコードのタイプを選択します。[NS] および [SOA] 以外のすべてのタイプがサポートされます。

注記

ホストゾーン (zone apex といいます) と同じ名前のエイリアスレコードを作成する場合、[レコードタイプ] の値が [CNAME] のレコードにトラフィックをルーティングすることはできません。これは、トラフィックがルーティングされているレコードとエイリアスレコードのタイプが同じでなければならず、zone apex の CNAME レコードの作成はエイリアスレコードであってもサポートされていないためです。

加重レコードのグループ内のすべてのレコードに同じ値を選択します。

値/トラフィックのルーティング先

リストから選択する値、またはフィールドに入力する値は、トラフィックをルーティングする AWS リソースによって異なります。

重要

同じ AWS アカウントを使用してホストゾーンとトラフィックのルーティング先のリソースを作成した場合、およびリソースが [エンドポイント] リストに表示されない場合は、次を確認してください。

  • [Type (タイプ)] でサポートされている値を選択したことを確認します。サポートされている値は、トラフィックのルーティング先のリソースに固有です。例えば、S3 バケットにトラフィックをルーティングするには、[タイプ] として [A — IPv4 アドレス] を選択する必要があります。

  • アカウントに、該当するリソースを一覧表示するために必要な IAM アクセス許可があることを確認します。例えば、CloudFront ディストリビューションを [エンドポイント] リストに表示するためには、アカウントが次のアクションを実行するアクセス許可を持っている必要があります: cloudfront:ListDistributions

    IAM ポリシーの例については、「Amazon Route 53 コンソールを使用するために必要なアクセス許可」を参照してください。

ホストゾーンとリソースを作成するために異なる AWS アカウントを使用した場合、[エンドポイント] リストにはリソースが表示されません。[エンドポイント] に入力する値を決定するには、リソースタイプに関する次のドキュメントを参照してください。

API Gateway のカスタムリージョン API とエッジ最適化 API

API Gateway のカスタムリージョン API とエッジ最適化 API で、次のいずれかを行います。

  • 同じアカウントを使用して、Route 53 ホストゾーンと API を作成した場合 – [エンドポイント] を選択し、リストから API を選択します。API が多数ある場合は、API エンドポイントの最初の数文字を入力してリストをフィルタリングすることができます。

    注記

    このレコードの名前は、API のカスタムドメイン名 (例: api.example.com) と一致している必要があります。

  • 別のアカウントを使用して、Route 53 ホストゾーンと API を作成した場合 – API の API エンドポイント (例: api.example.com) を入力します。

    1 つの AWS アカウントを使用して現在のホストゾーンを作成し、別のアカウントを使用して API を作成した場合、API は [エンドポイント] リストに [API Gateway API] として表示されません。

    1 つのアカウントを使用して現在のホストゾーンを作成し、すべての API を作成するのに 1 つ以上の別のアカウントを使用した場合、[エンドポイント] リストの [API Gateway API] に「No targets available」と表示されます。

CloudFront ディストリビューション

CloudFront ディストリビューションの場合は、次のいずれかの操作を実行します。

  • Route 53 ホストゾーンと CloudFront ディストリビューションを作成する際に同じアカウントを使用している場合 – [エンドポイント] を選択し、リストからディストリビューションを選択します。ディストリビューションが多数ある場合は、ディストリビューションのドメイン名の最初の数文字を入力することでリストをフィルタ処理できます。

    ディストリビューションがリストに表示されていない場合は、次の点を確認してください。

    • このレコードの名前は、ディストリビューションの代替ドメイン名に一致する必要があります。

    • ディストリビューションに代替ドメイン名を追加した直後であれば、変更がすべての CloudFront エッジロケーションに伝達されるまでに 15 分程度かかる場合があります。変更が伝達されるまで、Route 53 は新しい代替ドメイン名を認識できません。

  • Route 53 ホストゾーンとディストリビューションを作成する際に異なるアカウントを使用している場合 – ディストリビューションの CloudFront ドメイン名を入力します (例えば、d111111abcdef8.cloudfront.net)。

    1 つの AWS アカウントを使用して現在のホストゾーンを作成し、別のアカウントを使用してディストリビューションを作成した場合、ディストリビューションは [エンドポイント] リストに表示されません。

    1 つのアカウントを使用して現在のホストゾーンを作成し、1 つ以上の別のアカウントを使用してすべてのディストリビューションを作成した場合 、[エンドポイント] リストの [CloudFront ディストリビューション] に「No targets available」と表示されます。

重要

すべてのエッジロケーションに伝達されていない CloudFront ディストリビューションにクエリをルーティングしないでください。その場合、ユーザーは該当するコンテンツにアクセスできません。

CloudFront ディストリビューションには、レコードの名前と一致する代替ドメイン名が含まれる必要があります。例えば、レコード名が acme.example.com の場合、CloudFront ディストリビューションには代替ドメイン名の 1 つとして acme.example.com が含まれる必要があります。詳細については、Amazon CloudFront デベロッパーガイドの「代替ドメイン名 (CNAME) を使用する」を参照してください。

ディストリビューションに対して IPv6 が有効になっている場合は、2 つのレコードを作成します。1 つは [タイプ] として [A — IPv4 アドレス] の値を持つもの、もう 1つは [AAAA — IPv6 アドレス] の値を持つものとします。

ローカル化されたサブドメインがある Elastic Beanstalk 環境

Elastic Beanstalk 環境のドメイン名に環境をデプロイしたリージョンが含まれている場合、トラフィックを環境にルーティングするエイリアスレコードを作成できます。例えば、ドメイン名 my-environment.us-west-2.elasticbeanstalk.com はローカル化されたドメイン名です。

重要

2016 年の初め以前に作成された環境の場合、ドメイン名にはリージョンは含まれていません。これらの環境にトラフィックをルーティングするには、エイリアスレコードの代わりに CNAME レコードを作成する必要があります。ルートドメイン名に対して CNAME レコードを作成することはできないことに注意してください。 例えば、ドメイン名が example.com の場合、acme.example.com のトラフィックを Elastic Beanstalk 環境にルーティングするレコードは作成できますが、example.com のトラフィックを Elastic Beanstalk 環境にルーティングするレコードは作成できません。

ローカル化されたサブドメインがある Elastic Beanstalk 環境の場合は、次のいずれかを実行します。

  • Route 53 ホストゾーンと Elastic Beanstalk 環境を作成する際に同じアカウントを使用している場合 – [エンドポイント] を選択し、リストから環境を選択します。環境が多数ある場合は、環境の CNAME 属性の最初の数文字を入力することでリストをフィルタ処理できます。

  • 別のアカウントを使用して、Route 53 ホストゾーンと Elastic Beanstalk 環境を作成した場合— Elastic Beanstalk 環境の CNAME 属性を入力します。

ELB ロードバランサー

ELB ロードバランサーの場合は、次のいずれかの操作を実行します。

  • Route 53 ホストゾーンとロードバランサーを作成する際に同じアカウントを使用している場合 – [エンドポイント] を選択し、リストからロードバランサーを選択します。ロードバランサーが多数ある場合は、DNS 名の最初の数文字を入力することでリストをフィルタ処理できます。

  • Route 53 ホストゾーンとロードバランサーを作成する際に異なるアカウントを使用している場合 – 「ELB ロードバランサーの DNS 名の取得」の手順で取得した値を入力します。

    1 つの AWS アカウントを使用して現在のホストゾーンを作成し、別のアカウントを使用してロードバランサーを作成した場合、ロードバランサーは [エンドポイント] リストに表示されません。

    1 つのアカウントを使用して現在のホストゾーンを作成し、すべてのロードバランサーを作成するのに 1 つ以上の別のアカウントを使用した場合、[エンドポイント] リストの [Elastic Load Balancers] に「No targets available」と表示されます。

どちらの場合も、コンソールで DNS 名に [dualstack.] が付加されます。ウェブブラウザなどのクライアントが、ドメイン名 (example.com) またはサブドメイン名 (www.example.com) の IP アドレスをリクエストする場合、クライアントは IPv4 アドレス (A レコード)、IPv6 アドレス (AAAA レコード)、または IPv4 アドレスと IPv6 アドレスの両方を (別のリクエストで) リクエストできます。[dualstack.] の指定により、Route 53 は、クライアントがリクエストした IP アドレス形式に基づいて、ロードバランサーに対する適切な IP アドレスで応答することができます。

AWS Global Accelerator アクセラレーター

AWS Global Accelerator アクセラレーターで、アクセラレーターの DNS 名を入力します。現在の AWS アカウントまたは別の AWS アカウントを使用して作成したアクセラレーターの DNS 名を入力できます。

Amazon S3 バケット

ウェブサイトエンドポイントとして設定された Amazon S3 バケットの場合、次のいずれかを実行します。

  • Route 53 ホストゾーンと Amazon S3 バケットを作成する際に同じアカウントを使用している場合 – [エンドポイント] を選択し、リストからバケットを選択します。バケットが多数ある場合は、DNS 名の最初の数文字を入力することでリストをフィルタ処理できます。

    [エンドポイント] の値は、バケットの Amazon S3 ウェブサイトエンドポイントに変わります。

  • 別のアカウントを使用して、Route 53 ホストゾーンと Amazon S3 bucket を作成した場合 – S3 バケットを作成したリージョンの名前を入力します。「AWS 全般的なリファレンス」の「Amazon S3 ウェブサイトエンドポイント」のテーブルの [ウェブサイトエンドポイント] 列の値を使用します。

    現在のアカウント以外の AWS アカウントを使用して Amazon S3 バケットを作成した場合、バケットは [エンドポイント] リストに表示されません。

ウェブサイトホスティング用にバケットを設定する必要があります。詳細については、Amazon Simple Storage Service デベロッパーガイドの「ウェブサイトホスティング用にバケットを設定する」を参照してください。

レコード名は、Amazon S3 バケット名と一致する必要があります。例えば、Amazon S3 バケット名が [acme.example.com] である場合、このレコード名も [acme.example.com] である必要があります。

加重エイリアス、レイテンシーエイリアス、フェイルオーバーエイリアス、または位置情報エイリアスのレコードのグループの中には、Amazon S3 バケットにクエリをルーティングするレコードを 1 つだけ作成できます。これは、レコード名はバケット名と一致する必要があり、バケット名はグローバルに一意である必要があるためです。

Amazon VPC インターフェイスのエンドポイント

Amazon VPC インターフェイスエンドポイントで、以下のいずれかを行います。

  • Route 53 ホストゾーンとインターフェイスエンドポイントを作成する際に同じアカウントを使用している場合 – [エンドポイント] を選択し、リストからインターフェイスエンドポイントを選択します。インターフェイスエンドポイントが多数ある場合は、DNS ホスト名の最初の数文字を入力することでリストをフィルタリングすることができます。

  • 別のアカウントを使用して Route 53 ホストゾーンとインターフェイスエンドポイントを作成した場合 – インターフェイスエンドポイントの DNS ホスト名 (例: vpce-123456789abcdef01-example-us-east-1a.elasticloadbalancing.us-east-1.vpce.amazonaws.com) を入力します。

    1 つの AWS アカウントを使用して現在のホストゾーンを作成し、別のアカウントを使用してインターフェイスエンドポイントを作成した場合、インターフェイスエンドポイントは [エンドポイント] リストに [VPC エンドポイント] として表示されません。

    1 つのアカウントを使用して現在のホストゾーンを作成し、すべてのインターフェイスエンドポイントを作成するのに 1 つ以上の別のアカウントを使用した場合、[エンドポイント] リストの [VPC エンドポイント] に「No targets available」と表示されます。

このホストゾーン内のレコード

このホストゾーン内のレコードの場合は、[エンドポイント] を選択し、該当するレコードを選択します。レコードが多数ある場合は、名前の最初の数文字を入力することでリストをフィルタ処理できます。

ホストゾーンにデフォルトの NS および SOA レコードのみが含まれる場合、[エンドポイント] リストには「No targets available」と表示されます。

注記

ホストゾーン ([zone apex] といいます) と同じ名前のエイリアスレコードを作成する場合、[レコードタイプ] の値が [CNAME] のレコードは選択できません。これは、トラフィックがルーティングされているレコードとエイリアスレコードのタイプが同じでなければならず、zone apex の CNAME レコードの作成はエイリアスレコードであってもサポートされていないためです。

Weight

Route 53 が現在のレコードを使用して応答する DNS クエリの比率を決定する値。Route 53 は、同じ DNS 名とタイプの組み合わせがあるレコードの重みの合計を計算します。次に、Route 53 は、その合計に対するリソースの重みの比率に基づいてクエリに応答します。

[レコード名] および [レコードタイプ] の値が加重レコードと同じである非加重レコードを作成することはできません。

0 ~ 255 の整数を入力します。リソースへのルーティングを無効にするには、[Weight (重み)] に 0 を設定します。グループ内のすべてのレコードに対して [Weight (重み)] を 0 に設定した場合、トラフィックは等しい確率ですべてのリソースにルーティングされます。これにより、加重レコードのグループのルーティングを誤って無効にする心配がなくなります。

加重レコードにヘルスチェックを割り当てる場合、[Weight (重み)] を 0 に設定した結果は異なります。詳細については、「ヘルスチェックが設定されている場合に Amazon Route 53 がレコードを選択する方法」を参照してください

ヘルスチェック

Route 53 で、指定されたエンドポイントの正常性をチェックし、エンドポイントが正常であるときにのみ、このレコードを使用して DNS クエリに応答する場合は、ヘルスチェックを選択します。

Route 53 は、レコード内で指定されたエンドポイント、例えば、[] フィールドの IP アドレスで指定されたエンドポイントの正常性はチェックしません。Route 53 は、レコードのヘルスチェックを選択したとき、ヘルスチェックで指定されたエンドポイントの正常性をチェックします。エンドポイントが正常であるかどうかを、Route 53 がどのように判断するかについては、「Amazon Route 53 でヘルスチェックの正常性を判断する方法」を参照してください。

ヘルスチェックをレコードに関連付けることに意味があるのは、Route 53 が複数のレコードの中から選択して DNS クエリに応答しており、その選択の一部をヘルスチェックのステータスに基づいて行うように Route 53 を設定する必要がある場合だけです。以下の設定でのみ、ヘルスチェックを使用してください。

  • 名前、種類、およびルーティングポリシー (フェイルオーバーレコードや加重レコードなど) が同じレコードのグループ内のすべてのレコードの正常性をチェックし、すべてのレコードの正常性チェック ID を指定します。レコードのヘルスチェックが正常ではないエンドポイントを特定した場合、Route 53 はそのレコードの値を使用してクエリへの応答を停止します。

  • フェイルオーバーエイリアス、位置情報エイリアス、レイテンシーエイリアス、または加重エイリアスレコードのグループ内のレコード、またはエイリアスレコードに対する [ターゲットの正常性の評価] に [Yes]を選択します。エイリアスレコードが同じホストゾーン内の非エイリアスレコードを参照する場合、参照先レコードのヘルスチェックも指定する必要があります。

ヘルスチェックでドメイン名によってのみエンドポイントを指定する場合、エンドポイントごとにヘルスチェックを作成することをお勧めします。例えば、www.example.com のコンテンツを配信する各 HTTP サーバーについて、ヘルスチェックを作成します。[ドメイン名] の値には、レコードの名前 (example.com) ではなく、サーバーのドメイン名 (us-east-2-www.example.com など) を指定します。

重要

この構成で、[ドメイン名] の値がレコードの名前と一致するヘルスチェックを作成し、それらのレコードにヘルスチェックを関連付けた場合、ヘルスチェックで予想できない結果が生じます。

ターゲットの正常性の評価

Route 53 で、このレコードを使用して [エンドポイント] で指定されたリソースの正常性を確認することによって DNS クエリに応答するかどうかを判定する場合は、[Yes] を選択します。

次の点に注意してください。

API Gateway のカスタムリージョン API とエッジ最適化 API

エンドポイントが API Gateway カスタムリージョン API またはエッジ最適化 API である場合、[ターゲットの正常性の評価] を [Yes] に設定するための特別な要件はありません。

CloudFront ディストリビューション

エンドポイントが CloudFront ディストリビューションの場合、[ターゲットの正常性の評価] を [Yes] に設定することはできません。

ローカル化されたサブドメインがある Elastic Beanstalk 環境

[エンドポイント] で Elastic Beanstalk 環境を指定し、その環境に ELB ロードバランサーが含まれている場合、Elastic Load Balancing はクエリをロードバランサーに登録されている正常な Amazon EC2 インスタンスにのみルーティングします。(複数の Amazon EC2 インスタンスが含まれている場合、環境には自動的に ELB ロードバランサーが含まれます。) [ターゲットの正常性の評価] を [Yes] に設定したとき、正常な Amazon EC2 インスタンスがない場合やロードバランサー自体が正常でない場合、Route 53 は他に利用可能なリソースがあれば、そこにクエリをルーティングします。

環境に 1 つの Amazon EC2 インスタンスが含まれている場合、特別な要件はありません。

ELB ロードバランサー

ヘルスチェックの動作はロードバランサーのタイプによって異なります。

  • [Classic Load Balancers] – [エンドポイント] で ELB Classic Load Balancer を指定した場合、Elastic Load Balancing は、ロードバランサーに登録されている正常な Amazon EC2 インスタンスにのみクエリをルーティングします。[ターゲットの正常性の評価] を [Yes] に設定したとき、正常な EC2 インスタンスがない場合やロードバランサー自体が正常でない場合、Route 53 は他のリソースにクエリをルーティングします。

  • アプリケーションと Network Load Balancer – ELB アプリケーションまたは Network Load Balancer を指定し、[ターゲットの正常性の評価] を Yes に設定すると、Route 53 は、ロードバランサーに関連付けられているターゲットグループの正常性に基づいて、クエリをロードバランサーにルーティングします。

    • アプリケーションまたはNetwork Load Balancerを正常であると見なすには、ターゲットを含むすべてのターゲットグループに少なくとも 1 つの正常なターゲットが含まれている必要があります。ターゲットグループに異常なターゲットのみが含まれている場合、ロードバランサーは異常であるとみなされ、Route 53 はクエリを他のリソースにルーティングします。

    • 登録されたターゲットを持たないターゲットグループは異常であるとみなされます。

注記

ロードバランサーを作成するときは、Elastic Load Balancing のヘルスチェックの設定を行います。これは Route 53 のヘルスチェックではありませんが、同様の機能を実行します。ELB ロードバランサーに登録する EC2 インスタンスに対しては Route 53 のヘルスチェックを作成しないでください。

S3 バケット

エンドポイントが S3 バケットである場合、[ターゲットの正常性の評価] を [Yes] に設定するための特別な要件はありません。

Amazon VPC インターフェイスのエンドポイント

エンドポイントが Amazon VPC インターフェイスエンドポイントである場合、[ターゲットの正常性の評価] を [Yes] に設定するための特別な要件はありません。

同じホストゾーンの他のレコード

[エンドポイント] に指定した AWS リソースが、別のエイリアスレコードではなく、レコードまたはレコードのグループ (例えば、加重レコードのグループ) の場合は、エンドポイントのすべてのレコードにヘルスチェックを関連付けることをお勧めします。詳細については、「」を参照してくださいヘルスチェックを省略するとどうなるか

記録 ID

加重レコードのグループ内で、このレコードを一意に識別する値を入力します。