Help us understand the problem. What is going on with this article?

【初心者】AWS PrivateLink を使ってみる

More than 1 year has passed since last update.

目的

  • PrivateLinkは既に登場して2年ほどになる、ある程度枯れたサービスだが、構成を理解するため触ってみることにした。

AWS PrivateLink とは(自分の理解)

  • 自分のVPCのNLB配下のWEB等のサービスを、同一リージョン内の他のVPCに公開できるサービス。VPCピアリング等と異なり、IPアドレスレンジの重複等の考慮が不要で、AWS内に閉じた安全なNW接続を実現できる。
  • PrivateLinkは、サービスを公開する側(エンドポイントサービス)と、サービスにアクセスする側(インターフェースエンドポイント)のセットで構成される。

やったこと

  • VPC(Provider)側にNLBとEC2(nginx)、VPC(Consumer)側にEC2(WEB Client)を作成する。
  • VPC(Provider)側で「エンドポイントサービス」を作成し、NLBを指定する。
  • VPC(Consumer)側で「インターフェースエンドポイント」を作成し、接続先として、「エンドポイントサービス」を指定する。
  • VPC(Provider)側で、「インターフェースエンドポイント」の接続要求を承認し、接続を確立する。
  • EC2(web client)からEC2(nginx)へPrivateLink経由でhttpアクセスする。

構成図

pl-02.png

作業手順

VPC(2個)及びEC2(WEBサーバ/クライアント)の作成

  • VPC(Provider)を作成し、NLBとEC2(nginx)を作成する。NLBのスキームを「内部」で設定する。
  • VPC(Consumer)を作成し、EC2(WS2019,Web Client用)を作成する。

エンドポイントサービスの作成

  • VPCのメニューから、「エンドポイントサービスの作成」を選択し、VPC(Provider側)にて既存のNLBを指定してエンドポイントサービスを作成する。「エンドポイントサービスの作成」とは、NLBの配下のサービスを、他のVPCに対しての公開サービスとして登録するイメージ。2019/11現在、エンドポイントサービスとして公開設定できるのはNLBのみ。

pl-01.png

インターフェースエンドポイントの作成

  • VPCのメニューから、「エンドポイントの作成」を実行し、VPC(Consumer側)にてインターフェースエンドポイントを作成する。「インターフェースエンドポイント」は、「エンドポイントサービス」とつながる道の入口のようなもの。エンドポイントサービスの「サービス名」(com.amazonaws.vpce.ap-northeast-1.vpce-svc-xxxxxxxxxxxxxxxxx)を入力することで、エンドポイントサービスとの紐づけ要求を作成することができる。

pl-02a.png

エンドポイントサービス側での承認

  • エンドポイントサービス側の設定に戻ると、エンドポイントからの接続リクエストが「承諾の保留中」の状態になっているため、「エンドポイント接続リクエストの承諾」を実行する。これにより、接続が確立される。 pl-04a.png

PrivateLink経由での接続確認

  • VPC(Consumer)側で起動したEC2(WEB Client)のブラウザで、URLにインタフェースエンドポイントのDNS名を入力して、PrivateLink経由でNLBの先のEC2(nginx)へアクセスする。 pl-05a.png

所感

  • VPC PrivateLinkというサービスメニューがあるわけではなく、「エンドポイントサービスとインターフェースエンドポイントをつなげること」=「PrivateLink」という感じなので、ちょっと分かりにくいなと感じた。

参考

mksamba
検証したことが何かの役に立てばと思い記録、公開しています(内容の正確性は保証できません)。また、所感等は個人の見解です。
kddi
KDDIは、通信を中心に周辺ビジネスを拡大する「通信とライフデザインの融合」をより一層推進し、国内はもとよりグローバルにおいても、5G/IoT時代における新たな価値創造を実現し、お客さまの期待を超える新たな体験価値の提供を追求してまいります。
http://www.kddi.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away