Criação de uma funcionalidade do Argo CD por meio do eksctl - 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.

Criação de uma funcionalidade do Argo CD por meio do eksctl

Este tópico descreve como criar uma funcionalidade do Argo CD 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 > argocd-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 ArgoCDCapabilityRole \ --assume-role-policy-document file://argocd-trust-policy.json
nota

Para esta configuração básica, não são necessárias políticas do IAM adicionais. Se você planeja usar o Secrets Manager para credenciais de repositório ou para o CodeConnections, precisará adicionar permissões ao perfil. Para obter exemplos da política do IAM e de orientações de configuração, consulte Gerenciamento de segredos de aplicações com o AWS Secrets Manager e Estabelecimento de conexão com repositórios do Git usando o AWS CodeConnections.

Etapa 2: obtenção da configuração do Centro de Identidade da AWS

Obtenha o ARN da instância do Centro de Identidade e o ID do usuário para a configuração de RBAC:

# Get your Identity Center instance ARN aws sso-admin list-instances --query 'Instances[0].InstanceArn' --output text # Get your Identity Center region aws sso-admin list-instances --query 'Instances[0].IdentityStoreId' --output text | cut -d'/' -f1 # Get a user ID for admin access (replace 'your-username' with your Identity Center username) aws identitystore list-users \ --identity-store-id $(aws sso-admin list-instances --query 'Instances[0].IdentityStoreId' --output text) \ --query 'Users[?UserName==`your-username`].UserId' --output text

Anote esses valores. Você precisará deles na próxima etapa.

Etapa 3: criação de um arquivo de configuração do eksctl

Crie um arquivo chamado argocd-capability.yaml com o conteúdo a seguir. Substitua os valores com espaços reservados pelo nome do cluster, região, ARN do perfil do IAM, ARN da instância do Centro de Identidade, região do Centro de Identidade e ID do usuário:

apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: my-cluster region: region-code capabilities: - name: my-argocd type: ARGOCD roleArn: arn:aws:iam::[.replaceable]111122223333:role/ArgoCDCapabilityRole configuration: argocd: awsIdc: idcInstanceArn: arn:aws:sso:::instance/ssoins-123abc idcRegion: idc-region-code rbacRoleMappings: - role: ADMIN identities: - id: 38414300-1041-708a-01af-5422d6091e34 type: SSO_USER
nota

É possível adicionar vários usuários ou grupos aos mapeamentos de RBAC. Para grupos, use type: SSO_GROUP e forneça o ID do grupo. Os perfis disponíveis são ADMIN, EDITOR e VIEWER.

Etapa 4: criação da funcionalidade do Argo CD

Aplique o arquivo de configuração:

eksctl create capability -f argocd-capability.yaml

O comando é executado de forma imediata, mas a funcionalidade demora algum tempo para se tornar ativa.

Etapa 5: verificação da ativação da funcionalidade

Verifique o status da funcionalidade. Substitua region-code pela região AWS em que seu cluster se encontra e substitua my-cluster pelo nome do seu cluster.

eksctl get capability \ --region region-code \ --cluster my-cluster \ --name my-argocd

A funcionalidade estará pronta assim que o status mostrar ACTIVE.

Etapa 6: verificação da disponibilidade de recursos personalizados

Após a funcionalidade estar ativa, verifique se os recursos personalizados do Argo CD estão disponíveis no cluster:

kubectl api-resources | grep argoproj.io

Os tipos de recursos Application e ApplicationSet devem aparecer na lista apresentada.

Próximas etapas