Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
新しいプロダクトのデプロイパイプラインにArgo CDを使った話
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Cloud Ace
April 07, 2025
Technology
270
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
新しいプロダクトのデプロイパイプラインにArgo CDを使った話
Cloud Ace
April 07, 2025
More Decks by Cloud Ace
See All by Cloud Ace
GCSの署名付きURL、 URLを返せば終わりじゃなかった話
cloudace
0
14
いくつ知ってる? GoogleのAIたち
cloudace
0
9
新卒1年目からAI駆動開発:期待と現実、そして気づいたこと
cloudace
0
13
Developer Knowledge MCP でサポート業務を改善する
cloudace
0
7
クラウドエース流AI駆動開発の実践
cloudace
0
16
ソフトウェアDNAとクラウドエージェントのススメ
cloudace
0
150
今年の最難関と思われるProfessional Security Operations Engineer の概要
cloudace
0
33
Gemini CLI x Google Cloud Document MCP で作る Google Cloud クイズボット
cloudace
0
36
魅力的な LT を作りたい
cloudace
0
31
Other Decks in Technology
See All in Technology
Datadog の学び方 - あるいは、オブザーバビリティを学ぶとは何か
mananyuki
1
560
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
140
QA4AI 2026-Oct 生成AI時代の品質保証
tokuty
1
620
転んだ話が背中を預ける理由になる / A_story_about_falling_down_gives_you_a_reason_to_watch_each_other_s_backs.pdf
pauli
3
360
Essential architectural thinking (revised edition)
ufried
0
120
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
120
go-sqletch
moznion
0
140
FactoryBotアンチパターン / factory_bot anti-patterns
toshimaru
0
160
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
280
初対面のメンバーがチームを組み、Claude Codeでゼロからサービスをリリース
mkdev10
1
130
アウトプット初心者、半年間のふりかえり
4o1sobblue
0
200
SREでアラート疲れを 解決しよう!
kairim0
1
230
Featured
See All Featured
How to make the Groovebox
asonas
2
2.5k
Practical Orchestrator
shlominoach
192
12k
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Tell your own story through comics
letsgokoyo
1
1.1k
Fireside Chat
paigeccino
43
4.1k
Designing for Timeless Needs
cassininazir
1
520
Chasing Engaging Ingredients in Design
codingconduct
0
360
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
KATA
mclloyd
PRO
35
16k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
370
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
Transcript
| © 2025 Cloud Ace, Inc 新しいプロダクトのデプロイパイプラインに Argo CDを使った話
| © 2025 Cloud Ace, Inc 自己紹介 北野 敦資 @Aquamarine_1010 クラウドエース株式会社
DevSecOps 事業部 Expert • 2019年 6月よりGoogle Cloudへのシステムの提案・設計から運用までの実施 • 前職ではシステムの運用管理の自動・自律化の研究、プライベートクラウドの運用・ 開発
| © 2025 Cloud Ace, Inc 概要 Argo CDとCrossplaneを使ってデプロイパイプラインの構築
| © 2025 Cloud Ace, Inc 当社の提供サービス 顧客システム・ビジネスの信頼性向上 • 24/365でのシステムの監視 •
システムの機能改善の提案の実施
| © 2025 Cloud Ace, Inc • サービスの機能 ◦ 認証基盤: Keycloak
◦ ダッシュボード: Grafana ◦ ナレッジ管理: Backstage ◦ チケット管理: Redmine ◦ サービスデスク: 独自アプリ ◦ インシデント管理: Pagerduty • アプリ基盤 ◦ GKE・Cloud Run サービスのシステム構成概要 GKE と Cloud Run でアプリケーションを構成
| © 2025 Cloud Ace, Inc 実現したいデプロイパイプライン • 運用ミスをなくすパイプライン ◦ 専用の基盤からのみの変更
◦ 構成情報のコード化 ◦ 統一的なデプロイフロー ◦ 本番環境への変更を明示的に行う • 変更に気づける ◦ 変更作業の失敗への通知 信頼性の高い CI / CD パイプライン
| © 2025 Cloud Ace, Inc デプロイパイプラインの設計 信頼性の高いデプロイの実現 • デプロイ専用環境の構築 ◦
Google Cloudの専用プロジェクトを準備 し、開発・本番環境に横断的に構成変更 の実施 • CIとCD のパイプラインの分離 • IaCを採用し変更作業のコード化 • GitOpsの採用 • リポジトリ戦略の設計 ◦ タグ作成により本番環境のリリース • Slackで変更作業者への通知
| © 2025 Cloud Ace, Inc デプロイ方法の設計 • アプリケーションのデプロイ ◦ Argo
CD + Kustomizeによるデプロイ • Google Cloud上のアプリの設定 ◦ Cloud Build + Terraformによるデプロイ ▪ 特定のIPから変更できるようにする • Google CloudとSaaSの設定 ◦ GitHub Actions + Terraformによるデプロイ 種類ごとにデプロイエージェントとコードの使い分け
| © 2025 Cloud Ace, Inc アプリケーションのデプロイ
| © 2025 Cloud Ace, Inc Argo CD の設計 • 単一Argo
CDで複数のGKEの管理 ◦ GKE の Fleet 機能 + Connect Gateway による全環 境への接続 ◦ argocd-fleet-sync によるクラスタの情報の同期 • Argo CDのprojectに各環境の分離 ◦ プロジェクトで設定する内容 ▪ デプロイ先のクラスタ情報 ▪ 各環境のアクセス権限 ▪ 参照するリポジトリ • システムのKeycloakによるSSOの実現 ◦ Keycloak のグループによるログイン • Argo CD NotificationによるSlack通知 ◦ エラー発生時に @channel で全員への連絡 安全かつ効率的なArgo CD 環境の実現
| © 2025 Cloud Ace, Inc Argo CD の Application 設計
• 自前のアプリケーションは Kustomizeで管理 ◦ baseの内容を overlays で環境に沿った変更する ▪ 例: イメージのバージョン、Podのresourcesなど • Application : 管理するアプリケーション = 1:1 ◦ Keycloak、 Grafana、 サービスデスクを1つのApplicationとし て管理する • 作成したGKE上のリソースを Application で管理 ◦ GKE のエクステンション、Argo CD 自体も Applicationで管理 • Applicationは ApplicationSetで管理 ◦ 本番環境は自動同期しないように設定 ▪ 管理者が差分を目視確認してSYNCする Kustomizeを使った効率的なアプリケーション管理
| © 2025 Cloud Ace, Inc Argo CD と 連携するリポジトリの設計 •
デプロイ用のリポジトリの作成 ◦ KubernetesのマニフェストとCloud Run の 構成情報の管理 ◦ Argo CDと連携 • アプリケーションのリポジトリでの実施 内容 ◦ Dockerイメージの作成 ◦ 開発環境の アプリの更新 ▪ Github Actions デプロイ用のリポジト リのマニフェストの更新 CI と CDを明確に分離するように設計 a イメージの作成とバージョン更新
| © 2025 Cloud Ace, Inc Argo CD での Cloud Run
の管理 • Workload IdentityによるGoogle Cloudへの認証 • V2ServiceプロバイダによりCloud Runの管理 • Argo CDにCrossplaneのステータス追跡の設定 ◦ resourceのトラッキング・ステータスの設定 Crossplane によるCloud Runのデプロイ V2Service Provider デプロイ デプロイ 同期 Cloud Run Argo CD
| © 2025 Cloud Ace, Inc まとめ Argo CD で安全なデプロイパイプラインの作成
| © 2025 Cloud Ace, Inc まとめ • Argo CD のシステム設計
◦ GKE Fleet + Connect Gateway + argocd-fleet-sync による複数クラスタの管理 ◦ Keycloak + Argo CDのプロジェクトによる安全なデプロイパイプラインの実現 ◦ Argo CD NotificationによるSlackへの通知 • デプロイパイプラインの設計 ◦ デプロイ用のリポジトリを個別に作成 ◦ アプリケーションパイプラインから開発環境のデプロイ • CrossplaneによるCloud Runの管理 ◦ Workload Identityの活用で安全な認証 ◦ V2ServiceプロバイダによるCloud Runの制御 Argo CD とCrossplaneで安全なデプロイパイプラインの作成
| © 2025 Cloud Ace, Inc 参考URL • GKE での Argo
CD の構築 • Argo CD でのGKE のマルチクラスタ管理 • Argo CD で Google アカウントによる SSO する方法 • Argo CD で Crossplane を使った Cloud Runのデプロイ • Argo CD が参照していないリポジトリからイメージバージョンを更 新する方法 • Crossplane で GKE の Workload Identityによる認証方法