ドメイン名を使用した Amazon RDS データベースインスタンスへの接続の開始 - Amazon Route 53

ドメイン名を使用した Amazon RDS データベースインスタンスへの接続の開始

ウェブアプリケーションのデータストレージに Amazon RDS データベースインスタンスを使用した場合、DB インスタンスに割り当てられるドメイン名は、次の例のように一部がランダムな長い英数字文字列となります。

myexampledb.a1b2c3d4wxyz.us-west-2.rds.amazonaws.com

Amazon RDS DB インスタンスへの接続を開始するときは必ず、アプリケーションコードでドメイン名を指定する必要があります。

覚えやすいドメイン名を使用する場合は、代わりに独自のドメイン名を使用できます。これを行うには、Amazon Route 53 を使用して、ドメイン名を DB インスタンスのドメイン名に関連付ける CNAME レコードを作成できます。

例えば、CNAME レコードを作成し、productdata.example.com をドメイン名 myexampledb.a1b2c3d4wxyz.us-west-2.rds.amazonaws.com にマッピングできます。CNAME レコードを作成すると、Amazon RDS DB インスタンスへの接続を開始するときはいつでもアプリケーションコードで productdata.example.com を使用できます。

CNAME レコードにより、覚えやすい名前を使用できるようになるだけでなく、DB インスタンスの置き換えも簡単になります。すべてのコードを新しい DB インスタンスのドメイン名で更新する代わりに、CNAME レコードで DB インスタンスのドメイン名を変更するだけでかまいません。

注記

ドメイン名を Amazon RDS DB インスタンスに関連付けるには、CNAME レコードを使用する必要があります。Route 53 では、この目的で他のタイプのレコードを使用することはできません。詳細については、「レコードを使用する」を参照してください

Prerequisites

開始する前に、以下のものが必要です。

  • Amazon RDS DB インスタンス。

    注記

    データベースインスタンスを作成すると、Amazon RDS は SSL 証明書を自動的に作成し、クライアントが SSL を使用してデータベースに接続できるようにします。SSL を使用してホストに接続するときにホスト名 ID 検証を実行するようにクライアントアプリケーションが設定されている場合、クライアントは、接続先のホストの名前と証明書の属性 (共通名またはサブジェクトの別名) を比較します。Route 53 CNAME レコードを作成して RDS インスタンスにトラフィックをルーティングする場合、Route 53 レコードがインスタンスの Amazon RDS エンドポイント (database-1.xyz.us-east-1.rds.amazonaws.com など) にトラフィックをルーティングしている場合でも、クライアントは Route 53 レコードの名前 (database.example.com など) をホスト名と見なします。Route 53 CNAME レコードの名前と証明書の属性が一致しません。この場合、Amazon RDS では SSL 証明書に CNAME レコードの名前が含まれていないため、ホスト名 ID の検証が失敗する可能性があります。

  • 登録済みドメイン名 (ドメインレジストラとして Route 53 を使用する必要はありません)。

  • ドメインの DNS サービスとしての Route 53。Route 53 を使用してドメイン名を登録した場合、Route 53 をドメインの DNS サービスとして自動的に設定します。

    Route 53 をドメインの DNS サービスプロバイダとして使用する方法の詳細については、「Amazon Route 53 を既存ドメインの DNS サービスとして使用する」を参照してください。

ドメイン名を使用した接続の開始を可能にする Amazon Route 53 の設定

ドメイン名を使用して Amazon RDS データベースインスタンスへの接続を開始できるように Amazon Route 53 を設定するには、以下の手順を実行します。まず、DB インスタンスに関連付けられたドメイン名を取得し、次にドメイン名を DB インスタンスのドメイン名にマッピングする CNAME レコードを作成します。

Amazon RDS DB インスタンスのドメイン名を取得するには

  1. AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. コンソールの右上隅のリージョンリストで、接続を開始する DB インスタンスを作成したリージョンに変更します。

  3. ナビゲーションペインで、[インスタンス] を選択します。

  4. 表で、接続を開始する DB インスタンスを展開します。

  5. [Endpoint] の値を取得します。

CNAME レコードを作成するには

  1. Route 53 コンソール (https://console.aws.amazon.com/route53/) を開きます。

  2. ナビゲーションペインで [Hosted zones] を選択します。

  3. DB インスタンスへの接続の開始に使用するドメイン名があるホストゾーンの名前を選択します。

  4. [Create record (レコードを作成)] を選択します。

  5. 次の値を指定します。

    ルーティングポリシー

    該当するルーティングポリシーを選択します。詳細については、「ルーティングポリシーの選択」を参照してください

    レコード名

    DB インスタンスへの接続の開始に使用するドメイン名を入力します。デフォルト値はホストゾーンの名前です。

    例えば、ホストゾーンの名前が example.com であり、acme.example.com を使用して DB インスタンスへの接続を開始する場合、「acme」と入力します。

    重要

    ホストゾーンと同じ名前を持つ CNAME レコードを作成することはできません。

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

    IP アドレス、またはレコードタイプに応じた別の値を選択します。

    接続を開始する DB インスタンスのドメイン名を入力します。これは、「Amazon RDS DB インスタンスのドメイン名を取得するには」の手順を実行したときに取得した値です。

    レコードタイプ

    [CNAME] を選択します。

    TTL (秒)

    デフォルト値の [300] をそのまま使用します。

  6. [レコードを作成] を選択します。

    通常、変更は 60 秒以内にすべての Route 53 サーバーに伝播されます。伝達が完了すると、この手順で作成した CNAME レコードの名前を使用して DB インスタンスへの接続を開始できるようになります。