Kubectl Autoscale Command

Kubectl Autoscale Command



Kubernetes tarjoaa automaattisen skaalauksen mahdollisuuden hallita resursseja automaattisesti ilman ihmisen vuorovaikutusta. Autoscale-toiminto muuttaa automaattisesti solmujen määrää tarvittaessa ja säästää resursseja. Tässä artikkelissa opimme ottamaan käyttöön 'kubectl autoscale' -komennon ja 'HorizontalPodScaler' automaattisen skaalauksen. Tämä opetusohjelma opettaa tämän tärkeän käsitteen yksityiskohtaisesti. Keskustellaan ensin siitä, mitä kubectl autoscale -konsepti on, ja siirrytään sitten kohti vaiheittaista prosessia ymmärtääksesi paremmin. Tämä artikkeli on erittäin hyödyllinen, jos olet uusi Kubernetes-automaattisen skaalauksen käsitteessä.

Mikä on Kubectl Autoscale?

Automaattinen skaalaus on Kubernetes-klusterin pääominaisuus, joka saa resurssit päivittymään automaattisesti ilman manuaalista tekemistä. Vaativien resurssien manuaalinen päivittäminen on erittäin aikaa ja resursseja vievä prosessi. Kubernetes autoscaling tarjoaa automaattisen toiminnon resurssien optimointiin.

Autoscaler voi luoda ja tuhota solmujen määrän vaatimusten mukaan. Autoscale vähentää resurssien tuhlausta. Kubectl-automaattinen mittakaava valitsee automaattisesti Kubernetes-klusterin sisällä parhaillaan suoritettavat podit.







Skaalaustyyppejä on kahdenlaisia: (1) HorizontalPodScaler ja (2) pystyskaalaus. Horisontaalinen skaalaus on erilainen kuin pystyskaalaus. HorizontalPodScaler auttaa vähentämään tai lisäämään podeja tarvittaessa. Toisaalta pystyskaalaus käyttää resursseja, kuten prosessoria ja muistia.



Tässä ovat kaikki vaiheet, joita voit seurata järjestelmässäsi ja nähdä tulosteen paremman ymmärtämisen vuoksi.



Vaihe 1: Minikube-klusterin käynnistäminen

Ensimmäisessä vaiheessa käynnistä minikube-työkalu Kubernetes-klusterin suorittamiseksi, jotta voimme suorittaa 'kubectl autoscale' -komennon. Voit määrittää solmut, poddit ja jopa klusterin Kubernetes-ympäristössä minikube-klusterin avulla. Pidä minikube aktiivisessa tilassa käyttämällä seuraavaa komentoa:





~$ aloita minikube

Kuten seuraavassa tulosteen kuvakaappauksessa näet, tämä komento ottaa käyttöön minikube-klusterin ja tekee Kubernetes-ympäristöstä käyttökelpoisen:

Vaihe 2: Hanki podin tiedot

Tässä vaiheessa Kubernetes-klusteri toimii onnistuneesti. Nyt saamme pod-yksityiskohdat klusteriin. Kubernetesin pod on kokoelma yksiköitä, jotka jakavat resursseja. Seuraava komentosarja suoritetaan suorittamalla seuraava komento minikube-klusterissasi:

~$ kubectl get pods

Käyttämällä edellistä komentoa, joka on 'kubectl get pods', voimme saada luettelon kaikista Kubernetes-klusterissa suoritettavista podista.

Kun olet suorittanut 'get pods' -komennon, saamme seuraavan lähdön:

  Kuvakaappaus tietokoneohjelman kuvauksesta, joka luotiin automaattisesti alhaisella varmuudella

Vaihe 3: Hanki Podin käyttöönotot

Edellisessä 'kubectl get pods' -komennossa saamme podien tiedot. Nyt käytämme 'get deployment' -komentoa saadaksemme luettelon luoduista käyttöönotoista. Tätä tarkoitusta varten suoritetaan seuraava komentosarja:

~$ kubectl get käyttöönottoja

Komennon suorittamisen jälkeen tulos näkyy seuraavassa kuvakaappauksessa:

Vaihe 4: Automaattinen käyttöönotto

Autoscale-komentoa käytetään klusterissa suoritettavien podien automaatiovalintaan. Ottamalla automaattisen mittakaavan käyttöön klusterissa lisäämme ja lopetamme automaattisesti solmujen määrän. Seuraava komentosarja suoritetaan minikube-klusterissa, ja se näyttää tiedostonimen, ryhmien vähimmäismäärän ja enimmäismäärän, joissa podien tulee olla välillä 2–10:

~$ kubectl autoscale -käyttöönotto nginx1-deployment1 --min = 2 --max = 10

Komennon suorittamisen jälkeen luodaan seuraava tulos:

Vaihe 5: Luo Kubernetes YAML -tiedosto

Tässä vaiheessa opit luomaan YAML-tiedoston klusteriin. YAML-tiedosto on hyödyllinen käyttöönoton ja sovellusten testaamiseen. Kubernetesissa on useita tyyppejä tiedoston luomiseen ja muokkaamiseen.

Tässä artikkelissa käytämme 'nano' -komentoa YAML-tiedoston luomiseen, koska se on helpoin tapa ja paras valinta aloittelijoille.

Noudata tässä annettuja ohjeita luodaksesi YAML-tiedoston nanolla:

  • Luo uusi tiedosto tai muuta olemassa olevaa tiedostoa navigoimalla haluamaasi hakemistoon.
  • Kirjoita 'nano'. Kirjoita sen jälkeen tiedoston nimi. Jos esimerkiksi haluat luoda uuden tiedostonimen, kirjoita se muistiin – 'deploo.yaml'.

Suorita seuraava komentosarja ja luo YAML-tiedosto projektihakemistoon:

~$ nano deploo.yaml

Kun olet luonut 'deploo.yaml'-tiedoston, seuraava vaihe on YAML-tiedoston konfigurointi. Selitämme sen seuraavassa vaiheessa.

Vaihe 6: YAML-tiedoston sisältö

Tässä vaiheessa voimme helposti määrittää Apache-palvelimen ja PHP-tiedostot. Ennen kuin käytämme HorizontalPodScaleria, meidän on määritettävä työkuormitusmonitori. Kuten seuraava koodinpätkä näyttää kind:deploymentin, verkkoselaimen portti on 90 ja suorittimen raja on 200 m.

Näet täydelliset 'deploo.yaml' -tiedoston tiedot täältä:

apiVersion : apps/v1
ystävällinen
: Käyttöönotto
metatiedot
:
nimi
: php
spec
:
valitsin
:
matchLabels
:
juosta
: php-apache
sapluuna
:
metatiedot
:
tarrat
:
juosta
: php-apache
spec
:
astiat
:
-nimi
: php
kuva
: registry.k8s.io/hpa-example
portit
:
- konttiportti
: 90
resursseja
:
rajoja
:
prosessori
: 200m
pyynnöt
:

prosessori
: 100m
---
apiVersion
: v1
kiltti
: Palvelu
metatiedot
:
nimi
: php
tarrat
:
juosta
: php-apache
spec
:
portit
:
- portti
: 70
valitsin
:
juosta
: php-apache

Vaihe 7: Luo käyttöönotto

Tässä vaiheessa luodaan YAML-tiedosto nimeltä 'deploo.yaml'. Seuraava komentosarja suoritetaan minikube-klusterissa:

~$ kubectl Create -f deploo.yaml

Edellä mainitun suorittamamme komennon tulos näkyy seuraavassa kuvakaappauksessa. Tulos osoittaa, että YAML-tiedosto on luotu:

Vaihe 8: Luo HorizontalPodScaler

Tässä vaiheessa näytämme sinulle komennon luoda HorizontalPodAutoscaler. Podit asetetaan ja päätetään automaattisesti tarpeen mukaan. Se eroaa vertikaalisesta skaalauksesta, jossa suorittimen ja muistin resurssit määrätään automaattisella skaalauksella. Seuraava komentosarja suoritetaan minikube-klusterissa:

~$ kubectl automaattisen skaalauksen käyttöönotto php -- prosessori - prosenttia = viisikymmentä -- min = 10 – max = kaksikymmentä

Tässä näet, että asetamme minimi- ja maksimiarvoiksi 10 ja 20.

Liitteenä on edellisen komennon tulos:

Vaihe 9: Tarkista HorizontalPodScaler

Tässä vaiheessa tarkistamme juuri luodun HorizontalPodAutoscalerin nykyisen tilan. Seuraava komento suoritetaan:

~$ kubectl get hpa

Johtopäätös

Yksi Kubernetesin hyödyllisimmistä ominaisuuksista on 'kubectl autoscale', joka tarjoaa automaattiset resurssipäivitykset Kubernetes-klusterissa. Autoscaler auttaa, kun klusterin on lisättävä tai vähennettävä tyynyjä. Tässä artikkelissa opimme kaksi automaattista skaalausmenetelmää – toinen on oletusarvoinen automaattiskaalaus ja toinen HorizontalPodScaler.

Ensin otimme palot käyttöön ja julistimme ne. Sitten loimme automaattisen skaalaimen ja määritimme Apache-palvelimen ottamaan käyttöön työkuormitusmonitorin ennen HorizontalPodScaleria. Sen jälkeen loimme YAML-tiedoston ja HorizontalPodScalerin. Tämä artikkeli keskittyi Kubernetesin automaattisen mittakaavan luomisen, määrittämisen ja käyttöönoton yksityiskohtaisiin vaiheisiin.