Amazon Web Services ブログ
AWS PrivateLinkのアップデート – お客様のアプリケーション&サービス向けのVPCエンドポイント
今月はじめに、私の同僚であるColm MacCárthaighがAWS PrivateLinkに関する記事でVPCエンドポイントを利用したAmazon Kinesis StreamsやAWS Service Catalog、AWS Systems Manager、そしてEC2やELBのAPIへのアクセス方法についてご紹介しました。VPCエンドポイント (1つまたは複数のElastic Network InterfacesまたはENIで表される) はVPC内に存在し、VPCのサブネットからIPアドレスを取得します。これらのAWSサービスにアクセスするためにはインターネットゲートウェイやNATゲートウェイは必要ありません。このモデルは明確で理解しやすく、言うまでもなくセキュアでスケーラブルです!
プライベート接続用のエンドポイント
本日、VPCエンドポイントを利用して自分のサービスにアクセスしたり、他のユーザからサービスにアクセスいただけるようにAWS PrivateLinkを拡張しました。AWSサービス向けのPrivateLinkをローンチする以前から、たくさんのお客様からこの機能に関するご要望をいただいており、おそらく非常に人気のある機能になると考えています。例えば、あるお客様は単一のマイクロサービス(詳細はMicroservices on AWSを参照)を提供する数百のVPCを作成する計画があるとお話いただいたことがあります。
各企業は他のAWSのお客様にプライベート接続を介したサービスを開発・提供することができるようになりました。Network Load Balancerを利用したTCPトラフィックによるサービスを作成し、直接またはAWS Marketplaceでサービスを提供することができます。利用者は新しいサブスクリプションリクエストの通知を受け取り、そのサービスの利用について許可または拒否をすることができます。2018年は強力で活気のあるサービスプロバイダーのエコシステムを構築するために、この機能が利用されていくことでしょう。
サービスの提供者と利用者は異なるVPCまたはAWSアカウントを利用し、エンドポイントを介した一元的な通信がAmazonのプライベートネットワークを経由します。サービス利用者はVPC間のIPの重複やVPCピアリング、ゲートウェイの利用について心配する必要はありません。また、AWS Direct Connectを利用することで、オンプレミスやその他で稼働しているサービスから、AWS上のクラウドベースのアプリケーションへのアクセスを実現することができます。
サービスの提供および利用
VPC API、VPC CLI、またはAWSマネージメントコンソールからすべてのセットアップを行うことが可能です。それでは、コンソールからどのようにサービスの提供または利用を行うのかご紹介しましょう。今回はデモ用に単一のAWSにアカウントを利用します。
それでは、サービスの提供について見ていきましょう。サービスはNetwork Load Balancerの背後で実行され、かつTCPを利用する必要があります。EC2インスタンス、ECSコンテナ、またはオンプレミス(NLBのIPターゲットによる設定)を利用し、予想される需要に応じてスケールできるようにします。低レイテンシまたは対障害性を確保するために、リージョン内のそれぞれのAZのNLBをターゲットとすることをおすすめします。
VPCコンソールを開き、[Endpoint Services]を選択し、[Create Endpoint Service]をクリックします。
NLBを選択します。今回の例では一つしか表示されませんが、実際には2つ以上選択し、ラウンドロビン方式で利用者にマッピングさせることも可能です。[Acceptance requred]をクリックし、リクエストベースでのエンドポイントへのアクセスを提供します。
[Create service]をクリックすれば、サービスはすぐに準備完了となります。
もし、AWS Marketplaceでサービスを提供する場合、先に進んでリストを作成します。このブログ記事ではサービスの提供者と利用者が同じため、手順はスキップします。”Service Name”を次の手順で利用するためにコピーします。
VPCダッシュボードに戻り、[Endpoints]を選択し、[Create endpoint]をクリックします。[Find service by name]を選択し、先ほどコピーした”Service Name”を貼り付け、[Verify]をクリックし次に進みます。そしてAZ、サブネット、セキュリティグループをそれぞれ選択し、[Create endpoint]をクリックします。
Endpoint Serviceを作成したときに”Acceptance required”にチェックを入れたため、この接続は”pending acceptance”状態となっています。
Endpoint Serviceに戻ると、リクエスト側でもリクエストが”Pending Acceptance”状態であることが確認できます。(通常は別のAWSアカウントでの確認となります)
数分でエンドポイントが有効で利用可能なります。もし、有料のサービスやアクセスを提供する場合、たくさんのリクエストの中から新しい顧客を許可するために自動化された、定形のワークフローを実行する必要があるでしょう。
サービス利用者側は、新しいエンドポイントに対しDNS名でアクセスすることができます。
AWSまたはAWS Marketplaceから提供されるサービスはsplit-horizon DNSを通じてアクセスが可能です。この名前でアクセスすることで、ベストなエンドポイントが選択され、かつリージョンとAvailability Zoneが考慮されます。
AWS Marketplaceについて
前述のとおり、この新しいPrivateLinkの機能はAWS Marketplaceを通じて、新規または既存のサービス提供者の方々に新しい機会を提供します。以下のSaaSはすでにエンドポイントが利用可能で、今後さらに多くのサービスが増えていくことでしょう。(詳しくはAWS Marketplaceをご覧ください。)
CA Technologies – CA Infrastructure Management Essentials, CA App Experience Analytics Essentials, CA Application Performance Management Essentials.
Aqua Security – Aqua Container Image Security Scanner.
Dynatrace – Could-Native Monitoring powered by AI.
Cisco Stealthwatch – Public Cloud Monitoring – Metered, Public Cloud Monitoring – Contracts.
Sig Opt – ML Optimization & Tuning.
本日から利用できます!
このPrivateLinkの新しい機能はいまからご利用できます!
日本語訳はSA吉田が担当しました。原文はこちらです。
AWS PrivateLink Update – VPC Endpoints for Your Own Applications & Services