Kubernetes-toleranssien asettaminen

Kubernetes Toleranssien Asettaminen



Tänään opimme suvaitsevaisuudesta Kubernetesissa yksinkertaisten ja perusesimerkkien avulla. Tämän artikkelin tarkoituksena on oppia suvaitsevaisuuden peruskäsite Kubernetesissa ja kuinka se voidaan toteuttaa Kubernetesissa podien ajoittamiseen. Koska suvaitsevaisuus ja tahrat toimivat yhdessä, käymme lyhyen keskustelun myös tahroista ymmärtääksemme Kubernetesin koko tahdon ja suvaitsevaisuuden käsitteen. Aloitetaan pilaantumisen ja suvaitsevaisuuden perusmääritelmistä.

Mitä ovat toleranssit ja haitat Kubernetesissa?

Kubernetesin sietokykyä ja tahraa käytetään varmistamaan, että palot sijoitetaan oikeaan solmuun. Toleranssi on määritelty pod-spesifikaatiossa, kun taas viat on määritelty solmumäärityksessä. Kun otat toleranssin käyttöön podissa, ajoitus antaa mahdollisuuden ajoittaa podit tietyssä solmussa. Tahrat toimivat kuitenkin sietokyvyn vastaisesti. Sen avulla solmu voi hylätä sille ajoitetut podit. Palot voidaan ajoittaa solmussa vain, jos niihin on sovellettu toleransseja vastaavien tahrojen kanssa.

Kubernetes toimii podien, klustereiden, solmujen, tapahtumien jne. kanssa. Joissakin tapauksissa Kubernetes tarvitsee toleransseja ja tahroja näiden asioiden hallitsemiseksi. Suvaitsevaisuus on aikataulutusprosessin toteuttamista. Palot on ajoitettava niin, että ne voivat toimia kunnolla ja niillä on riittävästi resursseja, kun niitä tarvitaan toiminnan suorittamiseen. Paloihin sovelletaan toleransseja likaa vastaan, jotta ne eivät keskeydy tai häiritse työskentelyä.







Kubernetesin tahrat antavat podille mahdollisuuden hylätä podin ajoituksen. Sitä sovelletaan solmuun 'NodeSpec'-solmumäärityksen avulla. Ajastin ei pysty asettamaan podia solmuun, jossa on tahraa. Jos joudut kuitenkin ajoittamaan podit solmuun, jossa on jo likaa, sinun on ilmoitettava sitä vastaan ​​​​toleranssi.



Kubernetesin sieto sallii podin ajoituksen solmuun, jossa on jo likaa. Podissa olevaa toleranssia sovelletaan 'PodSpec' Pod -määrittelyn mukaisesti. Kun käytät toleranssia tyynylle, jolla on vastaavat värit, ajoittaja voi helposti ajoittaa podit tietylle solmulle.



Esitämme nyt skenaarion, joka auttaa sinua ymmärtämään, kuinka voit toteuttaa suvaitsevaisuuden podissa Kubernetesissa. Ennen kuin siirryt toteutusosioon, varmista, että sinulla on kaikki edellytykset.





Edellytys:

Seuraavat ovat asioita, jotka sinun on otettava käyttöön Kubernetesin solmussa:

  • Ubuntu 20.04 tai mikä tahansa uusin versio mistä tahansa Linux-järjestelmästä
  • Minikube (uusin versio)
  • Asennettu virtuaalikone Linux/Unix-järjestelmääsi
  • Kubectl-komentorivityökalu

Olettaen, että järjestelmäsi täyttää kaikki vaatimukset, aloitetaan Kubernetes-toleranssin asettaminen.



Vaihe 1: Käynnistä Minikube-pääte

Ensimmäinen asia, joka sinun on tehtävä, on käynnistää minikube-pääte, jotta voit käyttää kubectl-komentoja Kubernetes-toleranssin toteuttamiseen solmussa. Minikuben käynnistämiseksi käytetään seuraavaa komentoa:

> aloita minikube

Kun tämä komento suoritetaan, saat terminaalissasi seuraavan tulosteen:

Vaihe 2: Hanki luettelo aktiivisista solmuista

Nyt kun aloitimme minikuben, järjestelmämme on valmis asettamaan toleranssin Kubernetesin podille. Ennen kuin asetamme toleransseja podille, tarkistakaamme kuinka monta solmua ja millaisia ​​solmuja meillä jo on. Tätä varten käytämme seuraavaa seuraavaa komentoa:

> kubectl get solmut - =custom-columns=SolmunNimi:.metadata.name,TaintKey:.spec.taints [ * ] .key,TaintValue:.spec.taints [ * ] .value,TaintEffect:.spec.taints [ * ] .vaikutus

Tässä ohjeessa luetellaan kaikki solmut, jotka Kubernetes-oletusasennukset ovat saastuttaneet. Katsotaanpa ensin tämän komennon tulos. Sitten keskustelemme solmuluettelosta:

Koska Kubernetes-oletusasennuksella ei ole luotuja ja pilaamia solmuja, emmekä myöskään luoneet erikseen solmua, tuloksena on . Edellisestä lähdöstä voimme nähdä, että solmua ei ole. Siksi luomme ensin solmun ja asetamme sitten toleranssin. Jos haluat asettaa toleranssin podille Kubernetesissa, meidän on ensin otettava sovellus käyttöön klusterissa. Seuraavat vaiheet osoittavat, kuinka sovellus otetaan käyttöön klusterissa.

Vaihe 3: Luo nimiavaruus

Ensin luomme nimitilan sovelluksen käyttöönottoa varten klusterissa. Täällä luomme sovelluksen, jonka arvo on 'frontend' seuraavan komennon avulla:

> kubectl Create ns frontend

Tämä komento luo nimitilan, jolla on 'frontend'-arvo. Katso seuraava tulos:

Vaihe 4: Ota Nginx Pod käyttöön nimiavaruudessa

Ota nyt nginx pod käyttöön juuri luomassamme nimitilassa. Käytämme seuraavaa komentoa nginxin käyttöönottamiseksi:

> kubectl run nginx - kuva =nginx –nimitilan käyttöliittymä

Tämä ottaa käyttöön sovelluksen klusterissa, jolla ei ole sovelluksen käyttöönoton määrityksiä. Kubectl-komentoa käyttämällä otamme käyttöön nginx pod nimitilan käyttöliittymässä:

  Teksti Kuvaus luotu automaattisesti

Vaihe 5: Hanki lista podista

Tarkastetaan nyt luodut podit nähdäksemme niiden tilat. Annettu komento listaa myös kaikki podit ja niiden tilat:

> kubectl get pods -n etuosa

Koska loimme vain nginxin, tämän komennon pitäisi luetella se pod ja sen tila. Katso seuraava tulos:

Vaihe 6: Analysoi Kubernetes-tapahtumat

Analysoidaan nyt Kubernetesin tapahtumia, jotta voimme asettaa toleransseja paloille vastaavasti. Käytämme seuraavaa kubectl-komentoa saadaksemme luettelon Kubernetesin tapahtumista:

> kubectl saada tapahtumia -n etuosa

Tämä luetteloi kaikki tapahtumat, jotka liittyvät käyttöliittymän arvoon, sekä niiden ominaisuudet, kuten tyyppi, syy, objekti ja viesti. Katso annettu luettelo seuraavassa tulosteessa:

  Teksti Kuvaus luotu automaattisesti

Kuten edellisestä lähdöstä näet, nginx pod on ajastettu tietyllä toleranssilla. Viesti-ominaisuus näyttää luettelon toiminnoista, jotka suoritetaan prosessin aikana.

Vaihe 7: Tarkista koteloiden tila

Viimeinen vaihe on tarkistaa uudelleen aiemmin luomamme podin tila varmistaaksemme, että se ajoitetaan onnistuneesti tiettyyn ja oikeaan solmuun. Käytämme tätä varten seuraavaa kubectl-komentoa:

> kubectl get pods -n etuosa

Kuten edellisestä lähdöstä voidaan nähdä, pod saa nyt toimia pilaantuneessa solmussa, koska toleranssi on asetettu sitä vastaan.

Johtopäätös

Tässä oppaassa tutkimme tahroja ja sietokykyä. Opimme pilaamisen ja suvaitsevaisuuden perusperiaatteet. Sitten toteutimme toleranssin podissa. Yksinkertaisen esimerkin avulla opimme asettamaan toleranssin Kubernetesin solmulle.