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 do eksctl
Este tópico descreve como criar uma funcionalidade do AWS Controllers for Kubernetes (ACK) usando o eksctl.
nota
Para realizar as etapas seguintes, você deve estar utilizando o eksctl na versão 0.220.0 ou em versões posteriores. Para verificar a versão, execute eksctl version.
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.
Importante
Esta política concede permissões para o gerenciamento de buckets do S3 com "Resource": "*", o que permite operações em todos os buckets do S3.
Para uso em ambientes de produção: * Restrinja o campo Resource a ARNs de buckets específicos ou padrões de nomes * Use chaves de condição do IAM para limitar o acesso por etiquetas de recurso * Conceda apenas as permissões mínimas necessárias para o seu caso de uso
Para uso com outros serviços da AWS, consulte Configuração das permissões do ACK.
Anexe a política à função:
aws iam attach-role-policy \ --role-name ACKCapabilityRole \ --policy-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):policy/ACKS3Policy
Etapa 2: criação da funcionalidade do ACK
Crie a funcionalidade do ACK por meio do eksctl. Substitua region-code pela região AWS em que seu cluster se encontra e substitua my-cluster pelo nome do seu cluster.
eksctl create capability \ --cluster [.replaceable]`my-cluster` \ --region [.replaceable]`region-code` \ --name ack \ --type ACK \ --role-arn arn:aws:iam::$(aws sts get-caller-identity --query Account --output text):role/ACKCapabilityRole \ --ack-service-controllers s3
nota
O sinalizador --ack-service-controllers é opcional. Se omitido, o ACK habilita todos os controladores disponíveis. Para otimizar a performance e a segurança, recomendamos habilitar somente os controladores necessários. É possível definir vários controladores ao mesmo tempo: --ack-service-controllers s3,rds,dynamodb
O comando é executado de forma imediata, mas a funcionalidade demora algum tempo para se tornar ativa.
Etapa 3: verificação da ativação da funcionalidade
Verifique o status da funcionalidade:
eksctl get capability \ --cluster [.replaceable]`my-cluster` \ --region [.replaceable]`region-code` \ --name ack
A funcionalidade estará pronta assim que o status mostrar ACTIVE.
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