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
930
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
360
Datadog RUMを導入するまで
kkato1
0
180
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
2.4k
ウォンテッドリーのマイクロサービス運用・開発を加速する kube
kkato1
0
380
PostgreSQLのVACUUMとは
kkato1
3
3.6k
論理レプリケーションを使ったDB統合
kkato1
0
1.4k
ウォンテッドリーにおけるk8sマニフェストの管理方法
kkato1
0
380
DNSルックアップの回数制限でハマった話
kkato1
1
840
Other Decks in Technology
See All in Technology
AIがGISを代替する日:〜すべてをAIが創る時代に、私たちがFOSS4Gに関わる意味〜
lehupa
1
210
kaonavi Tech Night#2
kaonavi
0
110
視野はAIに、視座は人に / ai-for-breadth-humans-for-perspective
nkzn
6
3k
Lint の層を組み直した話
bengo4com
3
310
Flutter Widget Previewerで始めるUIプレビューとVRTの自動化
sakusaku3939
0
210
バックオフィスに染み出すTypeScript ── clasp で安全に仕組みを作る
nealle
1
180
20261031_IoTLT_vol140_kitazaki_v1.pdf
kitazaki
0
170
生成AI時代のIAMのマニアックな話
takuros
2
300
スマートロックを支えるFlutter × ネイティブ連携の実践 / Flutter and Native Integration in Practice: Powering Smart Locks
bitkey
PRO
0
150
AIに任せられるFlutterコードベースを作る 〜仕様をコードで表し、ハーネスで守る〜
myohei
1
630
リアクションエンジニア ― 小さなリアクションから、話しかけやすい組織をつくる ―
ryuguyana
1
120
kintoneで在庫管理システムを作るときの要件定義・設計ポイント
kai0707
0
230
Featured
See All Featured
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
790
Google's AI Overviews - The New Search
badams
0
1.7k
Designing for humans not robots
tammielis
254
26k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
370
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
Ethics towards AI in product and experience design
skipperchong
2
460
Paper Plane (Part 1)
katiecoart
PRO
2
12k
The browser strikes back
jonoalderson
0
1.9k
Writing Fast Ruby
sferik
630
63k
How STYLIGHT went responsive
nonsquared
100
6.3k
Between Models and Reality
mayunak
4
550
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