Comparação da funcionalidade do EKS para o ACK em relação ao ACK autogerenciado - Amazon EKS

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.

Comparação da funcionalidade do EKS para o ACK em relação ao ACK autogerenciado

A funcionalidade do EKS para o ACK é equivalente à dos controladores do ACK autogerenciados, porém apresenta vantagens operacionais significativas. Para obter uma comparação geral das funcionalidades do EKS em relação às soluções autogerenciadas, consulte Considerações sobre as funcionalidades do EKS. Este tópico se concentra nas diferenças específicas do ACK.

Diferenças em relação à versão original do ACK

A funcionalidade do EKS para o ACK se baseia na versão original dos controladores do ACK, porém apresenta diferenças na integração com o IAM.

Perfil da funcionalidade do IAM: a funcionalidade usa um perfil do IAM dedicado com uma política de confiança que permite o serviço capabilities.eks.amazonaws.com da entidade principal, e não o IRSA (perfis do IAM para contas de serviços). É possível anexar políticas do IAM diretamente ao perfil da funcionalidade, sem a necessidade de criar ou anotar contas de serviços do Kubernetes ou configurar provedores OIDC. Uma prática recomendada para casos de uso em ambientes de produção é configurar permissões de serviços usando o IAMRoleSelector. Consulte Configuração das permissões do ACK para obter mais detalhes.

Compatibilidade de recursos: os recursos personalizados do ACK funcionam de forma idêntica à versão original do ACK, sem a necessidade de alterações nos arquivos YAML de recursos do ACK. A funcionalidade usa as mesmas APIs do Kubernetes e CRDs, portanto, ferramentas como o kubectl funcionam de maneira semelhante. Todos os controladores e recursos em disponibilidade geral (GA, na sigla em inglês) da versão original do ACK são compatíveis.

Para obter a documentação completa do ACK e os guias específicos dos serviços, consulte a documentação do ACK.

Caminho de migração

Você pode migrar de um ACK autogerenciado para a funcionalidade gerenciada sem tempo de inatividade:

  1. Atualize o controlador do ACK autogerenciado para usar kube-system para concessões de eleição de líder, por exemplo:

    helm upgrade --install ack-s3-controller \ oci://public.ecr.aws/aws-controllers-k8s/s3-chart \ --namespace ack-system \ --set leaderElection.namespace=kube-system

    Isso transfere a concessão do controlador para o kube-system, permitindo que a funcionalidade gerenciada se coordene com ele.

  2. Crie a funcionalidade do ACK no cluster (consulte Criação de uma funcionalidade do ACK)

  3. A funcionalidade gerenciada reconhece os recursos da AWS gerenciados pelo ACK existentes e assume a reconciliação

  4. Reduza gradualmente a escala verticalmente ou remova as implantações dos controladores autogerenciados:

    helm uninstall ack-s3-controller --namespace ack-system

Com essa abordagem, ambos os controladores podem coexistir com segurança durante a migração. A funcionalidade gerenciada assume automaticamente os recursos que antes eram gerenciados pelos controladores autogerenciados, assegurando reconciliação contínua sem gerar conflitos.

Próximas etapas