Unterstützung für die Verbesserung dieser Seite beitragen
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet.
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Anwendungen vom veralteten ALB Ingress Controller migrieren
In diesem Thema wird die Migration von veralteten Controller-Versionen beschrieben. Insbesondere wird beschrieben, wie veraltete Versionen des AWS Load Balancer Controllers entfernt werden.
-
Veraltete Versionen können nicht aktualisiert werden. Sie müssen diese zuerst entfernen und dann eine aktuelle Version installieren.
-
Zu den veralteten Versionen gehören:
-
AWS ALB Ingress Controller für Kubernetes („Ingress Controller“), ein Vorgänger des Load Balancer Controllers. AWS
-
Beliebige
0.1.Version des AWS Load Balancer Controllersx
-
Veraltete Controller-Version entfernen
Anmerkung
Möglicherweise haben Sie die veraltete Version mit Helm oder manuell mit Kubernetes-Manifesten installiert. Führen Sie den Vorgang mit dem Tool aus, mit dem Sie ihn ursprünglich installiert haben.
-
Wenn Sie das
incubator/aws-alb-ingress-controller-Helm-Chart installiert haben, deinstallieren Sie es.helm delete aws-alb-ingress-controller -n kube-system -
Wenn Sie Version
0.1.desxeks-charts/aws-load-balancer-controller-Charts installiert haben, deinstallieren Sie es. Das Upgrade von0.1.auf Versionx1.0.0funktioniert nicht, da die Webhook-API-Version inkompatibel ist.helm delete aws-load-balancer-controller -n kube-system -
Überprüfen Sie, ob der Controller derzeit installiert ist.
kubectl get deployment -n kube-system alb-ingress-controllerDies ist die Ausgabe, falls der Controller nicht installiert ist.
Error from server (NotFound): deployments.apps "alb-ingress-controller" not foundDies ist die Ausgabe, falls der Controller installiert ist.
NAME READY UP-TO-DATE AVAILABLE AGE alb-ingress-controller 1/1 1 1 122d -
Geben Sie die folgenden Befehle ein, um den Controller zu entfernen.
kubectl delete -f https://raw.githubusercontent.com/kubernetes-sigs/aws-alb-ingress-controller/v1.1.8/docs/examples/alb-ingress-controller.yaml kubectl delete -f https://raw.githubusercontent.com/kubernetes-sigs/aws-alb-ingress-controller/v1.1.8/docs/examples/rbac-role.yaml
Zum AWS Load Balancer Controller migrieren
Um vom ALB Ingress Controller für Kubernetes zum Load AWS Balancer Controller zu migrieren, müssen Sie:
-
Entfernen Sie den ALB Ingress Controller (siehe oben).
-
Fügen Sie der vom Load AWS Balancer Controller verwendeten IAM-Rolle eine zusätzliche Richtlinie hinzu. Diese Richtlinie ermöglicht es dem LBC, die vom ALB Ingress Controller für Kubernetes erstellten Ressourcen zu verwalten.
-
Laden Sie die IAM-Richtlinie herunter. Diese Richtlinie ermöglicht es dem Load AWS Balancer Controller, Ressourcen zu verwalten, die vom ALB Ingress Controller für Kubernetes erstellt wurden. Sie können auch die Richtlinie anzeigen
. curl -O https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.14.1/docs/install/iam_policy_v1_to_v2_additional.json -
Wenn sich Ihr Cluster in den Regionen AWS GovCloud (USA-Ost) oder AWS GovCloud (US-West) befindet, ersetzen Sie ihn durch. AWS
arn:aws:arn:aws-us-gov:sed -i.bak -e 's|arn:aws:|arn:aws-us-gov:|' iam_policy_v1_to_v2_additional.json -
Erstellen Sie die IAM-Richtlinie und notieren Sie den zurückgegebenen ARN.
aws iam create-policy \ --policy-name AWSLoadBalancerControllerAdditionalIAMPolicy \ --policy-document file://iam_policy_v1_to_v2_additional.json -
Hängen Sie die IAM-Richtlinie an die IAM-Rolle an, die vom AWS Load Balancer Controller verwendet wird.
your-role-nameErsetzen Sie durch den Namen der Rolle, z. B.AmazonEKSLoadBalancerControllerRoleWenn Sie die Rolle mit
eksctl, erstellt haben, öffnen Sie die AWS CloudFormation Konsoleund wählen Sie den eksctl- my-cluster- addon-iamserviceaccount-kube-system - aws-load-balancer-controller Stack aus, um den Rollennamen zu finden, der erstellt wurde. Wählen Sie die Registerkarte für Resources (Ressourcen). Der Rollenname befindet sich in der Spalte Physische ID.aws iam attach-role-policy \ --role-name your-role-name \ --policy-arn arn:aws: iam::111122223333:policy/AWSLoadBalancerControllerAdditionalIAMPolicy