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 su che si trova 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
Crea una funzionalità Argo CD sul tuo cluster Amazon EKS usando eksctl.
Nota
I passaggi seguenti richiedono una versione eksctl o successiva. 0.215.0 Per verificare la tua versione, esegui. eksctl version
Prerequisiti
-
AWS Identity Center configurato: Argo CD richiede AWS Identity Center per l'autenticazione. Gli utenti locali non sono supportati. Se non hai configurato AWS Identity Center, vedi Guida introduttiva a AWS Identity Center per creare un'istanza di Identity Center e Aggiungi utenti e Aggiungi gruppi per creare utenti e gruppi per l'accesso ad Argo CD.
-
Almeno un utente o gruppo in AWS Identity Center: è necessario disporre di almeno un utente o gruppo configurato nell'istanza di Identity Center per assegnare le mappature dei ruoli RBAC di Argo CD e fornire l'accesso all'interfaccia utente di Argo CD.
Fase 1: Creazione di un ruolo IAM Capability
Crea un file di policy sulla 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 o 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 il tuo AWS Configurazione dell'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 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
Annota questi valori: ti serviranno nel passaggio successivo.
(Facoltativo) Configura un endpoint privato
Per impostazione predefinita, l'interfaccia utente e l'endpoint API di Argo CD sono accessibili pubblicamente su Internet. Se è necessario limitare l'accesso, è possibile configurare un endpoint VPC. Questo è consigliato per ambienti con severi requisiti di sicurezza di rete.
Crea un endpoint VPC per EKS Capabilities
Crea un endpoint VPC di interfaccia per il servizio EKS Capabilities nel tuo VPC. Sostituiscivpc-id, subnet-id-1 subnet-id-2sg-id, e region-code con i tuoi valori:
aws ec2 create-vpc-endpoint \ --vpc-endpoint-type Interface \ --service-name com.amazonaws.region-code.eks-capabilities \ --vpc-idvpc-id\ --subnet-idssubnet-id-1 subnet-id-2\ --security-group-idssg-id\ --regionregion-code
Nota
-
Le sottoreti devono trovarsi in zone di disponibilità diverse per garantire l'alta disponibilità.
-
Il gruppo di sicurezza deve consentire il traffico HTTPS (porta 443) in entrata dalle reti che devono accedere all'interfaccia utente e all'API di Argo CD.
-
Nota l'ID dell'endpoint VPC restituito da questo comando: ti servirà durante la creazione della funzionalità.
Verifica che l'endpoint VPC sia disponibile
aws ec2 describe-vpc-endpoints \ --vpc-endpoint-idsvpce-xxxxxxxx\ --query 'VpcEndpoints[0].State' \ --output text \ --regionregion-code
Attendi che venga visualizzato lo stato available prima di procedere.
Passo 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 del cluster, 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-clusterregion:cluster-region-codecapabilities: - name: my-argocd type: ARGOCD roleArn:arn:aws:iam::111122223333:role/ArgoCDCapabilityRoledeletePropagationPolicy: RETAIN configuration: argocd: awsIdc: idcInstanceArn:arn:aws:sso:::instance/ssoins-123abcidcRegion:idc-region-coderbacRoleMappings: - role: ADMIN identities: - id:38414300-1041-708a-01af-5422d6091e34type: SSO_USER
Nota
È possibile aggiungere più utenti o gruppi alle mappature RBAC. Per i gruppi, utilizza type: SSO_GROUP e fornisci l'ID del gruppo. I ruoli disponibili sonoADMIN,EDITOR, eVIEWER.
Se hai configurato un endpoint VPC per l'accesso privato, aggiungi la networkConfiguration sezione alla definizione della funzionalità. Sostituisci vpce-xxxxxxxx con il tuo ID endpoint VPC:
apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name:my-clusterregion:cluster-region-codecapabilities: - name: my-argocd type: ARGOCD roleArn: arn:aws:iam::111122223333:role/ArgoCDCapabilityRole deletePropagationPolicy: RETAIN networkConfiguration: elasticNetworkInterfaces: vpcEndpointId:vpce-xxxxxxxxconfiguration: argocd: awsIdc: idcInstanceArn:arn:aws:sso:::instance/ssoins-123abcidcRegion:idc-region-coderbacRoleMappings: - role: ADMIN identities: - id:38414300-1041-708a-01af-5422d6091e34type: SSO_USER
Nota
Quando l'endpoint privato è abilitato, l'interfaccia utente e l'API di Argo CD sono accessibili solo tramite l'endpoint VPC. Gli utenti devono essere connessi al VPC (o a una rete peered) per accedere all'interfaccia Argo CD.
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à richiede del tempo per diventare attiva.
Fase 5: Verificare che la funzionalità sia attiva
Controlla 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 \ --regionregion-code\ --clustermy-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, verifica che le risorse personalizzate di Argo CD siano disponibili nel tuo cluster:
kubectl api-resources | grep argoproj.io
Dovresti vedere i tipi Application di ApplicationSet risorse elencati.
Fasi successive
-
Lavorare con Argo CD- Scopri come creare e gestire le applicazioni Argo CD
-
Considerazioni su Argo CD- Configura l'accesso SSO e multi-cluster
-
Lavorare con risorse di capacità- Gestisci le tue risorse di funzionalità Argo CD