このページの改善にご協力ください
本ユーザーガイドの改善にご協力いただけませんか? このページの下部までスクロールし、[GitHub でこのページの編集] を選択します。皆さまにご協力いただくことで、あらゆる人々に使いやすいユーザーガイドになります。
Amazon VPC CNI plugin for Kubernetes Amazon EKS アドオンの更新
Amazon EKS タイプのアドオンを更新します。Amazon EKS タイプのアドオンをクラスターに追加していない場合は、アドオンを追加するか、「セルフマネージド Amazon EKS アドオンの更新」を参照してください。
-
クラスターにインストールされているアドオンのバージョンを確認します。
をクラスター名に置き換えます。my-cluster
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni --query "addon.addonVersion" --output text出力例は次のとおりです。
v1.16.4-eksbuild.2
返されたバージョンが、最新バージョンの表にあるクラスターの Kubernetes バージョンのバージョンと同じである場合は、既に最新バージョンがクラスターにインストールされているため、この手順の残りを完了する必要はありません。出力にバージョン番号ではなくエラーが表示される場合は、Amazon EKS タイプのアドオンがクラスターにインストールされていません。この手順でアドオンを更新する前に、アドオンを作成する必要があります。
-
現在インストールされているアドオンの設定を保存します。
kubectl get daemonset aws-node -n kube-system -o yaml >
aws-k8s-cni-old.yaml
-
AWS CLI を使用してアドオンを更新します。AWS Management Console または
eksctl
を使用してアドオンを更新する場合は、「Amazon EKS アドオンの更新」を参照してください。デバイスに沿ったコマンドをコピーします。必要に応じてコマンドに次の変更を加え、変更したコマンドを実行します。-
を自分のクラスター名に置き換えます。my-cluster
-
を、クラスターバージョンの最新バージョンの表に記載されている最新バージョンに置き換えます。v1.18.5-eksbuild.1
-
111122223333
を、アカウント ID に置き換えます。また、AmazonEKSVPCCNIRole
を、作成した既存の IAM ロールの名前に置き換えます。ロールを指定するには、クラスター用に IAM OpenID Connect (OIDC) プロバイダーが必要です。クラスター用に持っているかどうかを確認、あるいは作成するには、「クラスターの IAM OIDC プロバイダーを作成する」を参照してください。 -
--resolve-conflicts
PRESERVE
オプションはアドオンの既存の設定値を保存します。アドオン設定にカスタム値を設定していて、このオプションを使用しない場合、Amazon EKS は値をデフォルト値で上書きします。このオプションを使用する場合、実稼働クラスターのアドオンを更新する前に、非稼動クラスターのフィールドおよび値変更をテストすることをお勧めします。この値をOVERWRITE
に変更する場合、すべての設定が Amazon EKS のデフォルト値に変更されます。いずれかの設定にカスタム値を設定した場合、Amazon EKS のデフォルト値で上書きされる可能性があります。この値をnone
に変更した場合、Amazon EKS は設定の値を一切変更しませんが、更新が失敗する可能性があります。更新に失敗した場合、競合の解決に役立つエラーメッセージが返されます。 -
構成設定を更新しない場合は、コマンドから
--configuration-values '{
を削除します。構成設定を更新する場合は、"env":{"AWS_VPC_K8S_CNI_EXTERNALSNAT":"true"}
}'"env":{"AWS_VPC_K8S_CNI_EXTERNALSNAT":"true"}
を、希望する設定に置き換えます。この例では、AWS_VPC_K8S_CNI_EXTERNALSNAT
環境変数はtrue
に設定されています。指定する値は、設定スキーマに対して有効である必要があります。設定スキーマが不明である場合は、aws eks describe-addon-configuration --addon-name vpc-cni --addon-version
を実行して、v1.18.5-eksbuild.1
v1.18.5-eksbuild.1
を、設定を表示するアドオンのバージョン番号に置き換えます。出力でスキーマが返されます。既存のカスタム設定があり、それをすべて削除してすべての設定の値を Amazon EKS のデフォルトに戻したい場合は、コマンドから
を削除して、"env":{"AWS_VPC_K8S_CNI_EXTERNALSNAT":"true"}
が空になるようにします。各設定の説明については、GitHub の「CNI 設定変数{}
」を参照してください。 aws eks update-addon --cluster-name
my-cluster
--addon-name vpc-cni --addon-versionv1.18.5-eksbuild.1
\ --service-account-role-arn arn:aws:iam::111122223333
:role/AmazonEKSVPCCNIRole
\ --resolve-conflictsPRESERVE
--configuration-values '{"env":{"AWS_VPC_K8S_CNI_EXTERNALSNAT":"true"}
}'更新が完了するまでに数秒かかる場合があります。
-
-
アドオンのバージョンが更新されたことを確認します。
を自分のクラスター名に置き換えます。my-cluster
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni更新が完了するまでに数秒かかる場合があります。
出力例は次のとおりです。
{ "addon": { "addonName": "vpc-cni", "clusterName": "
my-cluster
", "status": "ACTIVE", "addonVersion": "v1.18.5-eksbuild.1
", "health": { "issues": [] }, "addonArn": "arn:aws:eks:region
:111122223333
:addon/my-cluster
/vpc-cni/74c33d2f-b4dc-8718-56e7-9fdfa65d14a9
", "createdAt": "2023-04-12T18:25:19.319000+00:00", "modifiedAt": "2023-04-12T18:40:28.683000+00:00", "serviceAccountRoleArn": "arn:aws:iam::111122223333
:role/AmazonEKSVPCCNIRole
", "tags": {}, "configurationValues": "{\"env\":{\"AWS_VPC_K8S_CNI_EXTERNALSNAT\":\"true\"}
}" } }