Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Direct VPC egress for Cloud Run【2023/08/24 Clou...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
tsubaki kyosuke
August 24, 2023
Programming
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Direct VPC egress for Cloud Run【2023/08/24 Cloud Run 新機能祭り】
tsubaki kyosuke
August 24, 2023
More Decks by tsubaki kyosuke
See All by tsubaki kyosuke
AI エージェントの記憶検索における Vertex AI の活用【2023/11/16 Google Cloud Next Tokyo ’23】
tsubakiky
0
650
zk-SNARKの理論【2021/03/04 ETHTerakoya × Blockchain EXE】
tsubakiky
0
2.2k
zk-SNARKの理論
tsubakiky
0
53
Other Decks in Programming
See All in Programming
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
550
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
3
650
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
200
関数型プログラミングのメリットって何だろう?
wanko_it
0
190
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
280
共通化で考えるべきは、実装より公開する型だった
codeegg
0
290
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
140
えっ!!コードを読まずに開発を!?
hananouchi
0
270
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
410
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
610
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
150
Featured
See All Featured
The agentic SEO stack - context over prompts
schlessera
0
850
YesSQL, Process and Tooling at Scale
rocio
174
15k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
910
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
200
A Tale of Four Properties
chriscoyier
163
24k
Navigating Team Friction
lara
192
16k
Docker and Python
trallard
47
4k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
420
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
440
Fireside Chat
paigeccino
42
4k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Transcript
Direct VPC egress for Cloud Run Gaudiy Inc. / Kyosuke
Tsubaki / Engineer
01 03 02 04 全体のアーキテクチャ Direct VPC egress とは 利用事例
自己紹介と会社・プロダクト紹介 05 導入の流れ 06 まとめ
自己紹介
自己紹介 2020 年、大学在学中にインターンとして株式会社 Gaudiyに参加。 2021 年 4 月入社。Enabling Team で横断的な技術導入や負荷対策、マルチテナ
ント移行、パフォーマンス改善などを行う。現在は Gaudiy Fanlink の機能開発を行 う Feature Team で、主に Generative Agents の開発に取り組んでいる。 椿京介
会社・プロダクト紹介
Gaudiy は Web 3 × エンタメ領域から グローバルに挑戦する、 日本発の Web 3
スタートアップです。 会社紹介 MISSION ファンと共に、時代を進める。 ブロックチェーンをはじめとした先進的なテクノロジーを駆使し、 誰もが創作や貢献のできるファン国家の創出を探求する。
プロダクト紹介 多種多様なドメインを扱う Gaudiy Fanlink コミュニティを起点に、自律分散的なファンによる経済圏を実現し、ファンの熱量をもとに幸せに暮らせる社会を作ろうとしている
全体のアーキテクチャ
microservices 全体のアーキテクチャ Cloud Load Balancing GraphQL Cloud Run gRPC Server
Cloud Run gRPC Server Cloud Run Database Cloud Spanner
Direct VPC egress とは
VPC VPCにトラフィックを送信するユースケース Cloud Run Memorystore Cloud SQL Compute Engine GKE
Service Internal Load Balancer On Premise Serverless VPC Access Connector instance
Direct VPC egress とは VPC Cloud Run Serverless VPC Access
Connector Resource with an internal IP address instance
Direct VPC egress とは VPC Cloud Run Serverless VPC Access
Connector Direct VPC egress Resource with an internal IP address instance
Direct VPC egress とは 利点(Serverless VPC Accessとの比較) https://cloud.google.com/blog/products/serverless/announcing-direct-vpc-egress-for-clou d-run?hl=en •
Setup ◦ アプリケーションコードの変更なし • Performance ◦ ネットワーク経路数が少ないため、 低レイテン シを実現 ◦ ダイレクトなネットワークパスを使用するた め、スループットが向上する • Cost ◦ コネクタインスタンスを利用しないため、コスト を削減することができる • Security ◦ ネットワークタグを使用することで、きめ細か なネットワークセキュリティを実現
利用事例
Cloud Run to GKE (Autopilot) VPC GKE Microservices Cloud Run
Autopilot Google Kubernetes Engine Internal Cloud DNS Cloud Trace Direct VPC egress Cloud Logging • OpenTelemetry Collector を GKE 上に建たせ、Cloud Run か ら Direct にデータを送信 • Private Cloud DNS を使い Collector の Internal IP を Cloud Run で DNS解決可能にし つつ、外部ネットワークに出ずに Cloud Run と GKE 間の通信を 実現 • 可能な限りネットワークレイテン シを抑えることに成功 SaaS
3rd Party への通信 実際のユースケースにおける満たすべき要件 • 外部サービスで管理しているデータと弊社で管理し ているデータベースで同期する • 一定時間に同期処理を行う必要がある •
大量なデータを一度に処理する必要がある • IP アドレスを固定する必要がある 外部サービス Cloud Run Cloud Spanner Cloud Scheduler 1 2 3 データの同期処理
3rd Party への通信(Serverless VPC Access) VPC Cloud Run Cloud NAT
Serverless VPC Access Connector 外部サービス xx.xx.xx.xx -> OK xx.xx.xx.xx Cloud Run はデフォルトで動的 IP アドレスプールを使用し て外部エンドポイントに接続する。 静的 IP アドレスからの接続を必要とする外部エンドポイン トの場合、サーバーレス VPC アクセスを利用して Cloud Run を VPC に接続し、Cloud NAT 経由ですべての送信ト ラフィックをルーティングするように設定する必要がある。
3rd Party への通信(Direct VPC egress) VPC Cloud Run Cloud NAT
Serverless VPC Access Connector 外部サービス xx.xx.xx.xx -> OK xx.xx.xx.xx Direct VPC egress 補足:プレビュー時点では Cloud NAT に未対応なのでこのような構成は取れないが、 GA のタイミングではわからない ...
導入の流れ
asia-northeast1 Cloud Run で Direct VPC egress 導入の流れ apiVersion: serving.knative.dev/v1
kind: Service metadata: name: SERVICE_NAME annotations: run.googleapis.com/launch-stage: BETA labels: cloud.googleapis.com/location: asia-northeast1 spec: template: metadata: annotations: run.googleapis.com.network-interface: ‘[{“network”: “NETWORK”, “subnetwork”: “SUBNET”}]’ run.googleapis.com/vpc-access-egress: EGRESS_SETTING spec: containers: - image: IMAGE Subnet 10.214.0.0/20 VPC 2 1 • VPC ネットワークとサブネットの 作成 • サブネット上で利用可能な IPアド レスの個数は Cloud Runのス ケール数に合わせる • network と subnetwork を追加 • 現在 Direct VPC egress はサービ スに対して最大 100 インスタンス (--max-instances=100)をサポー トしている .yaml Cloud Run 3 $ gcloud run services replace service.yaml Cloud RunのDeploy
まとめ ❏ Direct VPC egress により、サーバーレスVPC アク セスコネクタを使用せずに、 VPC ネットワークにトラ
フィックを送信できる ❏ ゼロダウンタイムで導入可能 ❏ アプリケーションコードの修正は不要で導入可能 ❏ パフォーマンスの向上
Thank you. Proprietary + Confidential We are Hiring! Our website: