Mi az a Kubectl Autoscale?
Az automatikus skálázás a Kubernetes-fürt fő funkciója, amely lehetővé teszi az erőforrások automatikus frissítését anélkül, hogy manuálisan kellene megtenni. Nagyon idő- és erőforrás-pazarló folyamat az igényes erőforrások manuális frissítése. A Kubernetes automatikus skálázása automatikus lehetőséget biztosít az erőforrások optimalizálására.
Az Autoscaler igény szerint létrehozhatja és megsemmisítheti a csomópontok számát. Az automatikus méretezés csökkenti az erőforrások pazarlását. A Kubectl automatikus skálázása automatikusan kiválasztja a Kubernetes-fürtön belül jelenleg futó podokat.
Kétféle méretezés létezik: (1) HorizontalPodScaler és (2) Vertical scaler. A vízszintes skálázó eltér a függőleges léptékezőtől. A HorizontalPodScaler szükség esetén segít csökkenteni vagy növelni a hüvelyek számát. Másrészről a függőleges léptékező olyan erőforrásokat használ, mint a CPU és a memória.
Itt található az összes lépés, amelyet követhet a rendszerében, és megtekintheti a kimenetet a jobb megértés érdekében.
1. lépés: Minikube-fürt indítása
Első lépésben indítsa el a minikube eszközt a Kubernetes-fürt futtatásához, hogy végrehajthassuk a „kubectl autoscale” parancsot. A minikube-fürt segítségével a Kubernetes-környezetben beállíthatja csomópontjait, podjait és akár fürtjét is. Ehhez használja a következő parancsot a minikube aktív módban tartásához:
~$ indítsa el a minikube-ot
Amint az a következő kimeneti képernyőképen látható, ez a parancs engedélyezi a minikube-fürtöt, és használhatóvá teszi a Kubernetes környezetet:
2. lépés: Szerezze meg a pod részleteit
Ebben a lépésben a Kubernetes-fürt sikeresen fut. Most megkapjuk a pod részleteit a fürtben. A Kubernetes pod az erőforrásokat megosztó egységek gyűjteménye. A következő parancsfájl a következő parancs futtatásával kerül végrehajtásra a minikube-fürtben:
~$ kubectl kap hüvelyeketAz előző „kubectl get pods” paranccsal megkaphatjuk a Kubernetes-fürtben futó összes pod listáját.
A „get pods” parancs végrehajtása után a következő kimenetet kapjuk:
3. lépés: Szerezze be a Pod telepítéseit
Az előző „kubectl get pods” parancsban megkapjuk a podok részleteit. Most a „get deployment” paranccsal kapjuk meg a létrehozott telepítések listáját. Erre a célra a következő szkript fut le:
~$ kubectl get telepítésekA parancs végrehajtása után a következő képernyőkép mutatja a kimenetet:
4. lépés: Automatikus telepítés
Az autoscale paranccsal a fürtben futó pod-ok automatizált kiválasztása történik. Az autoscale telepítésével a fürtben automatikusan beillesztjük és leállítjuk a csomópontok számát. A következő szkript fut le a minikube-fürtben, és megmutatja a fájlnevet, a minimális sorba rendezést és a maximális sorba rendezést, ahol a podoknak 2 és 10 között kell lenniük:
~$ kubectl autoscale deployment nginx1-deployment1 --min = 2 --max = 10A parancs végrehajtása után a következő kimenet jön létre:
5. lépés: Hozzon létre egy Kubernetes YAML fájlt
Ebben a lépésben megtanulja a YAML-fájl létrehozását a fürtben. A YAML fájl hasznos a telepítéshez és az alkalmazások teszteléséhez. A Kubernetesben többféle típus létezik a fájl létrehozására és szerkesztésére.
Ebben a cikkben a „nano” parancsot használjuk a YAML fájl létrehozásához, mert ez a legegyszerűbb módja és a legjobb választás kezdőknek.
Kövesse az itt megadott lépéseket YAML-fájl létrehozásához nano használatával:
- Új fájl létrehozásához vagy egy meglévő módosításához navigáljon a kívánt könyvtárhelyre.
- Írja be, hogy „nano”. Ezután írja be a fájl nevét. Ha például új fájlnevet szeretne létrehozni, írja le a nevet – „deploo.yaml”.
Futtassa a következő szkriptet, és hozzon létre egy YAML fájlt a projektkönyvtárban:
~$ nano deploo.yamlA „deploo.yaml” fájl létrehozása után a következő lépés a YAML fájl konfigurálása. A következő lépésben elmagyarázzuk.
6. lépés: A YAML fájl tartalma
Ebben a lépésben egyszerűen beállíthatjuk az Apache szervert és a PHP fájlokat. A HorizontalPodScaler használata előtt konfigurálnunk kell a terhelésfigyelőt. Ahogy a következő kódrészlet a kind:deployment-et mutatja, a webböngésző portja 90, a CPU korlátja pedig 200 m.
A „deploo.yaml” fájl teljes információit itt tekintheti meg:
apiVersion : apps/v1kedves : Telepítés
metaadatokat :
név : php
spec :
választó :
matchLabels :
fuss : php-apache
sablon :
metaadatokat :
címkéket :
fuss : php-apache
spec :
konténerek :
- név : php
kép : registry.k8s.io/hpa-example
portok :
- containerPort : 90
erőforrások :
határait :
CPU : 200 m
kéréseket :
CPU : 100 m
---
apiVersion : v1
kedves : Szolgáltatás
metaadatokat :
név : php
címkéket :
fuss : php-apache
spec :
portok :
- kikötő : 70
választó :
fuss : php-apache
7. lépés: Hozza létre a telepítést
Ebben a lépésben hozzuk létre a „deploo.yaml” nevű YAML fájlt. A következő szkript fut le a minikube-fürtben:
~$ kubectl create -f deploo.yamlAz általunk végrehajtott fent említett parancs kimenete a következő képernyőképen látható. A kimenet azt jelzi, hogy a YAML fájl létrejött:
8. lépés: A HorizontalPodScaler létrehozása
Ebben a lépésben megmutatjuk a parancsot a HorizontalPodAutoscaler létrehozásához. A tokok behelyezése és lezárása igény szerint automatikusan történik. Ez különbözik a függőleges skálázástól, ahol a CPU és a memória erőforrásait az automatikus skálázás rendeli hozzá. A következő szkript fut le a minikube-fürtben:
~$ kubectl autoscale telepítési php -- CPU - százalék = ötven -- min = 10 – max = húszItt láthatja, hogy a minimum és maximum értékeket 10-re és 20-ra állítottuk.
Mellékelve van az előző parancs kimenete:
9. lépés: Ellenőrizze a HorizontalPodScalert
Ebben a lépésben ellenőrizzük az újonnan létrehozott HorizontalPodAutoscaler jelenlegi állapotát. A következő parancs kerül végrehajtásra:
~$ kubectl get hpaKövetkeztetés
A Kubernetes egyik leghasznosabb funkciója a „kubectl autoscale”, amely automatikus erőforrás-frissítést biztosít a Kubernetes-fürtben. Az Autoscaler segít abban az esetben, ha a fürtnek növelnie kell vagy csökkentenie kell a sorokat. Ebben a cikkben megismertük a két automatikus skálázási módszert – az egyik az alapértelmezett autoscaler, a másik pedig a HorizontalPodScaler.
Először telepítettük és deklaráltuk a hüvelyeket. Ezután létrehoztuk az automatikus skálázót, és úgy konfiguráltuk az Apache-kiszolgálót, hogy a terhelésfigyelőt a HorizontalPodScaler előtt telepítse. Ezt követően létrehoztunk egy YAML fájlt és a HorizontalPodScalert. Ez a cikk az automatikus méretezésű Kubernetes létrehozásának, konfigurálásának és üzembe helyezésének részletes lépéseire összpontosított.