ClickPipes からプライベート RDS を利用できるようにする AWS PrivateLink の設定
これは AWS Endpoint Service を使用する方法で、主にクロスリージョンアクセスに適しています。同一リージョンでのアクセスが必要な場合は、
VPC リソースの作成 を
推奨します。
プライベートリンクの作成
-
VPC を確認し、NLB を作成します
- 対象の VPC に移動し、Network Load Balancer (NLB) を作成します。NLB は internet-facing (パブリック) ではなく、internal (プライベート) である必要があります。
-
ターゲットグループを設定します
- ターゲットグループは、RDS インスタンスのエンドポイント IP とポート (通常、PostgreSQL は 5432、MySQL は 3306) を指すように設定してください。
ターゲットグループを新しい RDS エンドポイント IP で更新する処理を自動化したい場合は、AWS Lambda 関数やその他の自動化ツールを使用できます。
この目的で利用できる Terraform モジュールの 1 つが こちら です。
- 重要: DB Cluster/Aurora の場合に使用する RDS インスタンスのエンドポイントは、共通エンドポイントではなく、writer エンドポイントのみであることを確認してください。
- NLB による TLS 終端を避けるため、TCP プロトコルを使用していることを確認してください。
-
リスナーポートを設定します
- ロードバランサーのリスナーポートは、ターゲットグループで使用するポート (通常、PostgreSQL は 5432、MySQL は 3306) と一致している必要があります。
-
VPC エンドポイントサービスを作成します
- VPC 内で、NLB を指すエンドポイントサービスを作成します。
- 特定のアカウントからの接続リクエストの承認を有効にします。
-
ClickPipes がエンドポイントサービスを使用できるように認可します
- ClickPipes アカウントに、このエンドポイントサービスをリクエストする権限を付与します。
- 次の principal ID を追加して、許可する principal を設定します。
- 次の principal ID を追加して、許可する principal を設定します。
- ClickPipes アカウントに、このエンドポイントサービスをリクエストする権限を付与します。
-
NLB で “Enforce Security Group Inbound Rules on Private Link Traffic” を無効にします (NLB にセキュリティグループがアタッチされている場合)
- NLB の設定に移動し、NLB にセキュリティグループがアタッチされている場合は、“Enforce Security Group Inbound Rules on Private Link Traffic” 設定を無効にします。
- Terraform を使用している場合は、NLB の
enforce_security_group_inbound_rules_on_private_link_traffic属性をoffに設定します - この設定は、ClickPipes VPC から NLB へのトラフィックを許可するために必須です。
-
任意: データベースのリージョンが ClickPipes のリージョンと異なる場合は、クロスリージョンのサポートを有効にします
- VPC コンソールの
Endpoint Servicesで、対象のエンドポイントサービスを選択します。 Actionsボタンをクリックし、Modify supported Regionsを選択します。- エンドポイントサービスへのアクセスを許可するリージョンを追加します。ClickPipes のリージョン一覧については、こちらを参照してください。
- VPC コンソールの
-
MySQL の場合に推奨
- MySQL を使用している場合は、ソースデータベースのパラメータとして
skip_name_resolve=1を設定することを推奨します。 NLB からのヘルスチェックが繰り返し行われるため、MySQL は NLB ホストをブロックします。このパラメータを設定すると、DNS ホスト名のルックアップが完全に 回避されるため、NLB ホストがブロックされることはありません。RDS を使用している場合、これにはインスタンスの 再起動が必要です。
- MySQL を使用している場合は、ソースデータベースのパラメータとして
接続の開始
Ready になったら、次のセクションに進んで ClickPipe を作成できます。