Ayude a mejorar esta página
¿Quiere contribuir a esta guía del usuario? Desplácese hasta el final de esta página y seleccione Editar esta página en GitHub. Sus contribuciones ayudarán a que nuestra guía del usuario sea mejor para todos.
Actualizar el complemento Amazon VPC CNI plugin for Kubernetes de Amazon EKS
Actualice el tipo de Amazon EKS del complemento. Si aún no ha agregado el tipo de complemento de Amazon EKS a su clúster, agréguelo o consulte Actualización del complemento autoadministrado de Amazon EKS.
-
Consulte qué versión del complemento está instalada en el clúster. Reemplace
por el nombre del clúster.my-cluster
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni --query "addon.addonVersion" --output textUn ejemplo de salida sería el siguiente.
v1.16.4-eksbuild.2
Si la versión devuelta es la misma que la versión Kubernetes del clúster en la tabla de versiones más recientes, significa que ya tiene la última versión instalada en el clúster y no necesita completar el resto de este procedimiento. Si recibe un error, en lugar de un número de versión en la salida, significa que no tiene el tipo de versión de Amazon EKS en el clúster. Debe crear el complemento antes de poder actualizarlo mediante este procedimiento.
-
Guarde la configuración del complemento instalado actualmente.
kubectl get daemonset aws-node -n kube-system -o yaml >
aws-k8s-cni-old.yaml
-
Actualice el complemento con la AWS CLI. Si desea utilizar AWS Management Console o
eksctl
para actualizar el complemento, consulte Actualización de un complemento de Amazon EKS. Copie el comando que sigue en su dispositivo. Realice las siguientes modificaciones en el comando según sea necesario y, a continuación, ejecute el comando modificado.-
Reemplace
por el nombre del clúster.my-cluster
-
Reemplace
por la versión más reciente que aparece en la tabla de versiones más recientes de la versión de su clúster.v1.18.5-eksbuild.1
-
Reemplace
111122223333
por el ID de su cuenta yAmazonEKSVPCCNIRole
por el nombre del rol de IAM existente que creó. Para especificar un rol, es necesario disponer de un proveedor de IAM OpenID Connect (OIDC) para el clúster. Para determinar si ya tiene uno para su clúster o si debe crearlo, consulte Creación de un proveedor de OIDC de IAM para su clúster. -
La opción
CONSERVAR
de--resolve-conflicts
conserva los valores de configuración existentes del complemento. Si ha establecido valores personalizados para la configuración del complemento y no utiliza esta opción, Amazon EKS sobrescribe los valores con los valores predeterminados. Si utiliza esta opción, le recomendamos que pruebe cualquier cambio de campo y valor en un clúster que no sea de producción antes de actualizar el complemento del clúster de producción. Si cambia este valor aOVERWRITE
, todas las configuraciones cambiarán a los valores predeterminados de Amazon EKS. Si ha establecido valores personalizados para cualquier configuración, es posible que se sobrescriban con los valores predeterminados de Amazon EKS. Si cambia este valor anone
, Amazon EKS no cambia el valor de ninguna configuración, pero la actualización podría fallar. Si se produce un error en la actualización, recibe un mensaje de error que lo ayuda a resolver el conflicto. -
Si no va a actualizar un ajuste de configuración, elimine
--configuration-values '{
del comando. Si va a actualizar una configuración, sustituya"env":{"AWS_VPC_K8S_CNI_EXTERNALSNAT":"true"}
}'“env”: {“AWS_VPC_K8S_CNI_EXTERNALSNAT”:“true”}
por la configuración que desee establecer. En este ejemplo, la variable de entornoAWS_VPC_K8S_CNI_EXTERNALSNAT
se establece entrue
. El valor que especifique debe ser válido para el esquema de configuración. Si no conoce el esquema de configuración, ejecute aws eks describe-addon-configuration --addon-name vpc-cni --addon-version
y reemplacev1.18.5-eksbuild.1
v1.18.5-eksbuild.1
por el número de versión del complemento cuya configuración desea ver. El esquema se devuelve en la salida. Si ya tiene alguna configuración personalizada, quiere eliminarla toda y volver a establecer los valores de todos los ajustes en los valores predeterminados de Amazon EKS, elimine
del comando para que quede vacío“env”:{“AWS_VPC_K8S_CNI_EXTERNALSNAT”:“true”}
. Para obtener una explicación de cada configuración, consulte las Variables de configuración de CNI{}
en GitHub. 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"}
}'La actualización puede tardar varios segundos en completarse.
-
-
Confirme que la versión del complemento se ha actualizado. Reemplace
por el nombre del clúster.my-cluster
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cniLa actualización puede tardar varios segundos en completarse.
Un ejemplo de salida sería el siguiente.
{ "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\"}
}" } }