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 で GKE とマネージドサービスを 効率的に運用する方法
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kento Kimura
PRO
November 16, 2023
Technology
3.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Datadog で GKE とマネージドサービスを 効率的に運用する方法
https://cloudonair.withgoogle.com/events/next-tokyo?talk=d2-pl-10
Kento Kimura
PRO
November 16, 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
100
頼れる Agentic AI を支える Datadog のオブザーバビリティ / Powering Reliable Agentic AI with Datadog Observability
aoto
PRO
0
420
作りっぱなしで終わらせない! 価値を出し続ける AI エージェントのための「信頼性」設計 / Designing Reliability for AI Agents that Deliver Continuous Value
aoto
PRO
2
420
Google に学ぶ、安全性を高める信頼性設計 / Reliability Design for Enhanced Safety: Lessons from Google SRE
aoto
PRO
0
91
AI エージェントで AI エージェントを作る!Google Cloudが実現するフルスタックな AI 開発エコシステム / Building AI Agents with AI Agents! Full-Stack AI Development Ecosystem on Google Cloud
aoto
PRO
0
390
Jagu'e'r Advent Calendar でコミュニティを盛り上げよう / Join us the community with Jagu'e'r Advent Calendar
aoto
PRO
0
80
現場の壁を乗り越えて、 「計装注入」が拓く オブザーバビリティ / Beyond the Field Barriers: Instrumentation Injection and the Future of Observability
aoto
PRO
1
1.5k
「最速」で Gemini CLI を使いこなそう! 〜Cloud Shell/Cloud Run の活用〜 / The Fastest Way to Master the Gemini CLI — with Cloud Shell and Cloud Run
aoto
PRO
1
440
開発者を支える 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 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
300
スタートアップにAmazon EKSは早すぎる? マルチプロダクト戦略を加速する Platform Engineeringの実践 / Is Amazon EKS Too Soon for Startups? Practical Platform Engineering to Accelerate a Multi-Product Strategy
elmodev09
0
370
データレイクの「見えない問題」を可視化する
sansantech
PRO
1
100
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
2k
LayerX コーポレートエンジニアリング室におけるサプライチェーンセキュリティへの取り組み / Supply Chain Security at LayerX Corporate Engineering
yuyatakeyama
2
680
マルチアカウント環境での コーディングエージェントを使った障害調査が大変なので AIエージェントにReadOnly権限を付与してみた / ReadOnly AI Agents for Multi-Account AWS Incident Response
yamaguchitk333
2
110
When Platform Engineering Meets GenAI
sucitw
0
130
【NRUG vol.18】KubernetesにおけるNew Relicデータ取得量削減の考え方
nrug_member
0
170
Oracle Cloud Infrastructure:2026年6月度サービス・アップデート
oracle4engineer
PRO
0
130
Claude Codeをどのように キャッチアップしているか
oikon48
13
8.6k
失敗を資産に変えるClaude Code
shinyasaita
0
720
2026TECHFRESH畢業分享會 - Lightning Talk - 打造精準高效的 MCP 設計模式與測試實務
line_developers_tw
PRO
0
1.3k
Featured
See All Featured
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Become a Pro
speakerdeck
PRO
31
6k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
170
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Google's AI Overviews - The New Search
badams
0
1k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
340
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Transcript
16th Nov, Google Cloud Next Tokyo ’23, Sponsored Session Kento
Kimura Datadog で GKE とマネージドサービスを 効率的に運用する方法 GENERAL USE
Kento Kimura Sales Engineer, Google Cloud Partner Top Engineer 2023-24
Agenda Kubernetes 監視と課題 1 2 GKE 特徴と監視方法 3 マネージドサービス 監視
4 Datadog で運用する方法 5 Datadog デモ 6 まとめ
4 Kubernetes 監視と課題
監視すべきコンポーネント 増加 5
Kubernetes リソースマップ 6
アプリが分散型になっており、常に移動している Kubernetes ホスト間で Pod を常に移動し、 需要に合わせてスケールアップおよびスケールダウン カスタマーエクスペリエンスを正しく把握するために 何か問題が発生したときに、どこで起こったか正しく 把握する必要がある 7
タグ、ラベル コンテナを判別する「唯一 手段」 8 Pod Node上を動き回るため、アラートもそれを追従しなくて ならない そ ため、Podが動いても安定的なも を目印として付随させる必要がある
ラベル 例 • フロントエンド/バックエンド • アプリケーション • 環境(開発、本番など) • チーム • バージョン
各レイヤーで何が起こっているか把握する 9
アプリケーション 監視 アプリケーションとそ プロセス 状態を可視化し、エラーやパフォーマンス 情報を元にアプリ ケーションコード デバッグを行う。 ゴールデンシグナルなどに基づく、アプリケーション 指標を把握する。
Kubernetes 監視 10 監視、ログ、デバッグ コンテナ 監視 Kubernetes リソース 一般的な問題やコンテナ終了メッセージ 管理、実行中 コンテナ デ バッグを行う。 Pod・Service・StatefulSet などとコンテナ自体 状態を把握する。 ホスト 監視 アプリケーションが原因でない場合 、コントロールプレーン・ワーカーノードなど Cluster 状態 確認、各ワークロード 状態を深く掘り下げるログ 確認を行う。 ノード 死活監視と kube-apiserver・kube-scheduler・kubelet 状態を把握する。
11 GKE 特徴と監視方法
12 Autopilot モード ワーカーノード 管理を Google Cloud に委任できる。 ノード 自動スケールや作成/削除
・OS 管理を行う必要がないが、アク セスができない。 Cloud Run(参考) ノードを意識することなく、アプリケー ションコンテナをデプロイしホスティン グできる。 サイドカー機能によりマルチコンテナ 起動も可能。 Standard モード ノード配置やレプリカ 選択肢として シングル・マルチゾーンやリージョンク ラスターがある。 基盤となる GCE ノードに直接アクセ スできる。 GKE 概要 Google Cloud マネージド Kubernetes サービス GKE 仕組み Google Compute Engine(GCE) を利用した Node でクラスターを形成する。Standard モード コントロールプレー ンを Google Cloud が管理し、Autopilot モード ワーカーノード 管理も行う GKE 特徴 コントロールプレーンやワーカーノード 管理を委任できるため、コンテナ上 アプリケーションや プロセス 監視に注力できる
GKE アーキテクチャ 13 GKE クラスター コントロールプレーン ストレージ リソース コントローラー スケジューラー
ワーカーノード ユーザーポッド コンテナ ユーザーポッド コンテナ API サーバー ユーザー kubectl Google Cloud マネージド Autopilot: Google Cloud マネージド Standard: ユーザーマネージド 各モード マネージ範囲 GKE Kubernetes 様々なレイヤー うち、 コントロールプレーン 管理を Google Cloud に 委任できるマネージドサービス さらに、Autopilot モードで ワーカーノード オーケストレーションなども委任できる マネージ範囲と監視方法
GKE アーキテクチャ 14 GKE クラスター コントロールプレーン ストレージ リソース コントローラー スケジューラー
ワーカーノード ユーザーポッド コンテナ ユーザーポッド コンテナ API サーバー ユーザー kubectl Google Cloud マネージド Autopilot: Google Cloud マネージド Standard: ユーザーマネージド 各モード マネージ範囲 GKE Kubernetes 様々なレイヤー うち、 コントロールプレーン 管理を Google Cloud に 委任できるマネージドサービス さらに、Autopilot モードで ワーカーノード オーケストレーションなども委任できる アンマネージドリソース 監視 Standard/Autopilot モード どちら 場合でも ユーザーポッド上 ユーザーマネージドなため、 プロセスやアプリケーション 監視に 独自 仕組みが必要 マネージ範囲と監視方法
Google Cloud Managed Observability① Kubernetes オブザーバビリティ 1. GKE クラスタを作成すると、デフォルトで Cloud
Logging と Cloud Monitoring が有効となる 2. Metrics/Logging Agent が各ノードにデプロイされ、システムとワークロード 情報を収集できる • クラスタ 重要な指標 :CPU 使用率、メモリ使用率、対応待ち インシデント数 • クラスタリソース 情報 :インフラストラクチャ、ワークロード、サービス • コンテナリソース 情報 :Namespace、ノード、ワークロード、 Service、Pod • Pod とコンテナ ログ情報 :時間 関数として指標を表示し、ログエントリを確認 3. Cloud Monitoring で デフォルトで様々な GKE ダッシュボードを提供している • GKE Compute Resources :クラスター・ノード・ワークロード毎にリソース 利用状況を可視化 • GKE Interactive Playbook :Crashlooping/Unschedulable Pods に対するプレイブックを現在 状況と合わせて確認できる • GKE Workloads at Risk :ワークロード CPU/Memory Request 未設定やリソース不足を可視化できる Observability for GKE で利用されるテクノロジー: 15 Observability(Cloud Operations) for GKE
Google Cloud Managed Observability② eBPF を利用した Kubernetes データプレーン 1. Kubernetes
ネットワーク用に最適化された GKE クラスタ用データプレーン 2. eBPF(Cilium) を使用して実装することでパケット内に Kubernetes 固有 メタデータを使用し、 より効率的なパケット ルーティング・処理を行う 3. 従来 Observability for GKE に加えて、Hubble による Pod ネットワークテレメトリを収集する Dataplane V2 Observability で利用されるテクノロジー: 4. さらに、アプリケーション パフォーマンスを可視化したい場合 別 実装が必要 アプリケーションパフォーマンス 可視化: 16 GKE Dataplane V2 Observability(Preview)
Datadog Agent for GKE 17 1つ エージェントで マルチクラウド 対応 Datadog
Agent ど クラウド 上 マネージド Kubernetes サービスであっても、同一 Agent を同一 方法でデプロイ できる。 さらに、収集されたデータを Datadog プラットフォーム上でま とめて可視化できる。 様々なテレメトリデータ 紐付け・相関性 Agent によって取得された、メト リクス・ログ・トレースなど 複数 テレメトリを、Datadog プラット フォーム上で紐づけて表示でき る。 プロセスとアプリケーション 可視性 GKE ノードで稼働している プロ セス単位で 可視性と、コンテナ 上で稼働している アプリケー ション 可視性を単一 Agent で実現できる。 さらに、ネットワーク情報・メトリク ス・ログ 収集を 同一 Agent が担う。 Datadog Agent ができること
18 マネージドサービス 監視
Google Cloud 責任・運命共有モデル 責任共有モデルで PaaS • Google Cloud 上で定義される Platform
as a Service 、 アプリケーションを開発して実行できるランタイム環境 • そ ため、アプリ コード・デプロイ・セキュリティ 責任 常に顧客(利用者) 責任範囲となる 運命共有モデル Google Cloud 運命共有モデル 、セキュリティ 向上を目指し ビジネス 安全性と信頼 構築に役立つモデルに進化したも 19 責任共有モデルから運命共有モデルへ
Google Cloud マネージドサービス マネージドサービスと • 前述 GKE や Cloud Run
を含む、マシン セットアップが不要で管理・パッチ適用・バックアップなどが自動 的に処理されるサービス • 責任共有モデルで PaaS・SaaS を含む マネージドサービス 監視 Google Cloud がマネージ(管理)する範囲:Google Cloud がメトリクス・ログを提供する 顧客(利用者)がマネージ(管理)する範囲:利用者が監視テレメトリを収集する 20 マネージドサービス 定義
Google Cloud マネージドサービス 21 Eventarc 状態変更をトリガーとするアクションを 様々に設定し、イベントドリブンアーキテク チャを構築できる フルマネージドソリューション Cloud
Spanner 高可用性と柔軟なスケーリング、強力な整 合性が特徴 フルマネージドな リレーショナルデータベース Cloud Bigtable ミリ秒単位 レイテンシ、無制限 拡張 性、99.999% 可用性を特長とする HBase 対応 エンタープライズ向け フルマネージド NoSQL DB BigQuery サーバレスで費用対効果に優れた、デー タ 管理と分析を支援する フルマネージド DWH マネージドサービス 具体例
Google Kubernetes Engine コントロールプレーン:Google Cloud Cloud Monitoring / Logging で
メトリクス・ログ監視 ユーザーポッド :監視エージェント 実装と監視情報 収集 そ 他 マネージドサービス: Cloud Monitoring / Logging で メトリクス・ログ監視 マネージドサービス 監視 マネージドサービス 監視 提供されているメトリクス・ログと、 利用者 責任範囲 リソース監視を分けて考える必要がある 22
Google Cloud 監視に Datadog Datadog で監視する理由 • Kubernetes 監視対象となるコンポーネントが複数ある •
マネージドプラットフォーム全般も責任範囲で監視方法が変わる • プラットフォーム上 リソース ユーザーが管理・監視しなけれ ならない Datadog どちら 監視情報も同様に可視化して運用できる統合監視プラットフォーム Datadog で監視するメリット • Datadog Google Cloud と相互に連携する機能を持つ • Datadog によってアプリケーションからインフラストラクチャー 監視を一元化できる • Datadog 上に収集された情報 、メトリクス・ログ・トレースなどを中心に簡単に連携を行える 23
24 Datadog で運用する方法
Google Cloud Integration: How-to メトリクス 送信 1. Datadog クローラー用
Service Account を作成する 2. Service Account 用 Datadog プリンシパルを発行する 3. Service Account 権限にDatadog プリンシパルを追加する 4. Service Account を Datadog に登録する ログ 送信 1. Cloud Pub/Sub を作成する 2. API Key を作成する 3. Subscriptions に Datadog エンドポイントを追加する 4. 対象 ログ Log Router を Pub/Sub に設定する 25 Google Cloud to Datadog
Google Cloud Integration: Architecture 26 Google Cloud to Datadog Project
Monitoring Logging Pub/Sub Datadog Crawler / API Datadog Organization (US5) Cloud Monitoring API Service Account
GKE Integration: How-to #Helm リポジトリに Datadog リポジトリ を追加し、更新 helm repo
add datadog https://helm.datadoghq.com helm repo update #GKE に Datadog Agent, Datadog Cluster Agent のデプロイ(values.yaml を使用しない場合) helm install <RELEASE_NAME> \ --set datadog.apiKey=<DATADOG_API_KEY> \ --set datadog.appKey=<DATADOG_APP_KEY> \ --set clusterAgent.enabled=true \ --set clusterAgent.metricsProvider.enabled=true \ --set datadog.logs.enabled=true \ --set datadog.apm.enabled=true \ datadog/datadog 27 Helm で Datadog Agent, Datadog Cluster Agent インストール
GKE Integration: Architecture 28 Datadog Agent, Datadog Cluster Agent 役割
GKE Integration: Self-Paced Labs 29 Google Cloud Skills Boost
Datadog Integration Eventarc にイベントをサブスクライブする 1. Eventarc で プロバイダ名を取得する(datadog/us-central1) 2.
Eventarc イベントを取得する(datadog.v1.alert) 3. Datadog イベント用 チャネルを作成する 4. 「チャネル 完全名」と「アクティベーショントークン」を取得する 5. Eventarc Integration ページから上記2点を入力する 6. Eventarc トリガーを作成する 7. Datadog Monitor でアラートを作成し、宛先に Eventarc を指定する 30 Datadog to Google Cloud
Datadog Integration 31 Datadog to Google Cloud Datadog API Datadog
Organization (US5) Eventarc トランスポートレイヤー Project Cloud Functions Cloud Run Google Kubernetes Engine
32 Datadog デモ
33 デモ① Google Cloud Integration for Cloud Monitoring • 数回
ステップで簡単に連携 • Datadog が自動的にデータを収集 • Google Cloud 監視情報を可視化
34 デモ② Google Cloud OOTB Dashboard • 連携後すぐに利用可能 • さまざまな情報を一画面で可視化
• 複製してカスタマイズ可能
35 デモ③ Datadog Cloud SIEM for Google Cloud • Cloud
Audit Logs 脅威を分析 • セキュリティイベント 追跡 • IAM 権限情報 可視化 • スキャンログ 15ヶ月間 保持
36 まとめ
Google Cloud 監視に Datadog Datadog で監視する理由 • Kubernetes 監視対象となるコンポーネントが複数ある •
マネージドプラットフォーム全般も責任範囲で監視方法が変わる • プラットフォーム上 リソース ユーザーが管理・監視しなけれ ならない Datadog どちら 監視情報も同様に可視化して運用できる統合監視プラットフォーム Datadog で監視するメリット • Datadog Google Cloud と相互に連携する機能を持つ • Datadog によってアプリケーションからインフラストラクチャー 監視を一元化できる • Datadog 上に収集された情報 、メトリクス・ログ・トレースなどを中心に簡単に連携を行える 37
and 事例ウェビナー DatadogでGKEとマネージドサービスを効率的に運用する方法 日程:2023年11月28日(火) 時間:17:00 - 18:00 参加方法:Zoom 本ウェビナーで Google
Cloud Next ’23 でお話ししたセッション内容に加えて、 PLAID 様 CX プラットフォーム 「KARTE」事 例を元に Datadog を利用する上で 実際 運用 ポイントについてもご紹介いたします。 38
Thank you