目指す環境

ローカルからプライベートサブネットに配置しているRDSへ接続する clip-20230728173958.png

事前に用意するもの

プライベートサブネットに立てたRDS RDSと同じAZのパブリックサブネット

設定手順

ターゲットグループの作成

EC2>Target groups>Create target groupから、ターゲットグループを作成する。 【設定値】 Choose a target type:IPアドレスを選択 Target group name:任意 Protocol ,Port:使用するDBにあったものを入力(例:PostgreSQLならTCP:5432) IP address type:IPv4 VPC:RDSと同じVPC その他は基本デフォルト

image.png

設定値を入力し終わったら「Next」をクリックする。

ターゲットの登録

接続したいRDSのエンドポイントから「nslookup」コマンドなどを用いてIPアドレスを割り出し、「IPv4 address」に入力、「Ports」が正しいことを確認し「Include as pending below」をクリックする。

image.png

review targetsに登録されたことを確認し、「Create target group」をクリックする。

image.png

作成後、作成したターゲットグループを選択>Attributes>Preserve client IP addressesをONにする。 (NLBを経由することでNLBのプライベート IP アドレスがクライアントIPとなり、想定外のIPからもアクセスできてしまう。想定したIPのみ許可する場合はクライアントのIPアドレスを保持する設定にしなくてはいけない) clip-20230728174630.png

image.png

NLBの作成と設定

EC2>Load balancers>Create load balancerから、ロードバランサーの作成に進む。 Network Load Balancerを選択する。

clip-20230728174757.png

設定値を入力し、「Create load balancer」をクリックする。 Load balancer name:任意のNLB名 Scheme:インターネットを経由するのでInternet-facing IP address type:IPv4 VPC:RDSと同じVPC Mappings:RDSと同じAZ Subnet:用意していたパブリックサブネット Listner Protocol,Port:使用するDBに合ったもの Default action:作成したTarget group(ターゲットにRDSがある) image.png image.png image.png

結果

ローカルからNLB経由でRDSに接続することができました! image.png