Registra i cluster di destinazione - 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à.

Registra i cluster di destinazione

Registra i cluster per consentire ad Argo CD di distribuire applicazioni su di essi. È possibile registrare lo stesso cluster su cui è in esecuzione Argo CD (cluster locale) o cluster remoti in account o regioni diversi.

Prerequisiti

  • È stato creato un cluster EKS con funzionalità Argo CD

  • kubectlconfigurato per comunicare con il cluster

  • Per i cluster remoti: autorizzazioni IAM e voci di accesso appropriate

Registra il cluster locale

Per distribuire applicazioni nello stesso cluster su cui è in esecuzione Argo CD, registratelo come obiettivo di distribuzione.

Nota

La funzionalità Argo CD non registra automaticamente il cluster locale. È necessario registrarlo in modo esplicito per distribuire le applicazioni nello stesso cluster.

Utilizzo dell'Argo CD CLI:

argocd cluster add <cluster-context-name> \ --aws-cluster-name arn:aws:eks:us-west-2:111122223333:cluster/my-cluster \ --name local-cluster

Utilizzo di un segreto Kubernetes:

apiVersion: v1 kind: Secret metadata: name: local-cluster namespace: argocd labels: argocd.argoproj.io/secret-type: cluster stringData: name: local-cluster server: arn:aws:eks:us-west-2:111122223333:cluster/my-cluster project: default

Applica la configurazione:

kubectl apply -f local-cluster.yaml
Nota

Utilizza l'ARN del cluster EKS nel server campo, non l'URL del server API Kubernetes. La funzionalità gestita richiede ARNs l'identificazione dei cluster. L'impostazione predefinita non kubernetes.default.svc è supportata.

Registra cluster remoti

Per eseguire la distribuzione su cluster remoti, è necessario:

  1. Crea una voce di accesso sul cluster remoto per il tuo ruolo di capacità IAM di Argo CD

  2. Associa una politica di accesso alle autorizzazioni appropriate

  3. Registrate il cluster in Argo CD

Fase 1: Creare la voce di accesso sul cluster remoto

Sostituisci region-code con la AWS regione in cui si trova il cluster remoto, sostituisci remote-cluster con il nome del cluster remoto e sostituisci l'ARN con il tuo ruolo di funzionalità Argo CD ARN.

aws eks create-access-entry \ --region region-code \ --cluster-name remote-cluster \ --principal-arn arn:aws:iam::[.replaceable]111122223333:role/ArgoCDCapabilityRole \ --type STANDARD

Fase 2: Associare una politica di accesso

aws eks associate-access-policy \ --region region-code \ --cluster-name remote-cluster \ --principal-arn arn:aws:iam::[.replaceable]111122223333:role/ArgoCDCapabilityRole \ --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy \ --access-scope type=cluster
Nota

Per gli ambienti di produzione, prendi in considerazione l'utilizzo di politiche di accesso più restrittive. Vedi Considerazioni sulla sicurezza per EKS Capabilities per le configurazioni con privilegi minimi.

Fase 3: Registrare il cluster in Argo CD

Utilizzo dell'Argo CD CLI:

argocd cluster add <cluster-context-name> \ --aws-cluster-name arn:aws:eks:us-west-2:111122223333:cluster/remote-cluster \ --name remote-cluster

Utilizzo di un segreto Kubernetes:

apiVersion: v1 kind: Secret metadata: name: remote-cluster namespace: argocd labels: argocd.argoproj.io/secret-type: cluster stringData: name: remote-cluster server: arn:aws:eks:us-west-2:111122223333:cluster/remote-cluster project: default

Applica la configurazione:

kubectl apply -f remote-cluster.yaml

Cluster tra account e regioni

Per eseguire la distribuzione su cluster in account o regioni diversi: AWS

  1. Aggiungi l'Argo CD Capability Role come voce di accesso sul cluster remoto

  2. Associa la politica di accesso appropriata (in genereAmazonEKSClusterAdminPolicy)

  3. Registrare il cluster utilizzando il relativo ARN completo (che include la regione)

Il formato ARN del cluster include la regione, quindi non c'è differenza tra la registrazione tra account e tra regioni: entrambe utilizzano lo stesso processo.

Per una configurazione dettagliata tra più account, comprese le policy di fiducia e le autorizzazioni IAM, consulta. Considerazioni su Argo CD

Verifica la registrazione del cluster

Visualizza i cluster registrati:

kubectl get secrets -n argocd -l argocd.argoproj.io/secret-type=cluster

Oppure controlla lo stato del cluster nell'interfaccia utente di Argo CD in Impostazioni → Cluster.

Cluster privati

La funzionalità Argo CD fornisce un accesso trasparente a cluster EKS completamente privati senza richiedere peering VPC o configurazioni di rete specializzate.

AWS gestisce automaticamente la connettività tra la funzionalità Argo CD e i cluster remoti privati.

È sufficiente registrare il cluster privato utilizzando la relativa ARN: non è richiesta alcuna configurazione di rete aggiuntiva.

Limita l'accesso ai cluster con Projects

Usa Projects per controllare in quali cluster le applicazioni possono essere distribuite:

apiVersion: argoproj.io/v1alpha1 kind: AppProject metadata: name: production namespace: argocd spec: destinations: - server: arn:aws:eks:us-west-2:111122223333:cluster/prod-cluster namespace: '*' - server: arn:aws:eks:eu-west-1:111122223333:cluster/prod-eu-cluster namespace: '*' sourceRepos: - 'https://github.com/example/production-apps'

Per informazioni dettagliate, vedi Lavorare con Argo CD Projects.

Risorse aggiuntive