Crea una funzionalità Argo CD usando eksctl - Amazon EKS

Contribuisci a migliorare questa pagina

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Crea una funzionalità Argo CD usando eksctl

Questo argomento descrive come creare una funzionalità Argo CD usando eksctl.

Nota

I seguenti passaggi richiedono la versione eksctl o successiva. 0.220.0 Per verificare la tua versione, esegui. eksctl version

Fase 1: Creare un ruolo di capacità IAM

Crea un file di policy di fiducia:

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

Crea il ruolo IAM:

aws iam create-role \ --role-name ArgoCDCapabilityRole \ --assume-role-policy-document file://argocd-trust-policy.json
Nota

Per questa configurazione di base, non sono necessarie politiche IAM aggiuntive. Se prevedi di utilizzare Secrets Manager per le credenziali del repository oppure CodeConnections, dovrai aggiungere le autorizzazioni al ruolo. Per esempi di policy IAM e linee guida alla configurazione, consulta e. Gestisci i segreti delle applicazioni con AWS Secrets Manager Connect ai repository Git con AWS CodeConnections

Fase 2: Ottieni la configurazione del tuo AWS Identity Center

Ottieni l'ARN e l'ID utente dell'istanza di Identity Center per la configurazione 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

Prendi nota di questi valori: ti serviranno nel passaggio successivo.

Fase 3: Creare un file di configurazione eksctl

Crea un archivio denominato argocd-capability.yaml con i seguenti contenuti. Sostituisci i valori segnaposto con il nome del cluster, la regione, l'ARN del ruolo IAM, l'ARN dell'istanza di Identity Center, la regione dell'Identity Center e l'ID utente:

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

Puoi aggiungere più utenti o gruppi alle mappature RBAC. Per i gruppi, usa type: SSO_GROUP e fornisci l'ID del gruppo. I ruoli disponibili sono ADMINEDITOR, eVIEWER.

Fase 4: Creare la funzionalità Argo CD

Applica il file di configurazione:

eksctl create capability -f argocd-capability.yaml

Il comando viene restituito immediatamente, ma la funzionalità impiega del tempo per diventare attiva.

Fase 5: Verificare che la funzionalità sia attiva

Verifica lo stato della capacità. Sostituiscilo region-code con la AWS regione in cui si trova il cluster e sostituiscilo my-cluster con il nome del cluster.

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

La funzionalità è pronta quando viene visualizzato lo statoACTIVE.

Passaggio 6: Verifica della disponibilità di risorse personalizzate

Dopo che la funzionalità è attiva, verificate che le risorse personalizzate di Argo CD siano disponibili nel cluster:

kubectl api-resources | grep argoproj.io

Dovresti vedere i tipi Application di ApplicationSet risorse elencati.

Fasi successive