Installa AWS Load Balancer Controller con Helm - Amazon EKS

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à.

Installa AWS Load Balancer Controller con Helm

Questo argomento descrive come installare il AWS Load Balancer Controller utilizzando Helm, un gestore di pacchetti per Kubernetese. eksctl Il controller viene installato con le opzioni predefinite. Per ulteriori informazioni sul controller, inclusi i dettagli sulla configurazione con annotazioni, vedere la documentazione del controller Load AWS Balancer su GitHub.

Nei passaggi seguenti, sostituisci il example values con i tuoi valori.

Prerequisiti

Prima di iniziare questo tutorial, devi installare e configurare i seguenti strumenti e risorse necessari per creare e gestire un EKS cluster Amazon.

Fase 1: Creare un IAM ruolo utilizzando eksctl

Nota

Devi solo creare un IAM ruolo per AWS Load Balancer Controller uno per AWS account. Controlla se AmazonEKSLoadBalancerControllerRole esiste nella IAMconsole. Se questo ruolo esiste, vai al Passaggio 2: Installa Load AWS Balancer Controller.

  1. Scarica una IAM politica per AWS Load Balancer Controller che gli consente di effettuare chiamate per tuo AWS APIs conto.

    AWS

    **

$ curl -O https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.7.2/docs/install/iam_policy.json
AWS GovCloud (STATI UNITI)

**

$ curl -O https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.7.2/docs/install/iam_policy_us-gov.json
$ mv iam_policy_us-gov.json iam_policy.json
  1. Crea una IAM politica utilizzando la politica scaricata nel passaggio precedente.

    $ aws iam create-policy \ --policy-name AWSLoadBalancerControllerIAMPolicy \ --policy-document file://iam_policy.json
    Nota

    Se visualizzi la policy in AWS Management Console, la console mostra gli avvisi per il ELBservizio, ma non per il servizio ELBv2. Ciò accade perché alcune azioni nella policy esistono per la ELBv2, ma non per. ELB Puoi ignorare gli avvisi per. ELB

  2. Replace (Sostituisci) my-cluster con il nome del tuo cluster, 111122223333 con l'ID del tuo account, quindi esegui il comando. Se il cluster si trova nelle AWS regioni AWS GovCloud (Stati Uniti orientali) o AWS GovCloud (Stati Uniti occidentali), arn:aws: sostituiscilo con. arn:aws-us-gov:

    $ eksctl create iamserviceaccount \ --cluster=my-cluster \ --namespace=kube-system \ --name=aws-load-balancer-controller \ --role-name AmazonEKSLoadBalancerControllerRole \ --attach-policy-arn=arn:aws: iam::111122223333:policy/AWSLoadBalancerControllerIAMPolicy \ --approve

Fase 2: Installazione AWS Load Balancer Controller

  1. Aggiungi l'archivio eks-charts cartografico Helm. AWS mantiene questo repository attivo. GitHub

    $ helm repo add eks https://aws.github.io/eks-charts
  2. Aggiornare il repository locale per assicurarsi di avere i grafici più recenti.

    $ helm repo update eks
  3. Installa il AWS Load Balancer Controller.

    Replace (Sostituisci) my-cluster con il nome del tuo cluster. Nel comando seguente, aws-load-balancer-controller è Kubernetes account di servizio creato in un passaggio precedente.

    Per ulteriori informazioni sulla configurazione del grafico Helm, consulta values.yaml su. GitHub

    $ helm install aws-load-balancer-controller eks/aws-load-balancer-controller \ -n kube-system \ --set clusterName=my-cluster \ --set serviceAccount.create=false \ --set serviceAccount.name=aws-load-balancer-controller
    1. Se stai distribuendo il controller su EC2 nodi Amazon con accesso limitato al servizio di metadati delle EC2 istanze Amazon (IMDS) o se lo stai distribuendo su Fargate, aggiungi i seguenti flag al comando che segue: helm

      • --set region=region-code

      • --set vpcId=vpc-xxxxxxxx

    2. Per visualizzare le versioni disponibili di Helm Chart e Load Balancer Controller, utilizzate il seguente comando:

      helm search repo eks/aws-load-balancer-controller --versions
      Importante

      Il grafico distribuito non riceve automaticamente gli aggiornamenti di sicurezza. È necessario eseguire manualmente l'aggiornamento a un grafico più recente quando diventa disponibile. Durante l'aggiornamento, modifica install a upgrade nel comando precedente.

Il helm install comando installa automaticamente le definizioni delle risorse personalizzate (CRDs) per il controller. Il helm upgrade comando non lo fa. Se si utilizzahelm upgrade,, è necessario installare manualmente il CRDsEseguire il comando seguente per installare . CRDs:

wget https://raw.githubusercontent.com/aws/eks-charts/master/stable/aws-load-balancer-controller/crds/crds.yaml kubectl apply -f crds.yaml

Passaggio 3: Verificare che il controller sia installato

  1. Verificare che il controller sia installato.

    $ kubectl get deployment -n kube-system aws-load-balancer-controller

    Di seguito viene riportato un output di esempio:

    NAME READY UP-TO-DATE AVAILABLE AGE aws-load-balancer-controller 2/2 2 2 84s

    Riceverai l'output precedente se hai eseguito l'implementazione con Helm. Se lo hai distribuito utilizzando il Kubernetes manifest, hai solo una replica.

  2. Prima di utilizzare il controller per il provisioning AWS delle risorse, il cluster deve soddisfare requisiti specifici. Per ulteriori informazioni, consulta Indirizza l'applicazione e HTTP il traffico con Application Load Balancer e Percorso TCP e UDP traffico con Network Load Balancer.