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
2025-08-05 Google Cloud Next Tokyo 2025 Cloud R...
Search
SUZUKI Masashi
September 17, 2025
Technology
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
2025-08-05 Google Cloud Next Tokyo 2025 Cloud RunとCloud SQLの接続方式と事例
SUZUKI Masashi
September 17, 2025
More Decks by SUZUKI Masashi
See All by SUZUKI Masashi
2026-08-15 JAWS-UG 茨城 #16 Secrets ManagerにおけるSecret値の管理(Terraformの場合) / Secrets Manager Secrets
masasuzu
0
840
2026-07-28 3-shakeテックランチ Cloud Run のデプロイパラメータを考える / Cloud Run Deploy Parameter
masasuzu
0
97
2026-07-24 tfpolicyを試してみたのですが、、、、
masasuzu
0
130
2026-06-18 ecspressoのtfstate参照が便利すぎた話
masasuzu
1
480
2026-04-14 Jagu'e'r Cloud Native分科会 Terraform Stateにおけるシークレットの平文保存という課題とその解決
masasuzu
1
83
2026-03-27 #terminalnight 変数展開とコマンド展開でターミナル作業をスマートにする方法
masasuzu
0
490
2026-03-23 Ops-JAWS Meetup39 Session Managerを使った セキュアなサーバーアクセス
masasuzu
2
180
2026-03-11 JAWS-UG 茨城 #12 改めてALBを便利に使う
masasuzu
3
520
2026-03-03 Jagu'e'r Tech Writer Meetup #19 登壇のネタ作りについて
masasuzu
0
390
Other Decks in Technology
See All in Technology
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
20k
internal/testlog で遊ぼう
rokuosan
0
400
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
20k
Kiro Crew で始める マルチエージェント開発
miu_crescent
PRO
0
210
[RSJ26] Flow as Flow: Modeling Robot Velocity Fields as Probability Velocity Fields
keio_smilab
PRO
0
130
カーネルまで探検して理解するふたつの自動計装
sumiyae
0
340
「面白い!」を信じ抜け。激動の時代を貫く、オンリーワン・エンジニアの条件
kizawa2020
2
430
AI駆動開発をチームに根付かせる - 「1行も書かない」チームがHarnessを育てた1年 -
kenichirokimura
6
3.4k
Digitization部 紹介資料
sansan33
PRO
2
7.8k
形式手法特論:Hyperproperty とモデル検査 #kernelvm / Kernel VM Study Tokyo 19th
ytaka23
1
890
Oracle AI Databaseデータベース・サービス: BaseDB/ExaDB-Dの可用性
oracle4engineer
PRO
1
970
500名弱規模の組織のPythonプロジェクト(dbt) をどう管理するか?
hiracky16
0
380
Featured
See All Featured
Designing for Timeless Needs
cassininazir
1
460
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
230
Building AI with AI
inesmontani
PRO
1
1.2k
Practical Orchestrator
shlominoach
191
12k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
410
Visualization
eitanlees
152
17k
Making Projects Easy
brettharned
120
6.7k
Color Theory Basics | Prateek | Gurzu
gurzu
0
440
First, design no harm
axbom
PRO
2
1.3k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Between Models and Reality
mayunak
4
410
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
390
Transcript
Cloud RunとCloud SQLの接続方式 Copyright © 3-shake, Inc. All Rights Reserved.
2025-08-05 Google Cloud Next Tokyo 2025 スポンサーブース すずきまさし
Copyright © 3-shake, Inc. All Rights Reserved. おまえだれよ 2 •
すずきまさし/masasuzu/@masasuz • 株式会社スリーシェイクSreake事業部所属 • クラウドインフラなんでも屋さんをしてます ◦ お客様の外部から ▪ 設計、運用、構築等の技術支援を行います。 ◦ お客様の内部から ▪ インフラチームの一員として内製化支援も行います。 • 得意領域 ◦ AWS ▪ AWS Community Builder Cloud Operation Since 2024 ▪ 2025 Japan All AWS Certifications Engineers ◦ Google Cloud ◦ Terraform
• はじめに • Public IP接続パターン • Private IP接続パターン(VPC接続) • パターン比較
• 関連トピック • まとめ Copyright © 3-shake, Inc. All Rights Reserved. 目次 3
Copyright © 3-shake, Inc. All Rights Reserved. はじめに 01 4
サーバーレスなコンテナ実行プラットフォーム • コンテナ化されたアプリケーションを、インフラ管理不要で実行できるフルマネージド なサービス 。 • 主な特徴 ◦ 自動スケーリング :
リクエスト数に応じてコンテナインスタンスを高速に増減。リクエストがなければ ゼロにまでスケールイン し、コストを最適化 ◦ 従量課金 : コードが実行されている時間( CPU・メモリ)に対してのみ課金されるため、費用対効果 が高い ◦ 高い柔軟性 : コンテナ化されていれば、 どんな言語やライブラリでも デプロイ可能 ◦ シンプルな運用 : デプロイするだけで HTTPSエンドポイントが自動で提供される Copyright © 3-shake, Inc. All Rights Reserved. Cloud Runとは 5
フルマネージドなリレーショナルデータベースサービス • Google Cloudが提供する、MySQL, PostgreSQL, SQL Server向けのフルマネー ジドなデータベースサービス • 主な特徴
◦ フルマネージド : バックアップ、パッチ適用、高可用性構成、フェイルオーバーといった 運用タスクを クラウドに一任 できる ◦ 高可用性 (HA): 障害発生時には、待機系インスタンスへ自動的に切り替わり、サービスの停止時 間を最小限に抑える ◦ 高いセキュリティ : データは自動的に暗号化され、 IAMやファイアウォールでアクセスを厳密に制御 可能 ◦ リードレプリカ : 読み取り専用のコピーを作成することもでき、データベースの負荷を分散できる Copyright © 3-shake, Inc. All Rights Reserved. Cloud SQLとは 6
Cloud RunからCloud SQLへの接続は、V大きく2つのアプローチに分けられます。 • Public IP 接続 ◦ 組み込みのCloud SQL
Auth Proxyを利用することでIAMとTLSでセキュア ◦ 手軽さとセキュリティ を両立 • Private IP 接続 ◦ Cloud RunはVPCリソースではないので、 VPCに接続する必要がある ◦ インターネットから完全に分離された 閉域網 ◦ セキュリティ とパフォーマンス の両立 Copyright © 3-shake, Inc. All Rights Reserved. 2つの接続パターン 7
Copyright © 3-shake, Inc. All Rights Reserved. Public IP接続パターン 02
8
• コンセプト ◦ 埋め込みCloud SQL Auth Proxyを利用し、Public IPを持つCloud SQLへ安全に接続する •
主な特徴 ◦ VPCが不要 ▪ サブネット、ファイアウォール等の複雑なネットワーク設定が 不要 ◦ 迅速な環境構築が可能 • 最適なユースケース : ◦ 開発・テスト環境 ◦ プロトタイピング ◦ 小規模なWebアプリケーション Copyright © 3-shake, Inc. All Rights Reserved. Public IP接続パターン - 概要 9
1. IAMによる認証 ◦ Cloud SQL 言語コネクタ使用した場合 ◦ サービスアカウントの IDで認証。 2.
通信の自動暗号化 ◦ すべての通信をTLSで暗号化。 3. 接続の抽象化 ◦ アプリケーションはローカルのプロキシに接続するだけ。 IPアドレスを意識しない Copyright © 3-shake, Inc. All Rights Reserved. Cloud SQL Auth Proxy 10 https://cloud.google.com/sql/docs/postgres/sql-proxy?hl=ja
• 方式1: Unixドメインソケット ◦ Cloud Runの「Cloud SQL接続」を有効化 ◦ 接続文字列例: host=/cloudsql/PROJECT:REGION:INSTANCE
• 方式2: Cloud SQL Language Connector • Go, Java, Python等で提供される言語ネイティブなライブラリ • IAM認証可能 • インスタンスIDで接続 Copyright © 3-shake, Inc. All Rights Reserved. Public IP接続 - 2つの実装方式 11
• メリット ◦ 設定が圧倒的に容易 : 開発サイクルを大幅に高速化 。 ◦ 低コスト :
VPCコネクタのような追加インフラ費用が不要。 ◦ 組み込みセキュリティ : IAM認証とTLS暗号化がデフォルトで提供。 • デメリット ◦ わずかなレイテンシ : Private IP接続に比べ、理論上はわずかな遅延の可能性。 ◦ 接続数・ APIクォータ : 1コンテナあたり100接続の上限と、Cloud SQL Admin APIのクォータに注意 が必要 。 Copyright © 3-shake, Inc. All Rights Reserved. Public IP接続 - メリット・デメリット 12
Copyright © 3-shake, Inc. All Rights Reserved. Private IP接続パターン 03
13
• コンセプト ◦ Cloud SQLをVPC内に配置し、インターネットから隔離されたプライベートネットワーク経由で接続 する。 • 主な特徴: ◦ 攻撃対象領域を根本的に削減し、セキュリティを最大化。
◦ ネットワークホップ数が少なく、低レイテンシ。 • 最適なユースケース : ◦ 本番環境のワークロード ◦ 厳格なセキュリティ要件を持つシステム Copyright © 3-shake, Inc. All Rights Reserved. Private IP接続パターン - 概要 14
1. Serverless VPC Access Connecter (従来方式) ◦ 中継用のVMクラスタ (コネクタ) をVPC内に構築する。
◦ コネクタの常時稼働コストと運用管理が必要。 2. Direct VPC Egress (GA・推奨) ◦ Cloud RunがVPCネイティブなリソースとして振る舞う 新しい方式。 ◦ 中継インフラが不要で、低コスト・高性能・シンプル 新規構築では Direct VPC Egressが望ましい Copyright © 3-shake, Inc. All Rights Reserved. Private IP接続 - 2つの方式 15
Cloud Runなどのサーバーレス環境から、VPC内部のリソース(Cloud SQL, Memorystore等)へプライベート接続するための「橋渡し」役 • アーキテクチャと仕組み ◦ ユーザーのVPC内にコネクタインスタンス (実体はCompute Engine
VM)を作成 ▪ 最大インスタンスまでスケールアウトする (スケールインが不可能 ) ◦ Cloud Runからのトラフィックは、まずこのコネクタに転送され、コネクタが代理で VPC内の宛先にリ クエストを届ける ◦ この中継処理のため、ネットワークに 1ホップ分の遅延が加わる • 考慮点: ◦ コスト: コネクタインスタンスは常時稼働するため、その分の VM料金が発生 ◦ 作り直さないとスケールインができないので、最大負荷の時点のインスタンス数で固定される ◦ 運用: コネクタの作成、サイジング、監視といった管理が必要 Copyright © 3-shake, Inc. All Rights Reserved. Serverless VPC Access Connecter 16
Cloud RunからVPCへ接続するための最新かつ推奨 される方法 • 仕組み ◦ 中継用のコネクタ VMが不要 ▪ 中サイジングや運用、
VMコストが不要 ◦ Cloud Runインスタンスが、VPCのサブネットから直接プライベート IPアドレスを取得 ◦ Cloud RunがVPCネイティブなリソースとして振る舞い、 VPC内リソースと直接通信 ◦ 直接VPCに接続するのでインスタンス数の 最大2倍のIPが必要となる ▪ 以前は4倍必要だった Copyright © 3-shake, Inc. All Rights Reserved. Direct VPC Egress 17
Direct VPC Egressの登場により中継用のコネクタが不要になりました。 • 低コスト ◦ コネクタVMの料金が不要に • 高性能 ◦
ネットワークホップが減り、コネクタ方式より低レイテンシ・高スループットを実現 • シンプルな運用 ◦ コネクタの作成・サイジング・監視といった運用管理が不要 Copyright © 3-shake, Inc. All Rights Reserved. Direct VPC Egressの利点 18
Copyright © 3-shake, Inc. All Rights Reserved. パターン比較 04 19
Copyright © 3-shake, Inc. All Rights Reserved. パターン比較 20 方式
Public IP (Auth Proxy) Private IP (Direct VPC Egress) Private IP (VPC Connector) セキュリティ 非常に高い (ゼロトラスト) 最高レベル (ネットワーク 分離) 最高レベル (ネットワーク 分離) パフォーマンス 良好 最高 (ダイレクト通信) 良好 (1ホップ追加) コスト 最低 (追加費用なし) 低 (従量課金) 高 (常時稼働VM費用) 設定の複雑さ 非常に低い 低 中 運用管理 非常に低い 低 中 ユースケース 開発/小規模向け 本番環境の標準 レガシー/特定要件のみ
• ケース1: 開発・テスト環境、プロトタイピング、小規模サービス ◦ 推奨: Public IP (Auth Proxy) ◦
理由: 開発速度とコストを最優先。 • ケース2: 本番環境、高いセキュリティ要件 ◦ 推奨: Private IP (Direct VPC Egress) ◦ 理由: 最高レベルのセキュリティとパフォーマンスを、優れたコスト効率で実現。 Copyright © 3-shake, Inc. All Rights Reserved. ユースケース別 推奨パターン 21
Copyright © 3-shake, Inc. All Rights Reserved. 関連トピック 05 22
• 目的 ◦ 外部サービスのIPホワイトリストに対応するため、 Cloud Runからの送信元IPを固定する。 • アーキテクチャ ◦ Direct
VPC Egress + Cloud NAT ◦ Cloud Runからの全トラフィック (egress=all-traffic) をVPC経由でCloud NATにルーティン グし、静的IPを割り当てる • 注意点 ◦ この構成では、Cloud SQLへの接続もPrivate IP経由に統一することを強く推奨 Copyright © 3-shake, Inc. All Rights Reserved. 静的アウトバウンドIPの実現 23
• 目的 ◦ データベースのパスワード管理にまつわるリスク (漏洩、ハードコーディング等 ) を根本から排除す る。 • 仕組み
◦ IAMサービスアカウントを直接データベースユーザーとして認証 。 ◦ Auth Proxy/Language Connectorが裏側でトークンを使い自動で認証。 • メリット ◦ セキュリティ強化、運用性向上、 IAMによる権限の一元管理。 ◦ Public IP (Auth Proxy) パターンと非常に相性が良い。 Copyright © 3-shake, Inc. All Rights Reserved. IAMデータベース認証 (パスワードレス) 24
• Secret Managerによる認証情報の安全な管理 ◦ パスワードやAPIキーは、ソースコードや環境変数に直接書かず、 Secret Managerに格納する。 ◦ Cloud Runの環境変数として安全にマウントできる。
• 接続プーリングとエラーハンドリング ◦ Cloud Runは頻繁にスケールするため、 接続プーリングを強く推奨 ◦ 接続を再利用し、DBへの負荷と接続オーバーヘッドを削減 ◦ 接続断に備え、自動で再接続を試みるリトライロジックも実装 Copyright © 3-shake, Inc. All Rights Reserved. その他ベストプラクティス 25
Copyright © 3-shake, Inc. All Rights Reserved. まとめ 06 26
• Public IP(Auth Proxy)がシンプルな構成で基本的には問題ない 。 • Private IP(Direct VPC Egress)はセキュリティやパフォーマンスが必要
になった ときに検討する。 それでは良いCloud SQL & Cloud Runライフを! Copyright © 3-shake, Inc. All Rights Reserved. まとめ 27
• Cloud SQL への接続方法を選択する | Cloud SQL for MySQL |
Google Cloud • パブリック IP を構成する | Cloud SQL for MySQL • Cloud SQL Auth Proxy について | Cloud SQL for MySQL | Google Cloud • Cloud SQL 言語コネクタを使用して接続する | Cloud SQL for MySQL | Google Cloud • Cloud Run から接続する | Cloud SQL for MySQL | Google Cloud • IAM 認証 | Cloud SQL for MySQL | Google Cloud • サーバーレス トラフィックを VPC ネットワークに送信する | Google Cloud • VPC とコネクタ | Cloud Run Documentation | Google Cloud • VPC ネットワークによるダイレクト VPC 下り(外向き) | Cloud Run Documentation | Google Cloud Copyright © 3-shake, Inc. All Rights Reserved. 参考 28