Co je Kubectl Autoscale?
Automatické škálování je hlavní funkcí v clusteru Kubernetes, díky které se prostředky automaticky aktualizují, aniž by se museli obtěžovat ručně. Ruční aktualizace náročných zdrojů je proces, který velmi plýtvá časem a zdroji. Automatické škálování Kubernetes poskytuje automatické zařízení pro optimalizaci zdrojů.
Autoscaler může vytvořit a zničit počet uzlů podle požadavků. Automatické škálování snižuje plýtvání zdroji. Automatické škálování Kubectl automaticky vybere pody, které se aktuálně spouštějí v clusteru Kubernetes.
Existují dva typy škálování: (1) HorizontalPodScaler a (2) Vertical scaler. Horizontální scaler se liší od vertikálního scaleru. HorizontalPodScaler pomáhá v případě potřeby snížit nebo zvýšit počet lusků. Na druhou stranu vertikální scaler využívá zdroje, jako je CPU a paměť.
Zde jsou všechny kroky, které můžete ve svém systému provést a zobrazit výstup pro lepší pochopení.
Krok 1: Spuštění klastru Minikube
V prvním kroku spusťte nástroj minikube pro spuštění clusteru Kubernetes, abychom mohli provést příkaz „kubectl autoscale“. Své uzly, pody a dokonce i cluster můžete nastavit v prostředí Kubernetes pomocí clusteru minikube. Chcete-li to provést, použijte následující příkaz k udržení minikube v aktivním režimu:
~$ spustit minikube
Jak můžete vidět na následujícím snímku výstupní obrazovky, tento příkaz povolí cluster minikube a zpřístupní prostředí Kubernetes:
Krok 2: Získejte podrobnosti o podu
V tomto kroku je cluster Kubernetes úspěšně spuštěn. Nyní získáme podrobnosti o modulu v clusteru. Pod v Kubernetes je kolekce jednotek, které sdílejí prostředky. Následující skript se spustí spuštěním následujícího příkazu v clusteru minikube:
~$ kubectl dostat luskyPomocí předchozího příkazu, který je „kubectl get pods“, můžeme získat seznam všech podů, které běží v clusteru Kubernetes.
Po provedení příkazu „get pods“ získáme následující výstup:
Krok 3: Získejte Deployments of Pod
V předchozím příkazu „kubectl get pods“ získáme podrobnosti o podech. Nyní použijeme příkaz „get deployment“ k získání seznamu vytvořených nasazení. Pro tento účel je spuštěn následující skript:
~$ kubectl získat nasazeníPo provedení příkazu se na následujícím snímku obrazovky zobrazí výstup:
Krok 4: Nasazení automatického škálování
Příkaz autoscale se používá k automatickému výběru podů, které běží v clusteru. Nasazením autoscale v clusteru automaticky vložíme a ukončíme počet uzlů. Následující skript se spustí v clusteru minikube a zobrazí název souboru, minimální pody a maximální pody, kde by pody měly být mezi 2 až 10:
~$ kubectl autoscale deployment nginx1-deployment1 --min = 2 --max = 10Po provedení příkazu se vygeneruje následující výstup:
Krok 5: Vytvořte soubor Kubernetes YAML
V tomto kroku se naučíte vytvořit soubor YAML v clusteru. Soubor YAML je užitečný pro nasazení a testování aplikací. V Kubernetes existují různé typy pro vytvoření a úpravu souboru.
V tomto článku používáme k vytvoření souboru YAML příkaz „nano“, protože je to nejjednodušší způsob a nejlepší volba pro začátečníky.
Chcete-li vytvořit soubor YAML pomocí nano, postupujte podle uvedených kroků:
- Chcete-li vytvořit nový soubor nebo změnit existující, přejděte do požadovaného umístění adresáře.
- Zadejte „nano“. Poté napište název souboru. Pokud například chcete vytvořit nový název souboru, zapište si název – „deploo.yaml“.
Spusťte následující skript a vytvořte soubor YAML v adresáři projektu:
~$ nano deploo.yamlPo vytvoření souboru „deploo.yaml“ je dalším krokem konfigurace souboru YAML. Vysvětlíme to v následujícím kroku.
Krok 6: Obsah souboru YAML
V tomto kroku můžeme snadno nakonfigurovat server Apache a soubory PHP. Než použijeme HorizontalPodScaler, musíme nakonfigurovat monitor pracovní zátěže. Jak ukazuje následující část kódu kind:deployment, port webového prohlížeče je 90 a limit CPU je 200m.
Kompletní informace o souboru „deploo.yaml“ můžete vidět zde:
apiVersion : aplikace/v1druh : Rozvinutí
metadata :
název : php
spec :
volič :
matchLabels :
běh : php-apache
šablona :
metadata :
štítky :
běh : php-apache
spec :
kontejnery :
- název : php
obraz : registry.k8s.io/hpa-example
porty :
- kontejnerPort : 90
zdroje :
limity :
procesor : 200 m
žádosti :
procesor : 100 m
---
apiVersion : v1
druh : Servis
metadata :
název : php
štítky :
běh : php-apache
spec :
porty :
- přístav : 70
volič :
běh : php-apache
Krok 7: Vytvořte rozmístění
V tomto kroku vytvořte soubor YAML s názvem „deploo.yaml“. V clusteru minikube se spustí následující skript:
~$ kubectl create -f deploo.yamlVýstup výše uvedeného příkazu, který jsme provedli, je vidět na následujícím snímku obrazovky. Výstup indikuje, že soubor YAML byl vytvořen:
Krok 8: Vytvořte HorizontalPodScaler
V tomto kroku vám ukážeme příkaz k vytvoření HorizontalPodAutoscaler. Podložky se vkládají a ukončují automaticky v závislosti na poptávce. Liší se od vertikálního škálování, kde jsou prostředky CPU a paměti přiřazeny automatickým škálováním. V clusteru minikube se spustí následující skript:
~$ nasazení kubectl autoscale php -- procesor - procent = padesáti -- min = 10 – max = dvacetZde vidíte, že jsme nastavili hodnoty pro minimum a maximum na 10 a 20.
V příloze je výstup předchozího příkazu:
Krok 9: Zkontrolujte HorizontalPodScaler
V tomto kroku zkontrolujeme aktuální stav HorizontalPodAutoscaler, který je nově vytvořen. Provede se následující příkaz:
~$ kubectl získat hpaZávěr
Jednou z nejužitečnějších funkcí Kubernetes je „kubectl autoscale“, které poskytuje automatické aktualizace prostředků v clusteru Kubernetes. Autoscaler pomáhá, když cluster potřebuje zvětšit nebo zmenšit pody. V tomto článku jsme se naučili dvě metody automatického škálování – jedna je výchozí autoscaler a druhá je HorizontalPodScaler.
Nejprve jsme rozmístili moduly a vyhlásili je. Poté jsme vytvořili autoscaler a nakonfigurovali server Apache tak, aby nasadil monitor pracovní zátěže před HorizontalPodScaler. Poté jsme vytvořili soubor YAML a HorizontalPodScaler. Tento článek se zaměřil na podrobné kroky vytváření, konfigurace a nasazení automatického škálování Kubernetes.