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
Multi-cluster deployment using ArgoCD x Connect...
Search
izumiiii
July 04, 2023
Technology
0
210
Multi-cluster deployment using ArgoCD x Connect Gateway
izumiiii
July 04, 2023
Tweet
Share
More Decks by izumiiii
See All by izumiiii
CircleCIの実行時間を大幅に短縮した話
izumiiii
0
59
スタートアップが挑むクラウドネイティブなマルチリージョン戦略
izumiiii
0
110
GKE Autopilotのコストを9000円/日から2000円/日へ!
izumiiii
0
560
Other Decks in Technology
See All in Technology
Google Cloud で始める Cloud Run 〜AWSとの比較と実例デモで解説〜
risatube
PRO
0
120
AWS re:Invent 2024 recap
hkoketsu
0
610
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
340
英語が苦手でも学びが得られるWorkshopについて / About the workshop of re:Invent 2024
taquakisatwo
0
600
.NET 9 のパフォーマンス改善
nenonaninu
0
1.8k
20241220_S3 tablesの使い方を検証してみた
handy
4
800
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
1
360
Working as a Server-side Engineer at LY Corporation
lycorp_recruit_jp
0
460
株式会社ログラス − エンジニア向け会社説明資料 / Loglass Comapany Deck for Engineer
loglass2019
3
32k
DevFest 2024 Incheon / Songdo - Compose UI 조합 심화
wisemuji
0
220
事業貢献を考えるための技術改善の目標設計と改善実績 / Targeted design of technical improvements to consider business contribution and improvement performance
oomatomo
0
180
サーバーなしでWordPress運用、できますよ。
sogaoh
PRO
0
150
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Side Projects
sachag
452
42k
Mobile First: as difficult as doing things right
swwweet
222
9k
Automating Front-end Workflow
addyosmani
1366
200k
Practical Orchestrator
shlominoach
186
10k
Fireside Chat
paigeccino
34
3.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Making Projects Easy
brettharned
116
6k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Designing Experiences People Love
moore
139
23k
Rails Girls Zürich Keynote
gr2m
94
13k
Transcript
ArgoCD x Connect Gatewayを活用したマルチクラスターデプロイ Kubernetes Meetup Novice #26
自己紹介 名前 Koizumi Fumiya Twitter izumiiii @izumiiii9 Blog https://izumiiii.com 会社
株式会社Resilire 普段していること インフラ業務メインで、最近はよくKubernetesを触っています。 2
提供プロダクト Resilreの提供価値と機能 3 サプライチェーンリスク管理SaaS Resilire サプライチェーン全体(社内拠点や委託先、原料 調達先)をツリー上で構造的に管理。災害時、被 災影響の可能性がある拠点をマップ上で可視化・ リスト化。リストの拠点に自動でアンケート配信か ら回答結果のレポート生成を可能にするプロダク
トを提供しています。 3
既存のインフラアーキテクチャ簡易版 4
既存のCI/CD 既存のCI/CDはGithub Actionsで全て行っているため、dev/stg/prodである程度アプリケーション数がある場合にメンテナ ンスコストが上がってしまいます。 5
初期状況と課題 • Cloud RunへデプロイするGithub Actionsのコードが肥大化しており、メンテナンスコストが上がっていた。 • リアーキテクチャにより、サービスを洗い出した時に、アプリケーション数が増えることが想定されていたため、現状の 運用だとさらに、Github Actionsへのコードが増えて、肥大化してしまう。 •
グローバル構成を見据えることを考えると、Cloud Runではリージョン毎にサービスが増えるため、管理コストが上がっ てしまう。 6
Kubernetesとマルチクラスターデプロイの課題 1. 課題 a. Kubernetesはコンテナオーケストレーションのデファクトスタンダードであり、スケーラビリティ、自動化、そしてデ プロイメントの管理を円滑に行うためのツール。しかし、マルチクラスターデプロイには困難が伴う。 b. それぞれのクラスタで状態を一貫して保つための設定や管理が必要。 2. 解決策
a. ArgoCDとArgoCD Image Updater、そしてConnect Gatewayの組み合わせ。これらのツールを使用することで、 マルチクラスターデプロイの課題に対しての有効なソリューションになる。 7
ArgoCDの導入とそのメリット • ArgoCDは、デプロイメントプロセスを自動化し、管理を容易にするための強力なツール。 • GitOpsの手法により、KubernetesのマニフェストをGitリポジトリで管理することができ、これにより、インフラストラク チャの変更履歴がGitのコミットと一致し、誰が何を変更したのかを容易に追跡。 • ArgoCDはマルチクラスター環境でのデプロイメント管理を一元化。 • 複数のKubernetesクラスターにまたがるデプロイメントの複雑さを大幅に軽減。また、自動化された同期機能により、
リポジトリの状態と実際のクラスター状態が一致していることを保証。 8
ArgoCD Image Updaterの活用 ArgoCD Image Updaterの活用により、デプロイされるイメージのバージョン管理を自動化することができ、これにより、手 動でのアップデートを行う必要がなくなり、デプロイの効率化と安全性が大幅に向上する。 9
Connect Gatewayの組み込み Connect Gatewayを組み込むことで、クラスタ間通信のセキュリティを強化しつつ、マルチクラスタでのサービスデプロイを 簡単にできる。これにより、クラスタ全体の運用がより効率的かつ安全に。 10
実際の構成 • ArgoCDのApplicationSetのList Generatorを使い、アプリケーションを複数のクラスターに登録。 • マルチクラスタに対応したディレクトリ構成にすることで、list elementsから値を使用して構成クラスタ、メンバークラスタで 差異のあるデプロイも対応。 • ArgoCD
Image UpdaterはApplicationSetにannotationsとして付与して、マルチクラスタに対応。 11
まとめ • Kubernetesでのマルチクラスターデプロイの課題が存在。 • ArgoCD, ArgoCD Image Updater, Connect Gatewayを使用することで、マルチクラスタに対応したデプロイを実現。
• さらに、ArgoCD ApplicationSet x Kustomizeを用いることで、より快適なリソース管理をすることができる。 12
ご清聴ありがとうございました。