Connessione di un cluster - Amazon EKS

Connessione di un cluster

Fase 1: Registrazione del cluster

È possibile connettere un cluster Kubernetes esterno ad Amazon EKS con AWS CLI e la AWS Management Console. Questo processo prevede due fasi: la registrazione del cluster con Amazon EKS e l'applicazione di un file manifesto YAML per abilitare la connettività. Per consentire a un altro utente di visualizzare il cluster, seguire le istruzioni riportate in Concessione dell'accesso a un utente per la visualizzazione di un cluster.

È necessario disporre delle autorizzazioni seguenti per registrare un cluster:

  • eks:RegisterCluster

  • ssm:CreateActivation

  • ssm:DeleteActivation

  • iam:PassRole

eksctl

Prerequisiti

  • eksctl v0.68 o superiore deve essere installata. Per installarla o aggiornarla, consultare Nozioni di base su eksctl.

  • Il ruolo IAM dell'agente Amazon EKS Connector è stato creato. Per ulteriori informazioni, consultare Ruolo IAM Connector.

Registrazione del cluster con eksctl

  1. Registra il cluster fornendo un nome, un provider e una regione.

    eksctl register cluster --name <my-first-registered-cluster> --provider <provider> --region <region>

    In questo modo vengono creati due file sull'unità locale: i file my-first-registered-cluster.yaml e eks-connector-binding.yaml. Questi due file devono essere applicati al cluster esterno entro tre giorni o la registrazione scade.

  2. Nell'ambiente nativo del cluster, applicare il file eks-connector-binding.yaml:

    kubectl apply -f eks-connector-binding.yaml
AWS CLI

Prerequisiti

  • AWS CLILa deve essere installata. Per installarla o aggiornarla, consultare Installazione della AWS CLI.

  • Assicurarsi che sia stato creato il ruolo agente Amazon EKS Connector. .

Registrazione del cluster con la AWS CLI

  1. Per la configurazione del connettore, specificare il ruolo IAM dell'agente Amazon EKS Connector. Per ulteriori informazioni, consulta Ruoli IAM richiesti per Amazon EKS Connector.

    aws eks register-cluster \ --name my-first-registered-cluster \ --connector-config roleArn=arn:aws:iam::111122223333:role/AmazonEKSConnectorAgentRole,provider="OTHER" \ --region AWS_REGION

    Output:

    { "cluster": { "name": "my-first-registered-cluster", "arn": "arn:aws:eks:region:111122223333:cluster/my-first-registered-cluster", "createdAt": 1627669203.531, "ConnectorConfig": { "activationId": "xxxxxxxxACTIVATION_IDxxxxxxxx", "activationCode": "xxxxxxxxACTIVATION_CODExxxxxxxx", "activationExpiry": 1627672543.0, "provider": "OTHER", "roleArn": "arn:aws:iam::111122223333:role/AmazonEKSConnectorAgentRole" }, "status": "CREATING" } }

    È necessario utilizzare i valori region, activationId, e activationCode in un passaggio successivo.

  2. Eseguire il download del file YAML di Amazon EKS Connector.

    curl -o eks-connector.yaml https://amazon-eks.s3.us-west-2.amazonaws.com/eks-connector/manifests/eks-connector/latest/eks-connector.yaml
  3. Modificare il file YAML di Amazon EKS Connector per sostituire tutti i riferimenti di %AWS_REGION%, %EKS_ACTIVATION_ID%, %EKS_ACTIVATION_CODE% con il region, activationId, e activationCode dall'output ottenuto dal comando di registrazione.

    Il comando di esempio seguente può sostituire questi valori.

    sed -i "s~%AWS_REGION%~$AWS_REGION~g; s~%EKS_ACTIVATION_ID%~$EKS_ACTIVATION_ID~g; s~%EKS_ACTIVATION_CODE%~$(echo -n $EKS_ACTIVATION_CODE | base64)~g" eks-connector.yaml
Importante

Assicurarsi che il codice di attivazione sia in formato base64.

AWS Management Console

Prerequisiti

  • Assicurarsi che sia stato creato il ruolo agente Amazon EKS Connector. .

Per registrare il cluster Kubernetes con la console.

  1. Aprire la console Amazon EKS all'indirizzo https://console.aws.amazon.com/eks/home#/clusters.

  2. Scegli Add cluster (Aggiungi cluster) e seleziona Register (Registra) per visualizzare la pagina di configurazione.

  3. Nella pagina Configura cluster compilare i campi riportati di seguito:

    • Nome – Un nome univoco per il cluster.

    • Provider: scegli per visualizzare l'elenco a discesa dei provider del cluster Kubernetes. Se non si conosce il provider specifico, selezionare Altro.

    • Ruolo connettore EKS – Selezionare il ruolo da utilizzare per la connessione del cluster.

  4. Selezionare Registra cluster.

  5. Viene visualizzata la pagina Panoramica del cluster. Scegli Download YAML file (Scarica il file YAML) per scaricare il file manifesto sull'unità locale.

    Importante
    • Questa è l'unica occasione per eseguire il download di questo file. Non uscire da questa pagina, poiché il collegamento non sarà accessibile e sarà necessario annullare la registrazione del cluster e riavviare i passaggi dall'inizio.

    • Il file manifesto può essere utilizzato una sola volta per il cluster registrato. Se si eliminano risorse dal cluster Kubernetes, è necessario registrare nuovamente il cluster e ottenere un nuovo file manifesto.

    Continua con la fase successiva per applicare il file manifesto al cluster Kubernetes.

Fase 2: applicazione del file manifesto

Completare la connessione applicando il file manifesto Amazon EKS Connector al proprio cluster Kubernetes. Per farlo, è necessario utilizzare la AWS CLI o eksctl per i metodi di registrazione descritti in precedenza. La registrazione di Amazon EKS Connector scade se il manifesto non viene applicato entro tre giorni. Se la connessione al cluster scade, la registrazione del cluster deve essere annullata prima di poterlo connettere nuovamente.

  1. Nell'ambiente nativo del cluster, è possibile applicare il file manifesto aggiornato con il seguente comando:

    kubectl apply -f eks-connector.yaml
  2. Dopo aver applicato al cluster Kubernetes il manifesto e i file YAML dell'associazione dei ruoli di Amazon EKS Connector, verificare che il cluster sia connesso.

    aws eks describe-cluster \ --name "my-first-registered-cluster" \ --region AWS_REGION

    L'output deve includere status=ACTIVE.

  3. A questo punto è possibile aggiungere tag al cluster (facoltativo). Per ulteriori informazioni, consultare Assegnazione di tag alle risorse Amazon EKS.

Per concedere agli utenti IAM aggiuntivi l'accesso alla console Amazon EKS per visualizzare i cluster connessi, vedere Concessione dell'accesso a un utente per la visualizzazione di un cluster. I cluster saranno ora visualizzabili nella AWS Management Console, così come i nodi connessi e i carichi di lavoro.