UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

【GCP】サーバーレス VPC アクセスでApp Engineスタンダード環境から VPC ネットワークに接続する

VPCネットワークにあるGCEインスタンスに接続する必要があったため、フレキシブル環境App Engineを利用してる

ただ、フレキシブル環境App Engineはアクセスがなくても最低でも1インスタンスを常時起動・常時課金なため、スタンダード環境に比べてコストがかかる

そこで、サーバーレス VPC アクセスというのを使ってApp Engineスタンダード環境からVPCネットワークに接続してみる

cloud.google.com

サーバーレス VPC アクセスコネクタをつくる

GCPコンソールから、VPCネットワーク > サーバーレス VPC アクセス に遷移すると「コネクタを作成」とあるので、そこからコネクタを作成する

コネクタは、サーバーレス環境と VPC ネットワークとの間のトラフィックを処理するために必要

f:id:uggds:20210505133750p:plain
公式ドキュメントから図を拝借

注意事項

  • コネクタとそれに接続するApp Engineサービスは同じプロジェクトに配置する必要がある
  • コネクタとそれに接続するApp Engineサービスは同じリージョンに配置する必要がある
  • 内部 IP アドレスと内部 DNS 名へのトラフィックは、コネクタ経由でルーティングされ、外部 IP アドレスへのトラフィックは、デフォルトでインターネット経由でルーティングされる
  • 共有 VPC を使用する場合コネクタで使用するサブネットを作成する必要がある
  • 同じコネクタを複数のサーバーレス サービス(App Engineなど)で使用できる
  • リージョン間のアクセスを許可するリソース(Google Cloud VM インスタンスや GKE クラスタなど)に関しては、トラフィック送信先のリソースとは別のリージョン内にコネクタを配置できるが、その際、コネクタからの下り(外向き)の料金が請求される