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.
-
Un clúster existente de Amazon EKS. Para implementar uno, consulte Introducción a Amazon EKS.
-
Un proveedor de AWS Identity and Access Management (IAM) OpenID Connect (OIDC) existente para su clúster. Para determinar si ya tiene un proveedor o para crear uno, consulte Creación de un proveedor de OIDC de IAM para su clúster.
-
Un rol de IAM con la política de IAM AmazonEKS_CNI_Policy (si el clúster utiliza la familia
IPv4
) o una política de IPv6 (si el clúster utiliza la familiaIPv6
) adjuntas. Para obtener más información acerca de los roles de CNI de VPC, consulte Configuración del complemento de CNI de Amazon VPC para utilizar IRSA. Para obtener más información acerca de la política IPv6, consulte Cree una política de IAM para clústeres que utilizan la familia IPv6. -
Si utiliza la versión
1.7.0
o posterior del Amazon VPC CNI plugin for Kubernetes Pod y utiliza políticas de seguridad del Eliminar la política de seguridad predeterminada del Pod de Amazon EKS personalizadas, consulte y Comprensión de las políticas de seguridad de Pod(PSP) creadas por 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)
Procedimiento
Después de completar los requisitos previos, siga los siguientes pasos para crear el complemento.
-
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
-
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.
-
Guarde la configuración del complemento instalado actualmente.
kubectl get daemonset aws-node -n kube-system -o yaml > aws-k8s-cni-old.yaml
-
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 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.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.
-
-
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
-
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).
-
(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-helperen GitHub.