

 **Ayude a mejorar esta página** 

Para contribuir a esta guía del usuario, elija el enlace **Edit this page on GitHub** que se encuentra en el panel derecho de cada página.

# Cómo crear la CNI de Amazon VPC (complemento de Amazon EKS)
<a name="vpc-add-on-create"></a>

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

Antes de empezar, revise las consideraciones. Para obtener más información, consulte [Consideraciones](managing-vpc-cni.md#manage-vpc-cni-add-on-on-considerations).

## Requisitos previos
<a name="vpc-add-on-create-prerequisites"></a>

Los siguientes son requisitos previos para el complemento CNI de Amazon VPC para Kubernetes en Amazon EKS.
+ Un clúster existente de Amazon EKS. Para implementar uno, consulte [Introducción a Amazon EKS](getting-started.md).
+ Un proveedor existente de OpenID Connect (OIDC) de AWS Identity and Access Management (IAM) para su clúster. Para determinar si ya tiene un proveedor o para crear uno, consulte [Crear un proveedor de OIDC de IAM para su clúster](enable-iam-roles-for-service-accounts.md).
+ Un rol de IAM con la política de IAM [AmazonEKS\_CNI\_Policy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKS_CNI_Policy.html) (si el clúster utiliza la familia `IPv4`) o una política de IPv6 (si el clúster utiliza la familia `IPv6`) 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](cni-iam-role.md). 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`](cni-iam-role.md#cni-iam-role-create-ipv6-policy).

**importante**  
Las versiones de la `v1.16.0` a la `v1.16.1` del complemento CNI de Amazon VPC para Kubernetes implementan la versión de especificación de CNI `v1.0.0`. Para obtener más información sobre la especificación de CNI `v1.0.0`, consulte [Container Network Interface (CNI) Specification](https://github.com/containernetworking/cni/blob/spec-v1.0.0/SPEC.md) en GitHub.

## Procedimiento
<a name="vpc-add-on-create-procedure"></a>

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
   ```

1. 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.

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

   ```
   kubectl get daemonset aws-node -n kube-system -o yaml > aws-k8s-cni-old.yaml
   ```

1. Cree el complemento mediante la AWS CLI. Si desea utilizar Consola de administración de AWS o `eksctl` para crear el complemento, consulte[Cómo crear un complemento de Amazon EKS](creating-an-add-on.md) y especifique`vpc-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.20.3-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 CNI de Amazon VPC](managing-vpc-cni.md#vpc-cni-latest-available-version).
   + Sustituya {{111122223333}} por el ID de la cuenta y {{AmazonEKSVPCCNIRole}} por el nombre del [rol de IAM existente](cni-iam-role.md#cni-iam-role-create-role) que creó. Para especificar un rol, es necesario disponer de un proveedor de OpenID Connect (OIDC) de IAM para el clúster. Para determinar si ya tiene uno para su clúster o si debe crearlo, consulte [Crear un proveedor de OIDC de IAM para su clúster](enable-iam-roles-for-service-accounts.md).

     ```
     aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version v1.20.3-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.

1. 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.20.3-eksbuild.1
   ```

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)](vpc-add-on-update.md).

1. (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](https://github.com/aws/amazon-vpc-cni-k8s/blob/master/cmd/cni-metrics-helper/README.md) en GitHub.