Skonfiguruj HPA w Kubernetes

Skonfiguruj HPA w Kubernetes
W tym artykule omówimy konfigurację poziomego autoskalingu kapsułowego w Kubernetes. Ten temat jest bardzo interesujący i pouczający w Kubernetes. Istnieje wiele zamieszania w tym, jak pojemniki są skalowane poziomo w Kubernetes. W tym artykule redakcyjnym porozmawiamy o każdym stopniu z odpowiednimi zrzutami ekranu. Jeśli nie masz pojęcia o Kubernetes, przejrzyj nasze poprzednie artykuły związane z Kubernetes. HPA to automatyczne skalowanie kapsuł, poziomo. Rzućmy okiem na następujące sekcje, aby uzyskać więcej zrozumienia.

Co to jest HPA w Kubernetes?

HPA oznacza poziomy autoscalera POD w Kubernetes i modyfikuje strukturę obciążenia ruchu Kubernetes, automatycznie zwiększając lub zmniejszając liczbę kapsuł według pojemności wykorzystania procesora. W przeciwieństwie do modyfikacji zasobów, które są przydzielane do jednego kontenera, skalowanie to odbywa się poziomo, ponieważ wpływa na całkowitą liczbę instancji procesora.

Jak działa HPA w Kubernetes?

Wszyscy zdajemy sobie sprawę, że procesor obsługuje procesy. Gdy tylko wdrażamy i ustawiamy repliki, wszystkie demony są ustawione i możemy ręcznie dodać więcej strąków do wdrażania lub zestawu repliki. Kubernetes zapewnia poziome autoscaling POD w celu zautomatyzowania tego procesu. HPA to kontroler, który służy do kontrolowania wykorzystania procesora poprzez automatyzację. Aplikacja Kubernetes skaluje się automatycznie na podstawie obciążeń. Jeśli liczba ruchu spadnie i wykorzystanie procesora zmniejsza się, zmniejsza się. Aplikacja Kubernetes skaluje się, gdy obciążenia rosną, tworząc więcej replik aplikacji Kubernetes.

Wymagania wstępne:

Do uruchomienia HPA w aplikacji Kubernetes wymagane są następujące:

  • Zainstalowana najnowsza wersja Ubuntu w twoim systemie.
  • Jeśli jesteś użytkownikiem systemu Windows, najpierw zainstaluj wirtualne pole i uruchom Ubuntu lub Linux praktycznie w swoim systemie.
  • Zainstalowana najnowsza wersja Kubernetes w twoim systemie z wersją 1.23.
  • Musisz mieć pomysł na narzędzie Kubernetes Cluster i Kubectl Line. Musisz znać ich konfigurację.

W tym artykule poznamy każdy krok z przydatnymi przykładami. Jeśli jesteś początkującym, jest to odpowiednie miejsce do poznania metod Kubernetes. Wyjaśnimy o procesie konfiguracji HPA w różnych krokach. Zaczynajmy!

Krok 1: Kubernetes Container Startup

Na tym etapie zaczynamy od kontenera Kubernetes, który jest minikube. Uruchamiamy następujące polecenie, aby uruchomić minikube:

> Minikube start

Minikube zaczyna się po wykonaniu polecenia. MiniKube zapewnia nam lokalny kontener Kubernetes, w którym wykonujemy różne działania.

Krok 2: Uruchom serwer PHP-Apache w pliku YAML

W tym kroku tworzymy plik konfiguracyjny po utworzeniu kontenera, aby rozpocząć wdrożenie. Uruchamiamy następujące polecenie, aby utworzyć plik YAML:

> Nano PHP.Yaml

Poniżej znajduje się wykonanie polecenia wspomnianego na załączonym zrzucie ekranu.

Plik konfiguracyjny zawiera różne typy danych, takie jak nazwa pliku, specyfika. Ten kontener działa za pomocą „Rejestru.K8s.Obraz IO/HPA ”, jak widać na poniższym zrzucie ekranu:

To także część pliku YAML:

Krok 3: Utwórz wdrożenie i usługi w Kubernetes

W tym kroku tworzymy wdrożenie i deklarujemy je jako usługę za pomocą załączonego zrzutu ekranu. Wykonujemy następujące polecenie w terminalu:

> Kubectl Zastosuj -f php.Yaml

Po wykonaniu tego polecenia tworzony jest serwer wdrażania PHP-Apache. Wraz z tym usługa jest tworzona pomyślnie.

Krok 4: Utwórz poziomy autoscalera kapsułki w Kubernetes

W tym etapie tworzymy poziomy autoscaler z Kubectl na serwerze wdrażania. W tym celu uruchamiamy następujące polecenie:

> Kubectl AutoScale wdrażanie php -apache - -cpu -percent = 50 -min = 1 -max = 10

Kiedy wykonywamy to polecenie, autoskaler horyzontalny jest tworzony pomyślnie. W poprzednim poleceniu inicjujemy również wartości Min i Maks. Oznacza to, że poziomy autoscalera kapsułki jest utrzymywany między 1 do 10 replikami kapsułki. Wszystko to jest kontrolowane przez serwer PHP-Apache wdrażania.

Krok 5: Sprawdź status autoscalera poziomego kapsuły w Kubernetes

W tym kroku chcemy uzyskać lub sprawdzić status HPA - jeśli jakikolwiek HPA jest obecny w Kubernetes, czy nie. W tym celu uruchamiamy załączone polecenie:

> kubectl zdobądź HPA

Jak widzieliśmy na uprzednio przywiązanym zrzucie ekranu, jeden HPA jest obecny w naszym pojemniku, a jego nazwa to „PHP-apache”. Odniesienie do tego POD to „wdrażanie/php-apache”. Cele pokazują nam, że zużycie procesora tego kapsuły nie jest znane 50%, co oznacza, że ​​nie otrzymano żądania klienta. Minimalna liczba kapsułów wynosi 1, a maksymalna liczba kapsułek wynosi 10. Repliki to „0”, a wiek tego kapsuły to „7s”.

Krok 6: Zwiększ obciążenie lub ruch na serwerze

W tym etapie łączymy się z wdrożeniem, które zostało wcześniej utworzone w celu utworzenia kapsułki i sprawdzania HPA w prawdziwym środowisku, aby sprawdzić, czy HPA może zarządzać zasobami, czy nie. Zwiększamy również obciążenie klastra, uruchamiając następujące kolejne polecenie:

> Kubectl RUN -i -tty load -generator -rm -image = zajętybox: 1.28 -restart = nigdy - /bin /sh -c „podczas snu 0.01; zrób wget -q -o- http: // php -apache; zrobione"

Krok 7: Obejrzyj HPA po wykonaniu

Możemy łatwo obejrzeć listę HPA, uruchamiając następujące polecenie:

> kubectl zdobądź hpa php-apache-wtych

Po uruchomieniu wcześniej wspomnianego polecenia wynik pojawia się tak samo jak w kroku 6 tego artykułu.

Krok 8: Pokaż wdrożenie Kubernetes

W tym kroku pobieramy listę wdrożeń Kubernetes, uruchamiając następujące polecenie:

> Kubectl otrzymuj wdrożenie php-apache

Krok 9: Utwórz więcej replików

W tym kroku tworzymy replikę tego samego kapsuła w Kubernetes z tym samym poleceniem:

> kubectl zdobądź HPA PHP -Apache -Watch

To polecenie obserwuje szczegóły kapsuły po wykonaniu. Widzimy ten szczegół kapsuły na wcześniej wspomnianym zrzucie ekranu.

Krok 10: Ponownie pozyskaj rozmieszczenie

Na tym etapie uruchamiamy to samo polecenie, aby pokazać wdrożenie. Polecenie jest następujące:

> Kubectl otrzymuj wdrożenie php-apache

Wniosek

Ten artykuł dotyczy HPA. HPA zapewnia możliwość automatyzacji związanej z wykorzystaniem procesora. Nauczyliśmy się każdego stopnia do konfiguracji HPA. Mamy nadzieję, że zrozumiesz także działanie HPA i możesz wykonać tę praktykę w swoim środowisku.