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 de uma funcionalidade do ACK por meio da AWS CLI
Este tópico descreve como criar uma funcionalidade do AWS Controllers for Kubernetes (ACK) usando a AWS CLI.
Pré-requisitos
-
AWS CLI: versão
2.12.3ou em versões posteriores. Para verificar a versão, executeaws --version. Para obter mais informações, consulte Instalação no Guia do Usuário da Interface de Linha de Comando AWS. -
kubectl– uma ferramenta de linha de comando para trabalhar com clusters do Kubernetes. Para obter mais informações, consulte Configurar o kubectl e o eksctl.
Etapa 1: criação de um perfil da funcionalidade do IAM
Crie um arquivo de política de confiança:
cat > ack-trust-policy.json << 'EOF' { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "capabilities.eks.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:TagSession" ] } ] } EOF
Crie o perfil do IAM:
aws iam create-role \ --role-name ACKCapabilityRole \ --assume-role-policy-document file://ack-trust-policy.json
Anexe a política gerenciada AdministratorAccess ao perfil:
aws iam attach-role-policy \ --role-name ACKCapabilityRole \ --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
Importante
A política AdministratorAccess sugerida concede permissões abrangentes e destina-se a simplificar as etapas iniciais do uso do serviço. Para ambientes de produção, substitua essa política por uma personalizada que forneça somente as permissões exigidas pelos serviços específicos da AWS que você pretende gerenciar usando o ACK. Para obter orientações sobre como criar políticas de privilégio mínimo, consulte Configuração das permissões do ACK e Considerações sobre segurança para funcionalidades do EKS.
Etapa 2: criação da funcionalidade do ACK
Crie o recurso da funcionalidade do ACK no cluster. Substitua region-code pela região AWS em que seu cluster se encontra e substitua my-cluster pelo nome do seu cluster.
aws eks create-capability \ --regionregion-code\ --cluster-namemy-cluster\ --capability-name my-ack \ --type ACK \ --role-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):role/ACKCapabilityRole \ --delete-propagation-policy RETAIN
O comando é concluído de imediato, mas a funcionalidade demora algum tempo para se tornar ativa, conforme o EKS cria a infraestrutura e os componentes necessários para a funcionalidade. O EKS instalará as definições de recursos personalizados do Kubernetes relacionadas a essa funcionalidade no cluster durante o processo de criação.
nota
Caso ocorra um erro indicando a inexistência do cluster ou falta de permissões, verifique o seguinte:
-
Se o nome do cluster está correto
-
Se a AWS CLI está configurada para a região correta
-
Se você tem as permissões do IAM obrigatórias
Etapa 3: verificação da ativação da funcionalidade
Aguarde até que a funcionalidade se torne ativa. Substitua region-code pela região AWS em que seu cluster se encontra e substitua my-cluster pelo nome do seu cluster.
aws eks describe-capability \ --regionregion-code\ --cluster-namemy-cluster\ --capability-name my-ack \ --query 'capability.status' \ --output text
A funcionalidade estará pronta assim que o status mostrar ACTIVE. Não prossiga para a próxima etapa até que o status seja ACTIVE.
Também é possível visualizar os detalhes completos da funcionalidade:
aws eks describe-capability \ --regionregion-code\ --cluster-namemy-cluster\ --capability-name my-ack
Etapa 4: verificação da disponibilidade de recursos personalizados
Após a funcionalidade estar ativa, verifique se os recursos personalizados do ACK estão disponíveis no cluster:
kubectl api-resources | grep services.k8s.aws
Você deverá visualizar várias APIs listadas para os recursos da AWS.
nota
A funcionalidade do AWS Controllers for Kubernetes instalará diversas CRDs para vários tipos de recursos da AWS.
Próximas etapas
-
Conceitos do ACK: entenda os conceitos do ACK e comece a usar o serviço
-
Configuração das permissões do ACK: configure as permissões do IAM para outros serviços da AWS
-
Como trabalhar com recursos de funcionalidade: gerencie os recursos da funcionalidade do ACK