[アップデート] Auto Scaling が PrivateLink をサポートしました

2019.11.29

はじめに

こんにちは、大阪オフィスのちゃだいんです。

今回は以下の新機能を確認してみたいと思います。

Amazon EC2 Auto Scaling、Application Auto Scaling、そして AWS Auto Scaling が AWS PrivateLink のサポートを開始

Amazon Virtual Private Cloud (VPC) 内で Amazon EC2 Auto Scaling、Application Auto Scaling、そして AWS Auto Scaling (スケーリングプラン) にアクセスできるようになりました。これは、これらの Auto Scaling サービスが AWS PrivateLink のサポートを開始したことによります。AWS PrivateLink のサポートにより、パブリック IP を使用することなく、またインターネット全体を横断するトラフィックを必要とすることなく、VPC から Auto Scaling サービスにプライベートにアクセスできるようになりました。(上記記事より引用)

とのことです。早速試してみましょう。

前提

今回は EC2 Auto Scaling で 起動中のEC2 のヘルスチェックの経路を、VPCエンドポイントを作成する前と、作成した後でVPCフローログに変化が見られるか確認します。

作成済みのリソース

  • VPC一式
  • EC2
  • EC2 Auto Scaling一式(起動設定、オートスケーリンググループ)
  • VPCフローログ 等

試してみた

1.VPCエンドポイントを作成する

  • 以下ドキュメントを参考にします

Amazon EC2 Auto Scaling and Interface VPC Endpoints - Amazon EC2 Auto Scaling

  • ドキュメントに以下記述があるので、今回作成するのは、EC2 Auto ScalingEC2、2つのVPCエンドポイントを作成する必要があります

  • マネジメントコンソールで検索すると確かに Auto Scaling系のエンドポイントが確認できます

  • 対象のVPC、対象のサブネット、対象のセキュリティグループを指定します

  • VPCエンドポイントポリシーは、上記ドキュメントではスケーリングポリシーを作成するアクションだけ拒否するサンプルが示されていますが、今回は関係ないのでデフォルトで全て許可します

  • EC2 Auto ScalingのVPCエンドポイントが作成されました。

  • 上記と同様にEC2のVPCエンドポイントも作成します。

2.VPCフローログを比較する

VPCエンドポイントを作成する前と後で比較してみた結果、使用しているENIがEC2で使用しているENIから、VPCエンドポイントで使用しているENIになるという変化が見られました。

VPCエンドポイントを作成する前 - eni-AAAAAAはEC2にアタッチしているENIです

account-id instance-id interface-id log-status dstaddr srcaddr protocol
unknown - eni-AAAAAA NODATA - - -

VPCエンドポイントを作成した後 - eni-BBBBBB,CCCCCCはそれぞれのVPCエンドポイントにアタッチしているENIです

account-id instance-id interface-id log-status dstaddr srcaddr protocol
unknown - eni-BBBBBB NODATA - - -
unknown - eni-CCCCCC NODATA - - -

どうやらどちらのフローログも以下のキャプチャされないトラフィックに該当するようでIPは見えませんでした。

フローログですべての IP トラフィックはキャプチャされません。以下のトラフィックの種類は記録されません。 - VPC フローログ

ただし、VPCエンドポイント作成後には元々存在していたeni-AAAAAAを使用したトラフィックが発生しなくなったので、それらがeni-BBBBBBeni-CCCCCCに切り替えられたと考えることができます。

終わりに

今回の調査では、はっきりとした証明はできず、そうと思われる事象を見つけることができました。 PrivateLinkの理解がまだまだ足りないので、次の機会に再調査してみたいです。