Ajudar a melhorar esta página
Quer contribuir para este guia do usuário? Role até o final desta página e selecione Editar esta página no GitHub. Suas contribuições ajudarão a tornar nosso guia do usuário melhor para todos.
Criar o complemento Amazon VPC CNI plugin for Kubernetes do Amazon EKS
Use as etapas a seguir para criar o complemento Amazon VPC CNI plugin for Kubernetes do Amazon EKS.
Antes de começar, reveja as considerações. Para ter mais informações, consulte Considerações.
Pré-requisitos
A seguir estão os pré-requisitos para o complemento de Amazon VPC CNI plugin for Kubernetes do Amazon EKS.
-
Um cluster existente do Amazon EKS. Para implantar, consulte Começar a usar o Amazon EKS.
-
Um provedor OpenID Connect (OIDC) do AWS Identity and Access Management (IAM) existente para o cluster. Para determinar se você tem ou para criar uma, consulte Criar um provedor OIDC do IAM para o cluster.
-
Um perfil do IAM com a política do IAM AmazonEKS_CNI_Policy (se o cluster usar a família
IPv4
) ou uma política IPv6 (se o seu cluster usar a famíliaIPv6
) anexada a ela. Para ter mais informações, consulte Configurar o plug-in CNI da Amazon VPC para usar IRSA. -
Se você estiver usando a versão
1.7.0
ou posterior do Amazon VPC CNI plugin for Kubernetes e usar políticas de segurança de Pod personalizadas, consulte Excluir política de segurança de Pod padrão do Amazon EKSEntenda as políticas de segurança de pod (PSP) criadas pelo Amazon EKS. -
Importante
As versões do Kubernetes
v1.16.0
do Amazon VPC CNI plugin for parav1.16.1
removeram a compatibilidade com as versões1.23
e anteriores do Kubernetes. A versão VPC CNIv1.16.2
restaura a compatibilidade com as versões1.23
e anteriores do Kubernetes com a especificação CNIv0.4.0
.As versões
v1.16.0
do Amazon VPC CNI plugin for do Kubernetes parav1.16.1
implementam a versãov1.0.0
da especificação CNI. A especificação CNIv1.0.0
tem suporte de clusters do EKS que executam as versõesv1.24
ou posteriores do Kubernetes. A versãov1.16.0
av1.16.1
da VPC CNI e a especificação CNIv1.0.0
não são compatíveis com a versãov1.23
ou posterior do Kubernetes. Para obter mais informações sobre av1.0.0
da especificação da CNI, consulte Container Network Interface (CNI) Specificationem .
Procedimento
Depois de concluir os pré-requisitos, use as etapas a seguir para criar o complemento.
-
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
-
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 textSe 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.
-
Salve a configuração do complemento instalado atualmente.
kubectl get daemonset aws-node -n kube-system -o yaml >
aws-k8s-cni-old.yaml
-
Crie o complemento usando o AWS CLI. Se você quiser usar o AWS Management Console ou
eksctl
para criar o complemento, consulte Criar um complemento do Amazon EKS e especifiquevpc-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 o
pelo nome do cluster.my-cluster
-
Substitua
pela versão mais recente listada na tabela de versões mais recentes da versão do cluster.v1.18.5-eksbuild.1
-
Substitua
111122223333
pelo ID da sua conta eAmazonEKSVPCCNIRole
pelo nome do perfil do IAM existente que você criou. A especificação de um perfil exige 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 OIDC do IAM para o cluster.
aws eks create-addon --cluster-name
my-cluster
--addon-name vpc-cni --addon-version
\ --service-account-role-arn arn:aws:iam::v1.18.5-eksbuild.1
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. -
-
Confirme se a versão mais recente do complemento para a versão Kubernetes do seu cluster foi adicionada ao cluster. Substitua o
pelo nome do cluster.my-cluster
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni --query addon.addonVersion --output textPode levar alguns segundos para que a criação do complemento seja concluída.
Veja um exemplo de saída abaixo.
v1.18.5-eksbuild.1
-
Se você fez configurações personalizadas no complemento original, antes de criar o complemento Amazon EKS, use a configuração que você salvou em uma etapa anterior para atualizar o complemento Amazon EKS com as configurações personalizadas.
(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-helperno GitHub.