Amazon Aurora のカスタムエンドポイントに関する考慮事項 - Amazon Aurora

Amazon Aurora のカスタムエンドポイントに関する考慮事項

以下のセクションを使用して、カスタムエンドポイントの管理、プロパティの指定、メンバーシップルールの使用を行います。

カスタムエンドポイントの管理

新しく作成された Aurora クラスターにはカスタムエンドポイントがないため、これらのオブジェクトを自分で作成して管理する必要があります。これを行うには、AWS Management Console、AWS CLI、または Amazon RDS API を使用します。

注記

スナップショットから復元した Aurora クラスターのカスタムエンドポイントも作成して管理する必要があります。カスタムエンドポイントはスナップショットに含まれていません。カスタムエンドポイントは、復元後に再度作成します。復元したクラスターが元のクラスターと同じリージョン内にある場合は、新しいエンドポイント名を選択します。

AWS Management Console からカスタムエンドポイントを使用するには、Aurora クラスターの詳細ページに移動し、[カスタムエンドポイント] セクションの制御を使用します。

AWS CLI からカスタムエンドポイントを使用するには、以下のオペレーションを使用できます。

Amazon RDS API からカスタムエンドポイントを使用するには、以下の関数を使用できます。

カスタムエンドポイントのプロパティの指定

カスタムエンドポイント名の最大長は 63 文字です。名前の形式は次のとおりです。

endpoint_name.cluster-custom-customer_DNS_identifier.AWS_Region.rds.amazonaws.com

同じカスタムエンドポイント名を同じ AWS リージョン の複数のクラスターで再利用することはできません。顧客の DNS 識別子は、特定の AWS リージョン の AWS アカウント に関連付けられた一意識別子です。

各カスタムエンドポイントの対応するタイプにより、このエンドポイントに関連付けることができる DB インスタンスが決まります。現在、タイプは READER または ANY のいずれかです。カスタムエンドポイントのタイプには、以下の考慮事項が適用されます。

  • カスタムエンドポイントタイプを AWS Management Console で選択することはできません。AWS Management Console で作成するすべてのカスタムエンドポイントは ANY タイプになります。

    AWS CLI または Amazon RDS API を使用してカスタムエンドポイントタイプを設定および変更できます。

  • リーダー DB インスタンスのみが、READER カスタムエンドポイントの一部となることができます。

  • リーダー DB インスタンスとライター DB インスタンスの両方が、ANY カスタムエンドポイントの一部となることができます。Aurora はクラスターエンドポイントに接続を指示し、ANY のタイプを関連付けられた DB インスタンスのいずれかに同じ確率で割り当てます。ANY タイプは、任意のレプリケーショントポロジを使用するクラスターに適用されます。

  • 作成しようとしているカスタムエンドポイントのタイプがクラスターのレプリケーション設定に適切なものではない場合、Aurora はエラーを返します。

カスタムエンドポイントのメンバーシップルール

DB インスタンスをカスタムエンドポイントに追加したり、カスタムエンドポイントから削除したりすると、この DB インスタンスへの既存の接続はアクティブのまま残ります。

カスタムエンドポイントに含めたり、カスタムエンドポイントから除外したりする DB インスタンスのリストを定義できます。これらのリストは、それぞれ静的リストおよび除外リストと呼ばれます。包含/除外機構を使用して、さらに DB インスタンスのグループを細分化したり、カスタムエンドポイントのセットがクラスターのすべての DB インスタンスをカバーしていることを確認したりできます。各カスタムエンドポイントには、これらのリストタイプの 1 つのみを含めることができます。

AWS Management Console で次の操作を行います。

  • 選択は、[Attach future instances added to this cluster] (今後追加されるインスタンスをこのクラスターにアタッチする) チェックボックスによって表されます。このチェックボックスをオフのままにすると、カスタムエンドポイントはページで指定された DB インスタンスのみを含む静的リストを使用します。このチェックボックスをオンにすると、カスタムエンドポイントは除外リストを使用します。この場合、カスタムエンドポイントは、ページで選択されなかったものを除いて、クラスター内のすべての DB インスタンス (今後追加するものも含む) を表します。

  • コンソールではエンドポイントタイプを指定できません。コンソールを使用して作成されたカスタムエンドポイントは、すべて ANY タイプです。

    そのため、フェイルオーバーやプロモーションにより DB インスタンスのロールがライターとリーダーの間で変更されても、Aurora はカスタムエンドポイントのメンバーシップを変更しません。

AWS CLI および Amazon RDS API では:

  • エンドポイントタイプを指定できます。そのため、エンドポイントタイプが READER に設定されているとき、フェイルオーバーやプロモーション時にエンドポイントのメンバーシップは自動的に調整されます。

    例えば、タイプ READER のカスタムエンドポイントには Aurora レプリカが含まれ、これは、その後、ライター DB インスタンスに昇格されます。新しいライターインスタンスは、カスタムエンドポイントの一部ではなくなります。

  • ロールを変更した後に、個々のメンバーをリストに追加したり、リストから削除したりできます。modify-db-cluster-endpoint AWS CLI コマンドまたは ModifyDBClusterEndpoint API オペレーションを使用してください。

DB インスタンスは、複数のカスタムエンドポイントに関連付けることができます。例えば、ユーザーが新しい DB インスタンスをクラスターに追加するか、Aurora が Autoscaling 機構を通じて DB インスタンスを自動的に追加するとします。このような場合、DB インスタンスは該当するすべてのカスタムエンドポイントに追加されます。どのエンドポイントに DB インスタンスが追加されるかは、カスタムエンドポイントのタイプである READER または ANY と、各エンドポイントに定義されている静的リストや除外リストに基づきます。例えば、エンドポイントに DB インスタンスの静的リストが含まれている場合、新しく追加された Aurora レプリカはこのエンドポイントに追加されません。逆に、エンドポイントに除外リストが含まれている場合、新しく追加された Aurora レプリカは、この除外リストに名前が存在せず、ロールがカスタムエンドポイントのタイプと一致すれば、エンドポイントに追加されます。

Aurora レプリカは、使用不可になっても、カスタムエンドポイントに関連付けられたままになります。例えば、異常、停止、再起動などに伴って、カスタムエンドポイントの一部として残ります。ただし、レプリカが再度使用可能になるまでは、これらのエンドポイントを通じてレプリカに接続することはできません。