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
Datadog Agent を入れて Cloud Run でサイドカーを利用する ユースケース...
Search
Kento Kimura
PRO
December 13, 2023
Technology
1.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Datadog Agent を入れて Cloud Run でサイドカーを利用する ユースケースを考える
Kento Kimura
PRO
December 13, 2023
More Decks by Kento Kimura
See All by Kento Kimura
Compose Spec の変遷と Cloud Run のイマ / The History of Compose Spec and Cloud Run Support
aoto
PRO
0
110
頼れる Agentic AI を支える Datadog のオブザーバビリティ / Powering Reliable Agentic AI with Datadog Observability
aoto
PRO
0
440
作りっぱなしで終わらせない! 価値を出し続ける AI エージェントのための「信頼性」設計 / Designing Reliability for AI Agents that Deliver Continuous Value
aoto
PRO
2
430
Google に学ぶ、安全性を高める信頼性設計 / Reliability Design for Enhanced Safety: Lessons from Google SRE
aoto
PRO
0
97
AI エージェントで AI エージェントを作る!Google Cloudが実現するフルスタックな AI 開発エコシステム / Building AI Agents with AI Agents! Full-Stack AI Development Ecosystem on Google Cloud
aoto
PRO
0
400
Jagu'e'r Advent Calendar でコミュニティを盛り上げよう / Join us the community with Jagu'e'r Advent Calendar
aoto
PRO
0
83
現場の壁を乗り越えて、 「計装注入」が拓く オブザーバビリティ / Beyond the Field Barriers: Instrumentation Injection and the Future of Observability
aoto
PRO
1
1.6k
「最速」で Gemini CLI を使いこなそう! 〜Cloud Shell/Cloud Run の活用〜 / The Fastest Way to Master the Gemini CLI — with Cloud Shell and Cloud Run
aoto
PRO
1
460
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
1.2k
Other Decks in Technology
See All in Technology
AIレビューはどこまで任せられるのか?自動化と人が背負うレビューの境界
sansantech
PRO
1
110
キャリアの中で本を作る / Making a Book During Your Career
ak1210
0
130
Claude Code公式skillで 自分の仕事を少しずつ手放そう!(Claude Code開発ノウハウ大公開スペシャル by クラスメソッド)
kaym
0
110
Kotlin 開発のツラミを爆破した話! / Explode the difficulty of Kotlin dev!
eller86
0
160
FinOps X 2026 Recap from Engineer Side #JapanFinOps
chacco38
0
270
実装だけじゃない! CCA-F取得エンジニアが教えるClaude Code開発プロセス活用術
diggymo
2
490
Baseline対応のDOMの型定義を作った
uhyo
3
720
Amazon EVS で VCF 9.0 / 9.1 のサポート開始まとめ
mtoyoda
0
280
AIに「使われる」時代のSaaS戦略 〜既存WebAPIのMCPサーバー化における開発ノウハウ〜
ekispert_api
0
300
最適な自走を最小限の支援で — M&Aで拡大する組織で少人数SREが挑んだ1年 / SRE NEXT 2026
genda
0
720
そのタスクオンスケですか?
poropinai1966
0
150
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
Featured
See All Featured
Marketing to machines
jonoalderson
1
5.6k
We Are The Robots
honzajavorek
0
270
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
210
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
970
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
First, design no harm
axbom
PRO
2
1.2k
4 Signs Your Business is Dying
shpigford
187
22k
Building the Perfect Custom Keyboard
takai
2
810
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Making the Leap to Tech Lead
cromwellryan
135
10k
Transcript
Datadog Agent を入れて Cloud Run でサイドカーを利用する ユースケースを考える 13th Dec, Jagu'e'r
Cloud Native Subcommittee #12 Kento Kimura
Self-Introduction • 所属:Technical Solutions / Sales Engineer • 担当:パブリッククラウドのアーキテクト知識を活かした Datadog
のプリセールス技術支援 • 資格:Google Cloud 全 11 資格、AWS 全 12 資格、Azure 13 資格 • 表彰:Google Cloud Partner Top Engineer 2023-24 2022-23 APN All AWS Certifications Engineer 2023 Japan AWS Jr.Champion Jagu'e'r Award 2023 優秀賞 木村 健人 (Kento Kimura) Datadog Japan GK Technical Solutions Sales Engineering History データセンター運用保守 → パブリッククラウド技術支援 → プリセールス技術支援 Community Jagu’e’r デジクラ人材育成分科会 運営リード o11y-SRE 分科会 運営メンバー TechWriters 分科会 運営メンバー Partner Top Engineer 2023 Partner Top Engineer 2024
アジェンダ 1 概要 2 ユースケース 3 メリット 4 まとめ
4 概要
Cloud Run のサイドカー機能 2023年5月12日にパブリックプレビューが発表 2023年11月13日に GAが発表 機能:1つのCloud Run インスタンスに対し、 複数のコンテナを実行できる。
それぞれのコンテナは互いに 同一の namespace を共有するため、 localhost で疎通できる。 共有インメモリボリュームでコンテナ間の ファイル共有も可能で 5 引用:「Cloud Run でサイドカーのデプロイが可能に」 https://cloud.google.com/blog/ja/products/serverless/cloud-run-now-supports-multi-container-deployments
Cloud Run のサイドカー機能 「Cloud Run で Datadog Agent をサイドカーとして動かす」2023/5/22 サイドカーに監視エージェントを配置する
ユースケースについて、技術検証結果と 推奨設定をわかりやすくまとめました。 • Cpu-throttling で各コンテナに CPU が常に割り当てられる • container-dependencies でDatadog Agent の起動後に アプリケーションとトレーサーが起動する 6 Cloud Run Instance Python App Datadog Agent :8080 :8126 :443 引用:「Cloud Run で Datadog Agent をサイドカーとして動かす」 https://qiita.com/AoTo0330/items/35a840462f219596e39d
7 ユースケース
監視エージェント アプリケーションの モニタリング・ロギング・トレーシング OpenTelemetry Collector, Datadog Agent などを追加 して、メトリクス・ログ・トレースを任意のバックエンドにエ クスポートできます。
注意点 • 監視エージェントが常に起動しているか • 監視エージェントに常にリソースが割り当てられて いるか 8 引用:「Cloud Run でサイドカーのデプロイが可能に」 https://cloud.google.com/blog/ja/products/serverless/cloud-run-now-supports-multi-container-deployments
プロキシ アプリケーションの通信をプロキシ Nginx, Apache などのプロキシコンテナを用意すること で、リクエストを適切なエンドポイントへ転送し、負荷分散 やレスポンスの高速化、セキュリティの向上を実現できま す。 注意点 •
アプリケーションへ直接外部から通信できないか • プロキシとアプリケーション間の疎通ポート 9 引用:「Cloud Run でサイドカーのデプロイが可能に」 https://cloud.google.com/blog/ja/products/serverless/cloud-run-now-supports-multi-container-deployments
ネットワークとセキュリティ プロキシ・サービスメッシュ Envoy, Istio, Linkerd などのプロキシ・サービスメッシュを 利用して、高度なトラフィックルーティングやフィルタリング を行うことで、アプリケーションの通信を分離することがで きます。 注意点
• アプリケーションへ直接外部から通信できないか • レイテンシーの増加を考慮する • リソース使用量の増加を考慮する 10 引用:「Cloud Run でサイドカーのデプロイが可能に」 https://cloud.google.com/blog/ja/products/serverless/cloud-run-now-supports-multi-container-deployments
データベース接続用プロキシ クライアントプロキシ CloudSQL, AlloyDB などのデータベース接続用プロキ シを実行し、安全性の高い接続や IAM ベースの認証を 導入し、接続をセキュアに安定させることができます。 注意点
• プロキシとアプリケーション間の疎通ポート • DB プロキシに直接外部から疎通できないか 11 引用:「Cloud Run でサイドカーのデプロイが可能に」 https://cloud.google.com/blog/ja/products/serverless/cloud-run-now-supports-multi-container-deployments
+1 アプリケーションの分離 対外的実装アプリケーション マイクロサービスの設計原則に基づいて、アプリケー ションの実装をコンテナの単位に分離することができま す。 従来は k8s を前提としていた実装が、Cloud Run
でも 実現可能になりました。 注意点 • スケールアウトが同時に行われる • 10コンテナ制限(Ingress コンテナを含む) 12 Application
13 メリット
一般的なサイドカーのメリット “Design patterns for container-based distributed systems” • 優先的なリソース(CPU, メモリ)の割り当てによる、低レイテンシの応答と最適化の実現
• コンテナの単位で責任範囲や所有を分離し、独立したテストをお粉あえる • 複数メインコンテナとサイドカーコンテナの組み合わせによる、機能の再利用 • コンテナの単位で依存関係を分離し、障害による影響を最小限に止める • コンテナの単位でデプロイを分離し、アップグレードやロールバックを独立して行える コンテナの単位に機能や役割を分離することで、 より効率的にアプリケーションの開発・デプロイ・運用・保守・障害対応を行うことができる。 14
Cloud Run のサイドカーのメリット Google Cloud 上のマネージドコンテナであること • GKE Autopilot 以上に利用者の管理範囲を削減し、開発に注力できる
• k8s の機能や知見を学習する必要が(あまり)なく、自動的スケーリングを Google Cloud に委任できる • GKE, Kubernetes のテスト環境として、Knative を利用した環境を簡単に利用できる 15
GKE からの yaml ファイルの変更 apiVersion: apps/v1 kind: Deployment metadata: name:
k8s-to-run namespace: default labels: app: k8s-to-run spec: template: metadata: labels: app: k8s-to-run spec: containers: - image: gcr.io/cloudrun/hello env: - name: HELLO value: world - image: gcr.io/cloudrun/sidecar env: - name: HELLO value: sidecar volumes: - name: VOLUME_NAME emptyDir: sizeLimit: SIZE_LIMIT medium: Memory apiVersion: serving.knative.dev/v1 kind: Service metadata: name: k8s-to-run namespace: ‘PROJECT_NUMBER’ labels: app: k8s-to-run spec: template: metadata: labels: app: k8s-to-run spec: containers: - image: gcr.io/cloudrun/hello env: - name: HELLO value: world - image: gcr.io/cloudrun/sidecar env: - name: HELLO value: sidecar volumes: - name: VOLUME_NAME emptyDir: sizeLimit: SIZE_LIMIT medium: Memory 16
17 まとめ
まとめ • Cloud Run のマルチコンテナ機能=サイドカー機能は、パブリックプレビューの段階から 注目されてきた有用な機能 • Kubernetes の学習・管理コストから解放されて、サービスのテストから始まり 詳細な要件がないアプリケーションの柔軟なスケーリングを
Google Cloud に委任できる • 現在のマルチコンテナの制限数は Ingress コンテナを含めて10個 • ちなみに Datadog の公式の対応はまだです…🐶
宣伝 個人アドカレやってます🐶🐶 Google Cloud に関連する内容もあるの で、覗いてみてください。 (本日のアウトプットも「Cloud Run で Datadog
Agent をサイドカーで動かして、どう なったか【裏側】」で執筆中) 「AoTo Advent Calendar 2023」 https://qiita.com/advent-calendar/2023/aoto Qiita@AoTo0330 X@AoToLog_
Thank you