Lavorare con Argo CD - Amazon EKS

View a markdown version of this page

Lavorare con Argo CD - 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 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à.

Lavorare con Argo CD

Con Argo CD, definisci le applicazioni nei repository Git e Argo CD le sincronizza automaticamente con i tuoi cluster Kubernetes. Ciò consente l'implementazione dichiarativa e controllata dalla versione delle applicazioni con rilevamento automatico della deriva.

Prerequisiti

Prima di lavorare con Argo CD, è necessario:

  • È stato creato un cluster EKS con la funzionalità Argo CD (vedi) Crea una funzionalità Argo CD

  • Un repository Git contenente Kubernetes si manifesta

  • kubectlconfigurato per comunicare con il tuo cluster

Attività comuni

I seguenti argomenti guidano l'utente nelle attività più comuni di Argo CD:

Configurare l'accesso al repository- Configura Argo CD per accedere ai tuoi repository Git utilizzando AWS Secrets Manager o Kubernetes AWS CodeConnections Secrets.

Registra i cluster di destinazione- Registra i cluster di destinazione in cui Argo CD distribuirà le applicazioni.

Lavorare con Argo CD Projects- Organizza le applicazioni e applica i limiti di sicurezza utilizzando Projects per ambienti multi-tenant.

Configurare le impostazioni del CD Argo- Configura il comportamento di Argo CD utilizzando argocd-cm ConfigMap, inclusi i controlli di integrità personalizzati per le risorse personalizzate.

Creazione di applicazioni- Crea applicazioni che vengono distribuite da repository Git con politiche di sincronizzazione automatiche o manuali.

Usa ApplicationSets- Utilizzabile ApplicationSets per distribuire applicazioni in più ambienti o cluster utilizzando modelli e generatori.

Accedi all'interfaccia utente del CD di Argo

Accedi all'interfaccia utente del CD Argo tramite la console EKS:

  1. Apri la console Amazon EKS

  2. Seleziona il tuo cluster

  3. Scegli la scheda Funzionalità

  4. Scegli Argo CD

  5. Scegli Open Argo CD UI

L'interfaccia utente fornisce la topologia visiva dell'applicazione, lo stato e la cronologia della sincronizzazione, lo stato e gli eventi delle risorse, i controlli di sincronizzazione manuale e la gestione delle applicazioni.

URL dell'endpoint Argo CD

Quando crei una funzionalità Argo CD, ricevi un endpoint unico sia per l'interfaccia utente che per l'API di Argo CD. Il nome host dell'endpoint è deterministico: utilizza valori che già conoscete, come il nome della capacità, il nome del cluster, l'ID dell'account e la regione. AWS AWS Se si elimina una funzionalità e la si ricrea con lo stesso nome del cluster e lo stesso nome della funzionalità, si ottiene lo stesso endpoint. Poiché il nome host è prevedibile, è possibile crearlo in anticipo. Ad esempio, puoi preconfigurare le integrazioni DNS, Automation o Git webhook prima che la funzionalità termini il provisioning. Per qualsiasi funzionalità, il serverUrl valore from describe-capability è l'endpoint definitivo.

Nota

Poiché l'endpoint viene riutilizzato, le integrazioni che facevano riferimento alla funzionalità precedente (webhook Git, token e record DNS) si connettono automaticamente a quello nuovo, senza alcuna indicazione che l'istanza sia cambiata. Dopo aver ricreato una funzionalità, verifica nuovamente tali integrazioni e ruota i segreti o i token dei webhook condivisi con l'istanza precedente.

Recupera l'endpoint

Per ottenere l'endpoint esatto di una funzionalità, usa il describe-capability comando e leggi il valore. serverUrl Sostituisci region-code my-cluster e my-argocd con i tuoi valori:

aws eks describe-capability \ --region region-code \ --cluster-name my-cluster \ --capability-name my-argocd \ --query 'capability.configuration.argoCd.serverUrl' \ --output text
Nota

Il serverUrl campo e i record DNS dell'endpoint sono disponibili dopo che lo stato della funzionalità è cambiato in. ACTIVE

Formato dell'endpoint

L'endpoint Argo CD utilizza il seguente formato:

https://capability-name-hash-account-id.eks-capabilities.region-code.amazonaws.com

Il nome host è composto dai seguenti componenti:

  • capability-name— Il nome della funzionalità Argo CD, normalizzato in minuscolo con ogni carattere di sottolineatura (_) sostituito da un trattino (). - Se il nome normalizzato è più lungo di 41 caratteri, viene troncato a 41 caratteri.

  • hash— Un valore esadecimale di 8 caratteri che rende unico il nome host. Sono i primi 8 caratteri dell' SHA-256 hash del nome della funzionalità e del nome del cluster. I nomi sono uniti da una barra () capability-name/cluster-name . Usa i nomi esatti che hai specificato quando hai creato la funzionalità. Questo valore fornisce solo l'unicità e non è un controllo di sicurezza.

  • account-id— Il tuo ID account a 12 cifre AWS .

  • eks-capabilities.region-code.amazonaws.com— Il dominio del servizio EKS Capabilities per la tua AWS regione.

Ad esempio, una funzionalità my-argocd denominata my-cluster nel cluster nell'account 111122223333 nella us-west-2 Regione ha un endpoint simile al seguente:

https://my-argocd-dc855fdf-111122223333.eks-capabilities.us-west-2.amazonaws.com

Il nome host utilizza il nome della funzionalità normalizzato, ma l'hash utilizza il nome grezzo specificato. Ad esempio, la funzionalità Payments_GitOps sul cluster viene my-cluster normalizzata payments-gitops nel nome host e il relativo hash proviene dalla stringa non elaborata: Payments_GitOps/my-cluster

https://payments-gitops-4ce0b382-111122223333.eks-capabilities.us-west-2.amazonaws.com
Nota

Usa l'describe-capabilityoutput per confermare l'endpoint esatto per la tua regione. AWS

Puoi calcolare tu stesso il hash componente. Utilizzalo sha256sum su Linux o shasum -a 256 su macOS. I comandi seguenti utilizzano la funzionalità di esempio my-argocd sul clustermy-cluster. Sostituisci i nomi esatti che hai specificato quando hai creato la funzionalità:

# Linux printf '%s' "my-argocd/my-cluster" | sha256sum | cut -c1-8 # macOS printf '%s' "my-argocd/my-cluster" | shasum -a 256 | cut -c1-8

Entrambi i comandi vengono dc855fdf restituiti.

Accesso e sicurezza agli endpoint

Il nome host dell'endpoint non è un segreto e saperlo non garantisce l'accesso all'istanza Argo CD. Il nome host espone le stesse informazioni non segrete che già appaiono nella funzionalità Amazon Resource Name (ARN). Le list-capabilities operazioni create-capabilitydescribe-capability, e restituiscono questo ARN. AWS L'autenticazione Identity Center e il controllo degli accessi basato sui ruoli (RBAC) di Argo CD controllano l'accesso all'interfaccia utente e all'API di Argo CD.

Se configuri l'accesso privato all'endpoint, il nome host si risolve solo negli indirizzi IP privati associati all'endpoint VPC. Puoi accedere all'endpoint solo dal tuo VPC o dalle reti connesse. Per ulteriori informazioni, consulta Configurare l'accesso privato agli endpoint per Argo CD.

Documentazione upstream

Per informazioni dettagliate sulle funzionalità di Argo CD: