🍣

PrivateLinkをマネコンで構築してみる

2023/11/09に公開

概要

  • AWS PrivateLinkをマネコンを使って構築する方法について説明します
  • PrivateLinkって聞いたことあるけど、実際にどういう手順で構築するのって方向けです

PrivateLinkとは:
https://aws.amazon.com/jp/privatelink/

今回構成する構成

  • 同一AWSアカウント内の2つのVPC間を繋ぐPrivateLinkを構築します
  • ⚠️PrivateLinkというAWSサービスがあるわけではなく赤色の部分をPrivateLinkを言います

手順

事前準備

  • VPCの作成
    • 2つのVPCを作成します
    • 本題とは逸れるので省略しますが以下のようなPrivateSubnetだけを持つVPCを作成
    • サブネットとかも一括で作れるなんてずいぶん便利になりましたよね〜
  • EC2を作成
    • それぞれのVPCに所属するEC2を作成

PrivateLink作成

1. NLB を作成

NLBはPrivateLinkの構成内か構成外か判断迷いましたが、VPC Endpoint Serviceを作る際に選択必須なので事前準備でなく、PrivateLink作成の手順の1部としました。

  • 接続先のVPCにNLBを作成します

2. VPC Endpoint Service を作成

  • VPCのメニューにあるVPC Endpoint Serviceから作成します
  • 新規作成
    • 先ほど作成したNLBを選択します
    • 今回は承諾が必要にチェックを入れた状態で作成します(デフォルト)
    • 作成した際に払い出されるサービス名は後で使います

3. VPC Endpointの作成

  • VPCのメニューからVPC Endpointを選択し、新規作成します
  • PrivateLink Readyパートナーのサービスを選択し、サービス名に先ほどVPC Endpoint Serviceを作成した際に発行されたサービス名を入力、「サービスの検証」をします
  • 画面のように「サービスが検証されました」と出れば正常です
  • VPCとサブネットは接続元となるVPCを選択します

4. VPC Endpointを承認する

    1. で作成した VPC Endpoint Serviceの「エンドポイント接続」タブを開きます
  • アクションから「エンドポイント接続リクエストの承諾」を選択して、承諾します
  • 状態が、「Available」に変わればOKです

以上で、PrivateLinkの構築が完了しました。

どうやってPrivateLink経由でアクセスするか

3.で作成したVPC Endpointを見るとDNSが発行されています。そのDNSを使ってアクセスすると、PrivateLink先のNLBにアクセスできるため、EC2やDBへそのDNSを使ってアクセスすることができます。

まとめ

PrivateLinkの作成手順についてまとめてみました。
UIは頻繁にアップデートされるため参考程度にお考えください。PrivateLinkって聞いたことあるけど、実際どんな感じなんだろうという方々のお役に立てれば幸いです。

Discussion