Amazon Aurora のカスタムエンドポイント
Aurora クラスターのカスタムエンドポイントは、選択した DB インスタンスのセットを表します。カスタムエンドポイントに接続すると、Aurora は接続バランシングを行い、グループ内のいずれかのインスタンスを選択して接続を処理します。ユーザーは、このエンドポイントで参照するインスタンスを定義し、エンドポイントの用途を決めます。
Aurora DB クラスターには、ユーザーが作成するまで、カスタムエンドポイントは存在しません。Aurora のプロビジョニングされたクラスターまたは Aurora Serverless v2 クラスターごとに最大 5 つのカスタムエンドポイントを作成できます。Aurora Serverless v1 クラスターにカスタムエンドポイントを使用することはできません。
カスタムエンドポイントは、DB インスタンスの読み取り専用機能や読み取り/書き込み機能とは異なる基準に従って、バランスの取れたデータベース接続を提供します。例えば、特定の AWS インスタンスクラスや特定の DB パラメータグループを使用するインスタンスに接続するカスタムエンドポイントを定義できます。次に、このカスタムエンドポイントを特定のユーザーグループに知らせることができます。例えば、社内ユーザーをレポート生成やアドホック (1 回だけの) クエリ実行用の低容量インスタンスに振り向けたり、本番稼働用トラフィックを高容量インスタンスに振り向けたりすることができます。
カスタムエンドポイントが関連付けられているいずれの DB インスタンスも接続先となるため、グループ内のすべての DB インスタンス間で同様の特性を共有することをお勧めします。これにより、このエンドポイントに接続するすべてのユーザー間で、パフォーマンス、メモリ容量などが一貫したものになります。
この機能は、クラスター内のすべての Aurora レプリカを同一に保つことが現実的ではない特種なワークロードを扱う上級ユーザー向けです。カスタムエンドポイントを使用すると、各接続に使用される DB インスタンスの容量を予測できます。カスタムエンドポイントを使用する場合は、通常、そのクラスターのリーダーエンドポイントは使用しません。
次の例は、Aurora MySQL DB クラスター内の DB インスタンスのカスタムエンドポイントを示しています。
myendpoint.cluster-custom-c7tj4example.us-east-1.rds.amazonaws.com:3306
カスタムエンドポイントでは、容量や構成設定が異なる DB インスタンスがクラスターに含まれている場合に接続管理を簡素化します。
以前は、CNAMES 機構を使用して各自のドメインからドメインネームサービス (DNS) のエイリアスをセットアップして同様の結果を達成していました。カスタムエンドポイントを使用すると、クラスターの増大や縮小に伴って CNAME レコードを更新する必要がなくなります。カスタムエンドポイントでは、暗号化された Transport Layer Security/Secure Sockets Layer (TLS/SSL) 接続を使用することもできます。
異なる目的ごとに 1 つの DB インスタンスを使用し、そのインスタンスエンドポイントに接続する代わりに、複数の専用の DB インスタンスを持つことができます。この場合、グループごとに独自のカスタムエンドポイントを使用します。これにより、Aurora は、レポートの作成、本番稼働用クエリや内部クエリの処理など、タスク別のすべてのインスタンスをまたいで接続バランシングを実行できます。カスタムエンドポイントは、DNS を使用してインスタンス間で接続をパッシブに分散し、インスタンスの 1 つの IP アドレスをランダムに返します。グループ内のいずれかの DB インスタンスが使用不可になると、Aurora は以降のカスタムエンドポイント接続を、同じエンドポイントに関連付けられている他のいずれかの DB インスタンスに振り向けます。