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.9k
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
150
BitValleyInside_auポータルでの取り組み.pdf
masayoshimaezawa
0
410
re:Invent2018 report
masayoshimaezawa
0
46
某ポータルサイト リニューアルの話(インフラ)
masayoshimaezawa
0
99
$5からはじめるLightsail
masayoshimaezawa
3
370
Other Decks in Technology
See All in Technology
DMMの検索システムをSolrからElasticCloudに移行した話
hmaa_ryo
0
290
ストレージエンジニアの仕事と、近年の計算機について / 第58回 情報科学若手の会
pfn
PRO
4
920
AI機能プロジェクト炎上の 3つのしくじりと学び
nakawai
0
180
20251024_TROCCO/COMETAアップデート紹介といくつかデモもやります!_#p_UG 東京:データ活用が進む組織の作り方
soysoysoyb
0
140
アノテーション作業書作成のGood Practice
cierpa0905
PRO
1
330
猫でもわかるAmazon Q Developer CLI 解体新書
kentapapa
1
180
オブザーバビリティが育むシステム理解と好奇心
maruloop
3
1.7k
Okta Identity Governanceで実現する最小権限の原則
demaecan
0
210
【SORACOM UG Explorer 2025】さらなる10年へ ~ SORACOM MVC 発表
soracom
PRO
0
180
ざっくり学ぶ 『エンジニアリングリーダー 技術組織を育てるリーダーシップと セルフマネジメント』 / 50 minute Engineering Leader
iwashi86
6
3.7k
個人でデジタル庁の デザインシステムをVue.jsで 作っている話
nishiharatsubasa
3
5.3k
AIとの協業で実現!レガシーコードをKotlinらしく生まれ変わらせる実践ガイド
zozotech
PRO
2
190
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Visualization
eitanlees
150
16k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
It's Worth the Effort
3n
187
28k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
940
Designing for Performance
lara
610
69k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
116
20k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Balancing Empowerment & Direction
lara
5
710
Agile that works and the tools we love
rasmusluckow
331
21k
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 ご清聴 ありがとうございました