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
Amazon EKS マルチテナントクラスターにおける ArgoCDを利用した デプロイフローの話
Search
masayosu
June 08, 2022
Technology
0
4.7k
Amazon EKS マルチテナントクラスターにおける ArgoCDを利用した デプロイフローの話
masayosu
June 08, 2022
Tweet
Share
More Decks by masayosu
See All by masayosu
Kubernetes-Meetup-Tokyo-53
masayoshimaezawa
1
1.3k
CircleCI_meetup7.pdf
masayoshimaezawa
1
140
BitValleyInside_auポータルでの取り組み.pdf
masayoshimaezawa
0
400
re:Invent2018 report
masayoshimaezawa
0
41
某ポータルサイト リニューアルの話(インフラ)
masayoshimaezawa
0
92
$5からはじめるLightsail
masayoshimaezawa
3
360
Other Decks in Technology
See All in Technology
Coding Agentに値札を付けろ
watany
3
510
テストコードにはテストの意図を込めよう(2025年版) #retechtalk / Put the intent of the test 2025
nihonbuson
PRO
7
1.5k
250510 StepFunctionのテスト自動化始めました vol.1
east_takumi
1
230
非root化Androidスマホでも動く仮想マシンアプリを試してみた
arkw
0
130
AI駆動で進化する開発プロセス ~クラスメソッドでの実践と成功事例~ / aidd-in-classmethod
tomoki10
1
1.1k
DynamoDB のデータを QuickSight で可視化する際につまづいたこと/stumbling-blocks-when-visualising-dynamodb-with-quicksight
emiki
0
160
雑に疎通確認だけしたい...せや!CloudShell使ったろ!
alchemy1115
0
220
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
4
1.5k
Simplify! 10 ways to reduce complexity in software development
ufried
2
250
LangfuseではじめるAIアプリのLLMトレーシング
codenote
0
160
Software Architecture in an AI-Driven World
atty303
13
5.4k
転職したらMCPサーバーだった件
nwiizo
1
590
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
71
4.8k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
GitHub's CSS Performance
jonrohan
1031
460k
Gamification - CAS2011
davidbonilla
81
5.3k
Facilitating Awesome Meetings
lara
54
6.4k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
The Cult of Friendly URLs
andyhume
78
6.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Bash Introduction
62gerente
613
210k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Transcript
Amazon EKS マルチテナントクラスターにおける ArgoCDを利用した デプロイフローの話 id:masayosu / @masayosu 2022/06/07 Hatena
Engineer Seminar #20 AWS Renovation 編 1
自己紹介 • id: masayosu • Twitter: @masayosu • 組織・基盤開発本部 プラットフォーム部
サービスプラットフォームチーム SRE • 趣味 ◦ 登山、キャンプ、ゲーム 2
サービスプラットフォームチームについて • 新旧多くのサービスを抱えているチーム ◦ はてなポータル、はてなスター、匿名ダイアリー • 少数(精鋭?) • 以降のスライドではSPFと表記します 3
はてなにおけるKubernetes • 2019年に撤退の話 ◦ MackerelにおけるKubernetes利用の取組みとこれか ら / Kubernetes Meetup Tokyo
#22 4
撤退の理由 • 自前クラスタ運用 ◦ 構築当時は東京リージョンにEKSが存在していなかった • 学習コストが高い ◦ クラスタ構築/運用含めて 5
撤退の理由 • 人員不足 ◦ 1~1.5人で運用 • クラスタバージョンアップに失敗 6
SPFがKubernetesを使う背景 • 社内にKubernetesの知見をFBする • EKSが東京リージョンに対応 (2018/12/20) • マイクロサービス(ぽいもの)な持ち物が多い • KubernetesのエコシステムとGitOpsを利用した自動的、統一されたリ
リース方法 7
EKSの構成 8
詳しくはこちら https://developer.hatenastaff.com/entry/2022/02/03/100525 9
CIについて 10 • GithubActions • Application Test & Manifest Test
◦ Polarisを利用 ◦ Image取得可能なリポジトリをホワイトリスト管理
• AWS Loadbalancer Controller をDockerHubから取得 • DockerHubのRatelimit • Imageが取得できずCrashLoop Polaris導入の背景
11
CDについて • ArgoCDを利用 ◦ GitOpsと相性の良いPull型のCDツール ◦ Kubernetesクラスタ上で動く( GKE上で動作している) ◦ 複数のクラスターをターゲットとしてデプロイ可能
12
デプロイフロー 13
デプロイフロー 14
• クラスタは BlueGreen 方式でバージョンアップ ◦ インプレースアップグレードは不可逆なため ◦ 複数バージョンを一気にあげたい ▪ SREリソースの問題でバージョンアップをスキップすることもある
• BlueGreenクラスタに同じアプリケーションをデプロイ クラスターバージョンアップ 15
クラスターバージョンアップ 16
• Pros ◦ 新旧クラスタに自動的にデプロイされて便利 ◦ ArgoCDのUI上で問題が発生しているかひと目でわかる • Cons ◦ ArgoCDの設定を新旧クラスタ分作成する必要があって煩雑
クラスターバージョンアップ 17
18 ちょっと話はそれますが
先日はてなアンテナが20周年を迎えました https://labo.hatenastaff.com/entry/antenna-20th 19
20 はてなアンテナも EKSで動いています
まとめ • EKSのデプロイフローを紹介しました ◦ 新旧問わず全てのサービスが統一されたデプロイフローで動いている ◦ デプロイフローが統一されているとリリース作業の負担が少ない • はてなKubernetes使ってます 21
今後検討していること • ArgoCDのApplicationSetを利用する ◦ クラスタバージョンアップ作業を楽にする • ArgoRolloutでBlueGreen Deploymentを検証 ◦ 必要になった時の準備
• はてなのEKS社内標準構成を検討 22
23 ご清聴 ありがとうございました