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
新しいプロダクトのデプロイパイプラインにArgo CDを使った話
Search
Cloud Ace
April 07, 2025
Technology
260
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
今年の最難関と思われるProfessional Security Operations Engineer の概要
cloudace
0
23
Gemini CLI x Google Cloud Document MCP で作る Google Cloud クイズボット
cloudace
0
28
魅力的な LT を作りたい
cloudace
0
20
AIエージェントはqじゃなくてwqしよう
cloudace
0
21
文系からSRE分野に挑戦 ( 新卒 2年目、私がGCP/AWSを学んで 得た気づき)
cloudace
0
63
Gemini を Raspberry Pi で走ら せた経験
cloudace
0
260
ADK / BigQueryで実現する分析エージェントのガバナンス設計
cloudace
1
53
【ガードレール】組織ポリシーで脆弱な設定を防ごう
cloudace
0
170
Cloud RunならDBも含めた ゼロスケールが可能? WordPressをゼロスケールさせた話
cloudace
0
37
Other Decks in Technology
See All in Technology
システム思考で問題に対処する
yussak
0
210
サイバー捜査員研修(前半)
nomizone
1
1.9k
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
150
変化の早いClaude Codeを 書籍に落とし込む
oikon48
7
1.3k
Software Supply Chain Attackからクラウド環境を守るためにできること
lhazy
2
220
クラウドセキュリティ入門 ~安全なクラウド利用のための基礎知識~
lhazy
12
8.4k
【CEDEC2026】ゲームシナリオライターを支援するAIツール開発の実践 ― 設計とプロンプトの工夫 ―
cygames
PRO
1
770
認知負荷をGemini で溶かす — GKE 基盤「Orbit」における AI エージェントの実践
sansantech
PRO
1
270
Invisible to AI? Making TYPO3 Sites Quotable by AI Search Systems
wolfgangwagner
0
170
【CEDEC2026】コードレビュー支援ツール開発から学ぶ:LLMを用いた業務システムの実践的な運用設計と誤出力対策
cygames
PRO
0
630
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
19k
AIは実装を速くする。では、私たちは何を今作るべきか?-立場を越えてリリースに向き合ったチーム開発の実践 / 20260801 Hiromi Nakaya and Naoki Takahashi
shift_evolve
PRO
3
450
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Into the Great Unknown - MozCon
thekraken
41
2.7k
From π to Pie charts
rasagy
0
260
YesSQL, Process and Tooling at Scale
rocio
174
15k
How GitHub (no longer) Works
holman
316
150k
GraphQLとの向き合い方2022年版
quramy
50
15k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
310
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
540
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
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による認証方法