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
EKSの運用あれこれ バージョンアップ編
Search
tetsunosato
June 27, 2022
Technology
1
820
EKSの運用あれこれ バージョンアップ編
2022/6/27(月) AWS好きエンジニア LT会 vol.2 #5
tetsunosato
June 27, 2022
Tweet
Share
Other Decks in Technology
See All in Technology
【Oracle Cloud ウェビナー】クラウド導入に「専用クラウド」という選択肢、Oracle AlloyとOCI Dedicated Region とは
oracle4engineer
PRO
3
110
Escaping_the_Kraken_-_October_2025.pdf
mdalmijn
0
140
Why Governance Matters: The Key to Reducing Risk Without Slowing Down
sarahjwells
0
110
バイブコーディングと継続的デプロイメント
nwiizo
2
430
10年の共創が示す、これからの開発者と企業の関係 ~ Crossroad
soracom
PRO
1
220
小学4年生夏休みの自由研究「ぼくと Copilot エージェント」
taichinakamura
0
190
KAGのLT会 #8 - 東京リージョンでGAしたAmazon Q in QuickSightを使って、報告用の資料を作ってみた
0air
0
200
LLMアプリケーション開発におけるセキュリティリスクと対策 / LLM Application Security
flatt_security
7
1.9k
ZOZOのAI活用実践〜社内基盤からサービス応用まで〜
zozotech
PRO
0
180
Large Vision Language Modelを用いた 文書画像データ化作業自動化の検証、運用 / shibuya_AI
sansan_randd
0
110
許しとアジャイル
jnuank
1
130
[2025-09-30] Databricks Genie を利用した分析基盤とデータモデリングの IVRy の現在地
wxyzzz
0
480
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
BBQ
matthewcrist
89
9.8k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Navigating Team Friction
lara
189
15k
Site-Speed That Sticks
csswizardry
11
880
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
890
Transcript
EKSの運用あれこれ バージョンアップ編
自己紹介 • 宮國 哲生 • ビッグツリーテクノロジー&コンサルティング (2017~) • DX事業部/クラウド CoE
• Kubernetes歴:約3年 • 2021 APN AWS Top Engineer
このLTの目標 • LTに慣れる(デビュー戦) • EKSのバージョンアップについて思うところを述べる →みなさんのEKSのバージョンアップ作業に関するヒントになったらうれしい
EKS考える事いっぱい • Kubernetesの概念もAWSのベストプラクティスも分かったうえで、適切に組み合わせる必要性 →の割に設計や構築のノウハウがあまり転がってなくて苦労してきた。 • クラスタ構成: シングルクラスタ/マルチクラスタ • データプレーン:EKS on
EC2 or Fargate • クラスタ(&ネットワーク)構築方法:eksctl、CFn、Terraform etc • バージョンアップ: インプレース/ブルーグリーン • 各種アドオン: どれを採用…? • セキュリティ: マネージドサービスを組み合わせつつどこまでやる…?
EKS考える事いっぱい うわあ
EKS考える事いっぱい • EKSに関わる各種技術要素で、どういう考えで採用して、実際に構築・運用してみてどう 思ったかをつらつらと述べていく活動をやっていきたい。 →今日のLTはその練習
バージョンアップ: 無視できない作業です • EKSを採用し、運用していく中で避けられない作業 • 1年で3回のリリース →バージョンアップノウハウの確立は大事 https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html
バージョンアップ: インプレース or ブルーグリーン インプレースバージョンアップ <メリット> • アップデートの作業が少なくすむ →クラスタが変わらないので、CI/CDツールの設定や 監視ツールのダッシュボードを直さなくてすむ
<デメリット> • 問題が発生した際にバージョンを戻すことができない • EKSがデフォルトで適用している各種アドオン(KubeProxy等)のバージョンアップを自分たちでやる 必要がある Cluster v1.21 nodegroup v1.22 nodegroup node node node node
バージョンアップ: インプレース or ブルーグリーン ブルーグリーンバージョンアップ <メリット> • 新バージョンの検証を行った上で切り替えることができる • 上手くいかなかった場合に戻せる保険がある
<デメリット> • 切替手順が複雑 • 旧環境と新環境向けの資材を正しく管理しておく必要がある • クラスタが2つあることによるオペミスが起こりうる Green Cluster Blue Cluster v1.21 nodegroup v1.22 nodegroup node node node node
バージョンアップ: ブルーグリーンってどうなんだい • ブルーグリーンバージョンアップデメリット多すぎ…? →上手くいかなかった場合にバージョンを戻せる →各種アドオンのバージョンアップグレード検証、アプリケーションの動作確認などをゆっくり行える →心理的に安全な分ブルーグリーンの方がうれしい • 旧環境と同等の環境をいかに素早く簡単にコピーできるか、がカギ →veleroやargocdの利用を合わせて検討した方がよい
→argocdのエクスポート/インポート機能を利用中
バージョンアップ: 準備 • バージョンアップ作業でまずやるのが、事前の影響調査&スケジュール検討 <影響調査> • Kubernetes自体のバージョンアップの影響 • 各種機能のα、β、GA、非推奨、廃止の状況を確認。 •
EKS、eksctl特有の変更要素 • 1.22時点ではまだdocker→containerdへは設定変更が必要。 • 各種アドオンのバージョンアップ要否 • 各種アドオンのインストール手順、リリースノート、変更履歴を漁って、バージョンアップ要否を決める。 →結構インストール手順はころころかわる →入れるアドオンが多ければ多いほどタイヘン • アプリケーションへの影響 • 二重稼働ができないジョブ等が動かない期間に実施(もしくは止める)
バージョンアップ: ブルーグリーン切替手順 正直詳細な手順を書いてもすぐに陳腐化するので、作業者が「バージョンアップ慣れ」することが大事。大体の流れは以下。 • ArgoCD設定エクスポート • Green Cluster向け資材修正 • Green
Cluster接続環境セットアップ • Cluster&NodeGroup作成 • ArgoCD設定インポート • 必要に応じてアドオン最新バージョンインストール • CI/CD設定変更 • CloudFrontビヘイビア変更 • 監視設定変更
バージョンアップ: 頻度 • バージョンアップは毎回必ずやる必要はある? →必須ではないが、できる限り毎回やった方がいいと思う まとめてバージョンアップすると、 変更要素が多い分追従が大変 作業者もバージョンアップのノウハウがたまっていかない • 問題が発生するリスクが増えると思う
バージョンアップ: まとめ • EKSのバージョンアップ戦略について、思うところをつらつらと • インプレースの方が作業量は少ない、ブルーグリーンの方が安心。ブルーグリーン大好き。 • ブルーグリーンの場合、旧環境と同等の環境をいかに素早く簡単にコピーできるか、がカギ • バージョンアップの影響調査はKubernetes自体、EKS特有、各種アドオン、アプリケーション等多
角的に調査 • 詳細な手順を作っても陳腐化しやすいので、運用作業者がバージョンアップの一連の作業に慣れ ることが大事 • バージョンアップはできるだけ毎回やった方がリスクは減る