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
入社後初めてのタスクでk8sアップグレードした話.pdf
Search
Ken Kato
April 09, 2024
Technology
910
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
入社後初めてのタスクでk8sアップグレードした話.pdf
Ken Kato
April 09, 2024
More Decks by Ken Kato
See All by Ken Kato
Blue/Green Deployment を用いた PostgreSQL のメジャーバージョンアップ
kkato1
1
330
Datadog RUMを導入するまで
kkato1
0
160
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
2.3k
ウォンテッドリーのマイクロサービス運用・開発を加速する kube
kkato1
0
360
PostgreSQLのVACUUMとは
kkato1
3
3.5k
論理レプリケーションを使ったDB統合
kkato1
0
1.3k
ウォンテッドリーにおけるk8sマニフェストの管理方法
kkato1
0
360
DNSルックアップの回数制限でハマった話
kkato1
1
790
Other Decks in Technology
See All in Technology
10Xに技術的負債をもたらした「2つの境界の歪み」その構造と解消への営み
10xinc
0
2.4k
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
890
Issue 駆動でスペシャリストの意図を届ける、AI 実装のアクセシビリティ向上
thkt
0
130
品質と信頼性を地続きにする
grimoh
2
950
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
2
1.5k
エージェントはローカル、検証はMicroVM — Lambda MicroVMsでつくるServerless CI
fujioka6789
3
700
AI時代の「技術的負債」の変質ー概念の終焉と再解釈、エージェントと共に向かう先
nwiizo
1
3.2k
Why Agent Cost Needs Observability
nttcom
0
140
GoのInterface内部構造から学ぶ!最高パフォーマンスを出すコード設計
yappli_developers
1
250
What the customer really needed
kawaguti
PRO
3
220
AI coding 整合正規方法
philipz
0
500
作って終わりじゃないサーバーレス 〜9年運用する大規模EC物流API基盤の設計・運用のリアル〜
zozotech
PRO
0
460
Featured
See All Featured
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
720
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
580
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Ruling the World: When Life Gets Gamed
codingconduct
0
350
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Raft: Consensus for Rubyists
vanstee
142
7.7k
Speed Design
sergeychernyshev
33
2.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Facilitating Awesome Meetings
lara
57
7.1k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Transcript
© 2024 Wantedly, Inc. 入社後初めてのタスクで k8s アップグレードした話 Kubernetes Novice Tokyo
#31 April 9 2024 - Ken Kato
© 2024 Wantedly, Inc. 自己紹介 加藤 健 所属:ウォンテッドリー株式会社 職種:インフラエンジニア 趣味:ボルダリング
🧗
© 2024 Wantedly, Inc. 前置き 2024年1月 ウォンテッドリーに入社 2024年2月 k8s アップグレード実施
(4週間)
© 2024 Wantedly, Inc. 目次 • ウォンテッドリーの k8s 構成 •
ウォンテッドリーの k8s アップグレード戦略 • 手順 • 感想
© 2024 Wantedly, Inc. ウォンテッドリーのk8s構成 2016年からKubernetesを本番環境で運用している • Amazon EKS •
3つのクラスタ ◦ production ◦ qa ◦ sandbox • マイクロサービス: 100個以上 • 各クラスタのノード台数: 40~80くらい • k8s クラスタアドオン: 34個 (内EKSアドオンが4個) ◦ Wantedly Kubernetes クラスタアドオン大全 2023
© 2024 Wantedly, Inc. ウォンテッドリーの k8s アップグレード戦略 ① • 3ヶ月に1回
アップグレード を行なっている ◦ EOLに追いつかれないように、3ヶ月に1回の頻度でアップグレードしている ◦ 現在のバージョンは1.28 Kubernetes バージョン 標準サポート終了日 (EOL) 1.29 2025年3月23日 1.28 2024年11月26日 1.27 2024年7月24日 1.26 2024年6月11日 1.25 2024年5月1日 参考: https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/kubernetes-versions.html 4ヶ月 4ヶ月 1ヶ月 1ヶ月
© 2024 Wantedly, Inc. ウォンテッドリーの k8s アップグレード戦略 ② • 基本的には
In-place ◦ 3環境あるので、どこかで問題に気づけるはず ◦ リスクがある場合はBlue / Green (クラスタ移行)を実施する ノードA ノードB ノードC ノードC’ ノードB’ ノードA’ 古いノードグループ 古いノードグループ 新しいノードグループ
© 2024 Wantedly, Inc. ウォンテッドリーの k8s アップグレード戦略 ③ • 事前にアドオンをアップグレードする
◦ アドオンがクラスタの新バージョンに対応していないことがある ◦ k8s アップグレードとは別に定期的にアドオンのアップグレードを実施している ウォンテッドリーでは以下のツールを使ってアドオンのアップグレードを効率化 Argo CD Helmfile Renovate
© 2024 Wantedly, Inc. 手順 sandbox -> qa -> productionの順番でアップグレードする
Terraformで管理していて、PRベースで実施している 1. k8s / EKS、アドオンの破壊的変更の確認 ◦ 対応が必要なものはアップグレード前に実施する 2. コントロールプレーンのアップグレード 3. ノードのアップグレード ◦ Elasticsearchノードの入れ替え ◦ メインノードの入れ替え 4. EKSアドオンのアップグレード 5. kubectlのアップグレード
© 2024 Wantedly, Inc. 感想 • よかった点 ◦ 手順が確立されていて初めてでもスムーズに進められた ◦
先輩社員が1人サポートについてくれたので心強かった • 苦労した点 ◦ 破壊的変更の確認が大変だった ◦ StatefulSetをrollout restartして新しいノードに再配置するのに時間がかかった
© 2024 Wantedly, Inc. We are hiring! https://www.wantedly.com/projects/522096