

 **Ajudar a melhorar esta página** 

Para contribuir com este guia de usuário, escolha o link **Editar esta página no GitHub**, disponível no painel direito de cada página.

# Criação do plug-in da CNI da Amazon VPC (complemento do Amazon EKS)
<a name="vpc-add-on-create"></a>

Use as etapas a seguir para criar o complemento do plug-in CNI da Amazon VPC para Kubernetes para Amazon EKS.

Antes de começar, reveja as considerações. Para obter mais informações, consulte [Considerações](managing-vpc-cni.md#manage-vpc-cni-add-on-on-considerations).

## Pré-requisitos
<a name="vpc-add-on-create-prerequisites"></a>

Veja abaixo os pré-requisitos para o complemento do plug-in CNI da Amazon VPC para Kubernetes para Amazon EKS.
+ Um cluster existente do Amazon EKS. Para implantar, consulte [Começar a usar o Amazon EKS](getting-started.md).
+ Um provedor AWS Identity and Access Management (IAM) OpenID Connect (OIDC) para o seu cluster. Para determinar se você tem ou para criar uma, consulte [Criar um provedor de identidade OIDC do IAM para o cluster](enable-iam-roles-for-service-accounts.md).
+ Um perfil do IAM com a política do IAM [AmazonEKS\_CNI\_Policy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKS_CNI_Policy.html) (se o cluster usar a família `IPv4`) ou uma política IPv6 (se o seu cluster usar a família `IPv6`) anexada a ela. Para obter mais informações sobre o perfil VPC CNI, consulte [Configurar o plug-in CNI da Amazon VPC para usar IRSA](cni-iam-role.md). Para obter informações sobre a política de IPv6, consulte [Criar uma política do IAM para clusters que usam a família `IPv6`](cni-iam-role.md#cni-iam-role-create-ipv6-policy).

**Importante**  
As versões `v1.16.0` a `v1.16.1` do plug-in CNI da Amazon VPC para Kubernetes implementam a versão `v1.0.0` da especificação da CNI. Para obter mais informações sobre a versão `v1.0.0` da especificação da CNI, consulte [Container Network Interface (CNI) Specification](https://github.com/containernetworking/cni/blob/spec-v1.0.0/SPEC.md) no GitHub.

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

Depois de concluir os pré-requisitos, use as etapas a seguir para criar o complemento.

1. Veja qual versão do complemento está atualmente instalada no cluster.

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

   Veja um exemplo de saída abaixo.

   ```
   v1.16.4-eksbuild.2
   ```

1. Veja qual tipo de complemento está atualmente instalado no cluster. Dependendo da ferramenta com a qual você criou o cluster, talvez você não tenha o tipo de complemento do Amazon EKS instalado em seu cluster atualmente. Substitua {{my-cluster}} pelo nome do cluster.

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

   Se um número de versão for retornado, você tem o tipo de complemento do Amazon EKS instalado no cluster, e não precisa completar as etapas restantes deste procedimento. Se um erro for retornado, você não tem o tipo de complemento do Amazon EKS instalado no cluster. Conclua as etapas restantes desse procedimento para instalá-lo.

1. Salve a configuração do complemento instalado atualmente.

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

1. Crie o complemento usando a AWS CLI. Se você quiser usar o Console de gerenciamento da AWS ou `eksctl` para criar o complemento, consulte [Criar um complemento do Amazon EKS](creating-an-add-on.md) e especifique `vpc-cni` como o nome do complemento. Copie o conteúdo a seguir no seu dispositivo. Faça as seguintes modificações no comando, conforme necessário, e execute o comando modificado.
   + Substitua {{my-cluster}} pelo nome do cluster.
   + Substitua {{v1.20.3-eksbuild.1}} pela versão mais recente listada na tabela das versões mais recentes da versão do seu cluster. Para obter a tabela de versões mais recente, consulte [Versões da CNI da Amazon VPC](managing-vpc-cni.md#vpc-cni-latest-available-version).
   + Substitua {{111122223333}} pelo ID da sua conta e {{AmazonEKSVPCCNIRole}} pelo nome do [perfil do IAM existente](cni-iam-role.md#cni-iam-role-create-role) que você criou. A especificação de um perfil requer que você tenha um provedor OpenID Connect (OIDC) do IAM para o cluster. Para determinar se você já tem um ou se precisa criar um para o seu cluster, consulte [Criar um provedor de identidade OIDC do IAM para o cluster](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
     ```

     Se você aplicou configurações personalizadas ao seu complemento atual que entrem em conflito com as configurações padrão do complemento Amazon EKS, a criação poderá falhar. Se a criação falhar, você receberá um erro que poderá ajudar a resolver o problema. Como alternativa, você pode adicionar `--resolve-conflicts OVERWRITE` ao comando anterior. Isso permite que o complemento substitua todas as configurações personalizadas existentes. Depois de criar o complemento, você pode atualizá-lo com suas configurações personalizadas.

1. Verifique se a versão mais recente do complemento para a versão do Kubernetes do cluster foi adicionada ao cluster. Substitua {{my-cluster}} pelo nome do cluster.

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

   Pode levar alguns segundos para que a criação do complemento seja concluída.

   Veja abaixo um exemplo de saída.

   ```
   v1.20.3-eksbuild.1
   ```

1. Se você tiver feito configurações personalizadas no complemento original antes de criar o complemento do Amazon EKS, use a configuração salva em uma etapa anterior para atualizar o complemento do EKS com suas configurações personalizadas. Siga as etapas em [Atualização do plug-in da CNI da Amazon VPC (complemento do Amazon EKS)](vpc-add-on-update.md).

1. (Opcional) Instale `cni-metrics-helper` em seu cluster. Ele extrai a interface de rede elástica e as informações de endereço IP, agrega-as em um nível de cluster e publica as métricas no Amazon CloudWatch. Para obter mais informações, consulte [cni-metrics-helper](https://github.com/aws/amazon-vpc-cni-k8s/blob/master/cmd/cni-metrics-helper/README.md) no GitHub.