Cómo crear la CNI de Amazon VPC (complemento de Amazon EKS) - Amazon EKS

Ayude a mejorar esta página

¿Quiere contribuir a esta guía del usuario? Elija el enlace Editar esta página en GitHub que se encuentra en el panel derecho de cada página. Sus contribuciones ayudarán a que nuestra guía del usuario sea mejor para todos.

Cómo crear la CNI de Amazon VPC (complemento de Amazon EKS)

Siga los siguientes pasos para crear el complemento Amazon VPC CNI plugin for Kubernetes en Amazon EKS.

Antes de empezar, revise las consideraciones. Para obtener más información, consulte Consideraciones.

Requisitos previos

Los siguientes son requisitos previos para el complemento Amazon VPC CNI plugin for Kubernetes en Amazon EKS.

importante

Las versiones v1.16.0 a v1.16.1 de Amazon VPC CNI plugin for Kubernetes eliminaron la compatibilidad con versiones 1.23 y anteriores de Kubernetes. La versión v1.16.2 de VPC CNI restaura la compatibilidad con las versiones 1.23 y anteriores de Kubernetes y las especificaciones v0.4.0 de CNI.

Las versiones v1.16.0 a v1.16.1 de Amazon VPC CNI plugin for Kubernetes implementan la versión v1.0.0 de la especificación CNI. La especificación v1.0.0 de CNI es compatibles con los clústeres de EKS que ejecutan las versiones v1.24 o posteriores de Kubernetes. Las versiones v1.16.0 a v1.16.1 de VPC CNI y la especificación v1.0.0 de CNI no son compatibles en las versiones v1.23 o anteriores de Kubernetes. Para obtener más información sobre la versión v1.0.0 de la especificación de CNI, consulte la Especificación de Interfaz de red de contenedores (CNI) en GitHub.

Procedimiento

Después de completar los requisitos previos, siga los siguientes pasos para crear el complemento.

  1. Consulte qué versión del complemento está instalada en el clúster.

    kubectl describe daemonset aws-node --namespace kube-system | grep amazon-k8s-cni: | cut -d : -f 3

    Un ejemplo de salida sería el siguiente.

    v1.16.4-eksbuild.2
  2. Consulte qué tipo del complemento está instalado en el clúster. Según la herramienta con la que haya creado el clúster, es posible que actualmente no tenga instalado el tipo de complemento Amazon EKS en el clúster. Reemplace my-cluster por el nombre de su clúster.

    aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni --query addon.addonVersion --output text

    Si se devuelve el número de versión, tiene el tipo de complemento de Amazon EKS instalado en el clúster y no es necesario que complete los pasos restantes del procedimiento. Si se devuelve un error, no tiene el tipo de complemento de Amazon EKS instalado en el clúster. Complete los pasos restantes de este procedimiento para instalarlo.

  3. Guarde la configuración del complemento instalado actualmente.

    kubectl get daemonset aws-node -n kube-system -o yaml > aws-k8s-cni-old.yaml
  4. Cree el complemento mediante la AWS CLI. Si desea utilizar AWS Management Console o eksctl para crear el complemento, consulteCómo crear un complemento de Amazon EKS y especifiquevpc-cni para el nombre del complemento. 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 my-cluster por el nombre de su clúster.

    • Sustituya v1.19.0-eksbuild.1 por la versión más reciente que aparece en la tabla de versiones más recientes correspondiente a la versión del clúster. Para obtener la tabla de la última versión, consulte Versiones de Amazon VPC CNI.

    • Sustituya 111122223333 por el ID de la cuenta y AmazonEKSVPCCNIRole 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.

      aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version v1.19.0-eksbuild.1 \ --service-account-role-arn arn:aws:iam::111122223333:role/AmazonEKSVPCCNIRole

      Si ha aplicado una configuración personalizada al complemento actual que entra en conflicto con la configuración predeterminada del complemento de Amazon EKS, es posible que se produzca un error en la creación. Si se produce un error en la creación, recibe un error que puede serle de utilidad para resolver el problema. Como alternativa, puede añadir --resolve-conflicts OVERWRITE al comando anterior. Esto permite que el complemento sobrescriba cualquier configuración personalizada existente. Una vez que haya creado el complemento, puede actualizarlo con la configuración personalizada.

  5. Confirme que la versión más reciente del complemento de la versión de su clúster de Kubernetes se haya agregado al clúster. Reemplace my-cluster por el nombre de su clúster.

    aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni --query addon.addonVersion --output text

    Es posible que la creación del complemento tarde varios segundos en completarse.

    Un ejemplo de salida sería el siguiente.

    v1.19.0-eksbuild.1
  6. Si ha realizado ajustes personalizados en el complemento original, antes de crear el complemento de Amazon EKS, utilice la configuración que guardó en el paso anterior para actualizar el complemento de EKS con su configuración personalizada. Siga los pasos de Cómo actualizar la CNI de Amazon VPC (complemento de Amazon EKS).

  7. (Opcional) Instale el cni-metrics-helper en su clúster. Extrae información de la interfaz de red elástica y la dirección IP, agrega métricas en todo el clúster y publica las métricas en Amazon CloudWatch. Para obtener más información, consulte cni-metrics-helper en GitHub.