【EKS】ALB Load Balancer Controller バージョンを更新する手順

本記事では、ALB Load Balancer Controller のバージョンを更新する手順について解説する。

dashboard

前提


今回は、下記ケースのEKSアドオンの更新を行う。

  • EKSクラスターバージョン:EKS 1.29
  • Helmを利用してALB Load Balancer Controllerをインストールしている

説明


EKSを運用していく上でバージョンアップ必要なサービスは大きく以下の3つに分けられる。

ALB Load Balancer Controllerとは、EKSの前段にALBを配置する際に利用するサービスの一つである。

  • EKSクラスター(kubernetes APIサーバー、kubernetes)
  • EKSノードグループ
  • EKSアドオン
  • ALB Load Balancer Controller

ALB Load Balancer Controller以外の3つのバージョンアップ手順についても、本ブログで詳細に解説している。

ダウンタイム・影響


バージョンアップ中のアプリケーションへのダウンタイム

ALB Load Balancer Controllerのバージョンアップ中に、そのEKSでホストしているアプリケーションに対して、ダウンタイムは基本発生しない。

ALB Load Balancer Controllerのバージョンアップは、デフォルトでは、他のPodと同様にローリングリスタートで行われるため、ダウンタイムは基本発生しない。

ALB Load Balancer Controllerのバージョンアップ戦略の詳細は、ALB Load Balancer ControllerのPodを確認するとよい。

バージョンアップ手順


EKSアドオンをバージョンアップする

  1. 下記コマンドを実行し、現在の ALB load balancer controller のバージョンを確認する
helm list -n kube-system
  1. 下記コマンドを実行し、コマンドでhelmチャートを更新する
helm repo update
  1. 下記コマンドを実行し、最新バージョンのhelm chartを確認する
helm search repo aws-load-balancer-controller
NAME                                    CHART VERSION   APP VERSION     DESCRIPTION
eks/aws-load-balancer-controller        1.7.2           v2.7.2          AWS Load Balancer Controller Helm chart for Kub...
  1. 下記コマンドを1行で実行し、アップデート先のバージョンを指定してアップデート({x.x.x} は上記の場合1.7.2)
helm upgrade aws-load-balancer-controller eks/aws-load-balancer-controller 
-n kube-system 
--version {x.x.x} 
--set clusterName=<cluster-name> 
--set serviceAccount.create=false
 --set serviceAccount.name=aws-load-balancer-controller

※ Error: repo eks not foundと言われた場合、下記を実行した上で4を実行

  1. 下記コマンドを実行し、現在の ALB load balancer controller のバージョンを確認する
helm list -n kube-system