Unterstützung für die Verbesserung dieser Seite beitragen
Um zu diesem Benutzerhandbuch beizutragen, klicken Sie auf den Link Diese Seite auf GitHub bearbeiten, der sich im rechten Bereich jeder Seite befindet.
Bereitstellung einer erhöhten Beispiel-Workload in einem Cluster in Amazon EKS Auto Mode
In diesem Tutorial erfahren Sie, wie Sie eine Beispiel-Workload in einem EKS-Auto-Mode-Cluster bereitstellen und beobachten, wie dieser automatisch die erforderlichen Rechenressourcen bereitstellt. Sie verwenden kubectl-Befehle, um das Verhalten des Clusters zu beobachten und aus erster Hand zu erfahren, wie der Automatikmodus den Kubernetes-Betrieb auf AWS vereinfacht. Am Ende dieses Tutorials werden Sie verstehen, wie EKS Auto Mode auf Workload-Bereitstellungen reagiert, indem er die zugrunde liegenden Rechenressourcen automatisch verwaltet, ohne dass eine manuelle Konfiguration der Knotengruppe erforderlich ist.
Voraussetzungen
-
Ein Cluster in Amazon EKS Auto Mode. Notieren Sie sich den Namen und die AWS-Region des Clusters.
-
Ein IAM-Prinzipal, beispielsweise ein Benutzer oder eine Rolle, mit ausreichenden Berechtigungen zur Verwaltung von Netzwerk-, Rechen- und EKS-Ressourcen.
-
Weitere Informationen finden Sie unter Erstellung von Rollen und Hinzufügen von Richtlinien im IAM-Benutzerhandbuch.
-
-
aws-CLI installiert und mit einer IAM-Identität konfiguriert. -
kubectl-CLI installiert und mit dem Cluster verbunden.-
Weitere Informationen finden Sie unter Einrichtung zur Verwendung von Amazon EKS.
-
Schritt 1: Vorhandene Rechenressourcen überprüfen (optional)
Verwenden Sie zunächst kubectl, um die Knoten-Pools in Ihrem Cluster aufzulisten.
kubectl get nodepools
Beispiel-Ausgabe:
general-purpose
In diesem Tutorial werden wir eine Workload bereitstellen, die für die Verwendung des general-purpose-Knoten-Pools konfiguriert ist. Dieser Knoten-Pool ist in EKS Auto Mode integriert und enthält sinnvolle Standardeinstellungen für allgemeine Workloads wie Microservices und Web-Anwendungen. Sie können Ihren eigenen Knoten-Pool erstellen. Weitere Informationen finden Sie unter Einen Knotenpool für EKS Auto Mode erstellen.
Verwenden Sie anschließend kubectl, um die mit Ihrem Cluster verbundenen Knoten aufzulisten.
kubectl get nodes
Wenn Sie gerade einen EKS-Auto-Mode-Cluster erstellt haben, werden keine Knoten angezeigt.
In diesem Tutorial werden Sie eine Beispiel-Workload bereitstellen. Wenn keine Knoten vorhanden sind oder die Workload nicht auf die vorhandenen Knoten passt, wird der EKS-Auto-Mode-Cluster einen neuen Knoten bereitstellen
Schritt 2: Beispielanwendung im Cluster bereitstellen
Überprüfen Sie die folgende Kubernetes-Bereitstellung und speichern Sie sie als inflate.yaml
apiVersion: apps/v1 kind: Deployment metadata: name: inflate spec: replicas: 1 selector: matchLabels: app: inflate template: metadata: labels: app: inflate spec: terminationGracePeriodSeconds: 0 nodeSelector: eks.amazonaws.com/compute-type: auto securityContext: runAsUser: 1000 runAsGroup: 3000 fsGroup: 2000 containers: - name: inflate image: public.ecr.aws/eks-distro/kubernetes/pause:3.7 resources: requests: cpu: 1 securityContext: allowPrivilegeEscalation: false
Beachten Sie, dass für den eks.amazonaws.com/compute-type: auto-Selektor die Bereitstellung des Workloads in einem Knoten von Amazon EKS Auto Mode erforderlich ist.
Wenden Sie die Bereitstellung auf Ihren Cluster an.
kubectl apply -f inflate.yaml
Schritt 3: Kubernetes-Ereignisse beobachten
Verwenden Sie den folgenden Befehl, um Kubernetes-Ereignisse zu überwachen, einschließlich der Erstellung eines neuen Knotens. Verwenden Sie ctrl+c, um die Überwachung von Ereignissen zu beenden.
kubectl get events -w --sort-by '.lastTimestamp'
Verwenden Sie kubectl, um die mit Ihrem Cluster verbundenen Knoten erneut aufzulisten. Notieren Sie sich den neu erstellten Knoten.
kubectl get nodes
Schritt 4: Knoten und Instances in der AWS-Konsole anzeigen
Sie können die Knoten in EKS Auto Mode in der EKS-Konsole und die zugehörigen EC2-Instances in der EC2-Konsole anzeigen.
Die durch EKS Auto Mode bereitgestellten EC2-Instances unterliegen Einschränkungen. Sie können in EKS-Auto-Mode-Knoten keine beliebigen Befehle ausführen.
Schritt 5: Bereitstellung löschen
Verwenden Sie kubectl, um die Beispielbereitstellung zu löschen
kubectl delete -f inflate.yaml
Wenn keine weiteren Workloads in Ihrem Cluster bereitgestellt sind, bleibt der vom EKS Auto Mode erstellte Knoten leer.
In der Standardkonfiguration erkennt EKS Auto Mode Knoten, die seit 30 Sekunden leer sind, und beendet sie.
Verwenden Sie kubectl oder die EC2-Konsole, um zu überprüfen, ob die zugehörige Instance gelöscht wurde.