Konfigurieren Sie HPA in Kubernetes

Konfigurieren Sie HPA in Kubernetes
In diesem Artikel werden wir die Konfiguration des horizontalen Pod -Autoscaling in Kubernetes erörtern. Dieses Thema ist in Kubernetes sehr interessant und informativ. Es gibt viele Verwirrung darüber, wie die Behälter in Kubernetes horizontal skaliert werden. In diesem Editorial werden wir mit relevanten Screenshots über jedes Einsprungdetail sprechen. Wenn Sie keine Ahnung von Kubernetes haben, durchlaufen Sie unsere vorherigen Artikel, die mit Kubernetes zusammenhängen. HPA ist die automatische Skalierung von Pods horizontal. Schauen wir uns die folgenden Abschnitte an, um mehr Verständnis zu erhalten.

Was ist HPA in Kubernetes?

HPA steht für horizontale POD -Autoscaler in Kubernetes und verändert die Struktur des Kubernetes -Verkehrs -Workloads, indem die Anzahl der Pods nach CPU -Nutzungskapazität automatisch erhöht oder verringert wird. Im Gegensatz zur Änderung der Ressourcen, die einem einzelnen Container zugeteilt werden, wird diese Skalierung horizontal durchgeführt, da sie die Gesamtzahl der CPU -Instanzen beeinflusst.

Wie funktioniert HPA in Kubernetes??

Wir alle sind uns bewusst, dass die CPU Prozesse behandelt. Sobald wir die Replikate bereitstellen und festlegen, sind die Dämonen alle fest. Kubernetes bietet horizontale Pod -Autoscaling, um diesen Prozess zu automatisieren. HPA ist der Controller, mit dem die CPU -Nutzung durch Automatisierung gesteuert wird. Eine Kubernetes -Anwendungsskala basiert automatisch auf Workloads. Wenn die Anzahl der Verkehrsabfälle und die CPU -Auslastung abnimmt, skaliert sie ab. Die Kubernetes -Anwendung skaliert, wenn die Workloads zunehmen, indem mehr Replikate der Kubernetes -Anwendung erstellt werden.

Voraussetzungen:

Das Folgende ist erforderlich, um den HPA in Ihrer Kubernetes -Anwendung auszuführen:

  • Installierte die neueste Version von Ubuntu in Ihrem System.
  • Wenn Sie ein Windows -Benutzer sind, installieren Sie zuerst das virtuelle Feld und führen Sie den Ubuntu oder Linux praktisch in Ihrem System aus.
  • Installierte die neueste Version von Kubernetes in Ihrem System mit Version 1.23.
  • Sie müssen eine Vorstellung über das Befehlszeilen -Tool von Kubernetes Cluster und Kubectl haben, auf dem wir die Befehle ausführen. Sie müssen ihre Konfiguration kennenlernen.

In diesem Artikel lernen wir jedes Einsprungdetail mit hilfreichen Beispielen kennen. Wenn Sie Anfänger sind, ist dies der richtige Ort für Sie, um über Kubernetes -Methoden zu erfahren. Wir werden den HPA -Konfigurationsprozess in verschiedenen Schritten erläutern. Lass uns anfangen!

Schritt 1: Kubernetes -Container -Startup

In diesem Schritt beginnen wir mit dem Kubernetes -Container, der ein Minikube ist. Wir führen den folgenden Befehl aus, um den Minikube zu starten:

> Minikube Start

Minikube beginnt nach der Befehlsausführung. Minikube bietet uns einen lokalen Kubernetes -Container, in dem wir unterschiedliche Aktionen ausführen.

Schritt 2: Führen Sie den PHP-Apache-Server in der YAML-Datei aus

In diesem Schritt erstellen wir eine Konfigurationsdatei, nachdem ein Container erstellt wurde, um eine Bereitstellung zu starten. Wir führen den folgenden Befehl aus, um eine YAML -Datei zu erstellen:

> Nano Php.Yaml

Das Folgende ist die Ausführung des Befehls, der im angehängten Screenshot erwähnt wird.

Die Konfigurationsdatei enthält verschiedene Arten von Daten wie den Namen der Datei, die Spezifikationen von Containern und die Spezifikation des Selektors. Dieser Container läuft mit Hilfe von „Registrierung.K8S.IO/HPA-Beispiel ”Bild, wie wir im folgenden Screenshot sehen können:

Dies ist auch der YAML -Dateiteil:

Schritt 3: Erstellen Sie eine Bereitstellung und Dienste in Kubernetes

In diesem Schritt erstellen wir eine Bereitstellung und deklarieren sie als Dienst über den angehängten Screenshot. Wir führen den folgenden Befehl im Terminal aus:

> kubectl anwenden -f PHP.Yaml

Nach dieser Befehlsausführung wird der Php-Apache-Bereitstellungsserver erstellt. Zusammen mit diesem wird der Service erfolgreich erstellt.

Schritt 4: Erstellen Sie einen horizontalen Pod -Autoscaler in Kubernetes

In diesem Schritt erstellen wir mit Kubectl auf dem Bereitstellungsserver einen horizontalen POD -Autoscaler mit Kubectl. Zu diesem Zweck führen wir den folgenden Befehl aus:

> Kubectl Autoscale -Bereitstellung PHP -APACHE - -CPU -Percent = 50 -min = 1 -max = 10

Wenn wir diesen Befehl ausführen, wird der horizontale POD -Autoscaler erfolgreich erstellt. Im vorherigen Befehl initialisieren wir auch die min- und maximalen Werte. Dies bedeutet, dass der horizontale POD -Autoscaler zwischen 1 und 10 Repliken der Pod gehalten wird. Dies alles wird vom Bereitstellungs-Php-Apache-Server gesteuert.

Schritt 5: Überprüfen Sie den Status des horizontalen POD -Autoscaler in Kubernetes

In diesem Schritt möchten wir den Status von HPA abrufen oder überprüfen - wenn HPA in Kubernetes vorhanden ist oder nicht. Für diesen Zweck führen wir den angehängten Befehl aus:

> Kubectl erhalten HPA

Wie wir im zuvor angehaltenen Screenshot gesehen haben, ist ein HPA in unserem Container vorhanden und sein Name ist "Php-Apache". Die Referenz dieses Pod lautet "Bereitstellung/PHP-Apache". Die Ziele zeigen uns, dass der CPU -Verbrauch dieses POD von 50% unbekannt ist, was bedeutet, dass keine Kundenanforderung empfangen wird. Die minimale Anzahl der Pod beträgt 1 und die maximale Anzahl von Pods beträgt 10. Die Repliken sind „0“ und das Alter dieser Pod ist „7s“.

Schritt 6: Erhöhen Sie eine Arbeitsbelastung oder einen Verkehr auf dem Server

In diesem Schritt stellen wir eine Verbindung zu der Bereitstellung her, die zuvor erstellt wurde, um einen Pod zu erstellen und das HPA in der realen Umgebung zu überprüfen, um festzustellen, ob das HPA die Ressourcen verwalten kann oder nicht. Wir erhöhen auch die Last des Clusters, indem wir den folgenden nachfolgenden Befehl ausführen:

> kubectl run -i -tty load generator -rm -image = tousybox: 1.28 -restart = nie - /bin /sh -c “während des Schlafes 0.01; do wget -q -o- http: // php-apache; Erledigt"

Schritt 7: Beobachten Sie die HPA nach der Ausführung

Wir können die Liste der HPA leicht ansehen, indem wir den folgenden Befehl ausführen:

> Kubectl GET HPA PHP-APACHE-WATCH

Nach dem Ausführen des zuvor erwähnten Befehls erscheint das Ergebnis wie in Schritt 6 dieses Artikels.

Schritt 8: Zeigen Sie die Bereitstellung von Kubernetes an

In diesem Schritt holen wir die Liste der Kubernetes -Bereitstellungen, indem wir den folgenden Befehl ausführen:

> Kubectl erhalten Sie die Bereitstellung PHP-Apache

Schritt 9: Erstellen Sie mehr Repliken

In diesem Schritt erstellen wir die Replik derselben Pod in Kubernetes mit demselben Befehl:

> Kubectl GET HPA PHP -APache -watch -Watch

Dieser Befehl beobachtet das POD -Detail nach der Ausführung. Wir können dieses POD-Detail im zuvor erwähnten Screenshot sehen.

Schritt 10: Nehmen Sie die Bereitstellung erneut ein

In diesem Schritt führen wir denselben Befehl aus, um die Bereitstellung anzuzeigen. Der Befehl lautet wie folgt:

> Kubectl erhalten Sie die Bereitstellung PHP-Apache

Abschluss

In diesem Artikel geht es um HPA. HPA bietet eine Einrichtung für die Automatisierung, die sich auf die CPU -Auslastung bezieht. Wir haben jedes Einsprungdetail für die HPA-Konfiguration gelernt. Wir hoffen, dass Sie auch die Arbeit von HPA verstehen und diese Praxis in Ihrer Umgebung durchführen können.