もう⚪︎⚪︎ctlは使わない!GitとTerraformで実現するEKSの無停止アップグレードのメリットと手順

Proposal: (不採択)

中級者   Operation / Monitoring / Logging

kubectlやeksctlといったコマンド実行や、Management Consoleからの操作といった従来の方法を使わずに、Gitの機能とTerraformを駆使して無停止で本番稼働しているEKSをバージョンアップした事例を紹介します。

従来、開発チーム内では手作業によるバージョンアップを実施しており、設定ミスや手順のばらつきにより再現性の確保が難しい状況でした。また、作業にかかる時間と労力が大きな負担となっていました。

このアプローチではバージョンアップにおける全ての工程をteraform applyで実行しました。作業履歴や状態を完全にGitに残すことができるため、コマンドのミスによる事故の確率を大幅に減らすと同時に、状態管理による一貫性と再現性の確保を実現しています。
また、K8sのリソースを全てTerraformで管理することで、PodのスケジューリングをTerraform側でコントロールすることが可能となり、同時に作業の安全性を高めることにも成功しました。
本セッションでは、具体的な手順や得られた成果、さらにこのアプローチを実践して見えた課題について詳しく解説します。

Ryuichi Takei
株式会社SHIFT
インフラエンジニア

ネットワークエンジニアからキャリアをスタートさせ、OpenStackやOpenFlow系SDNを扱った仮想化基盤プロジェクトのリードエンジニア、ソリューションアーキテクトなどを経験し、2024年9月にSHIFTに入社。現在は内製開発チームのインフラを担っている。