Luo Kubernetes EndpointSlices

Luo Kubernetes Endpointslices



Päätepistelohkon avulla voit seurata Kubernetes-klusteriin yhdistetyn verkon päätepistettä. Saat lisätietoja EndpointSlicesista Kubernetes-ympäristössä tästä sinulle luomastamme artikkelista. Tässä opetusohjelmassa autamme sinua oppimaan, mikä EndpointSlice on Kubernetes-klusterissa ja kuinka voit luoda EndpointSlicen Kubernetesissa. Esittelemme joitain kubectl-komentoja, joiden avulla voimme luoda päätepisteen Kubernetes-klusteriin.

Mikä on EndpointSlice Kubernetesissa?

EndpointSlice Kubernetesissa on verkon päätepisteiden seuranta. Sen avulla on mahdollista seurata verkon päätepisteitä Kubernetes-klusterissa. Yksinkertaisesti sanottuna se on objekti, joka saa IP-osoitteet jokaisesta sille määritetystä podista. Kubernetes-palvelu viittaa tähän objektiin saadakseen tietueen podin sisäisistä IP-osoitteista viestintää varten. Lisäksi podit käyttävät näitä päätepisteitä altistaakseen itsensä palvelulle.

Kubernetes-alueella nämä päätepisteet toimivat abstraktiokerroksena, joka auttaa Kubernetes-palvelua varmistamaan, että liikenne jakautuu klusterin podeihin. Kuitenkin, kun liikenteen kuormitus kasvaa, ilmenee liikenteen skaalausongelma. Tämä johtuu siitä, että yksi päätepiste sisältää kaikki verkon päätepisteet jokaiselle palvelulle. Ja kun nämä lähteet kasvavat liian suuriksi, Kubernetesin suorituskyky heikkenee. Toisin sanoen, kun verkon päätepisteiden määrä kasvaa valtavasti, Kubernetesin kyky skaalata käyttöönottoa vaikuttaa negatiivisesti. Ymmärrämme tämä seuraavan graafisen kuvan avulla:









Täällä voit nähdä, että päätepiste sisältää kaikki klusterin podit ja EndpointSlices ovat laajennettavissa oleva ja skaalautuva vaihtoehto olemassa olevalle päätepisteelle. Koko palvelua varten on vain yksi päätepisteresurssi, mutta samalle palvelulle on useampi kuin yksi EndpointSlice. EndpointSlices auttaa sinua skaalaamaan verkkoresursseja tällä tavalla. Otetaan esimerkki, jotta ymmärrämme, kuinka merkittävä tämä skaalautuvuusongelma on.



Esimerkiksi Kubernetes-palvelussa on noin 9 000 podia, jotka jotenkin päätyvät 2 Mt päätepisteresursseihin. Yhdellä päätepisteellä on kaikki nämä palveluiden päätepisteresurssit. Jos jokin verkon päätepiste muuttuu päätepisteessä, päätepisteen koko resurssi on jaettava klusterin kunkin solmun kesken. Kun on kyse 3000 solmun sisältävän klusterin käsittelystä, siitä tulee valtava ongelma, koska jokaiseen solmuun on lähetettävä valtava määrä päivityksiä. Näin ollen, kun skaalaat enemmän vain yhdessä päätepisteessä, verkon skaalaaminen on sitä vaikeampaa.





EndpointSlices kuitenkin ratkaisee tämän ongelman sallimalla Kubernetesin skaalata niin paljon kuin tarvitaan. Sen sijaan, että käyttäisit yhtä päätepistettä, joka sisältää valtavan luettelon IP-osoitteista ja niihin liittyvistä porttinumeroista, käytä useita EndpointSlices. Nämä EndpointSlices ovat pieniä paloja valtavasta yksittäisestä päätepisteestä. Nämä viipaleet ovat paljon pienempiä, mutta ne vähentävät valtavan päätepisteen aiheuttamaa kuormitusta. Voit tallentaa jopa 100 podia yhteen EndpointSlice-laitteeseen. Nämä EndpointSlices auttavat sinua jakamaan palvelun tiettyyn ryhmään. Jos jokin verkon päätepiste muuttuu, sinun on lähetettävä päivitykset vain EndpointSliceen, joka sisältää enintään 100 podia. Kaikki muut verkon kotelot pysyvät koskemattomina.

Oppikaamme nyt, kuinka voimme luoda Kubernetes EndpointSlicen.



Kuinka EndpointSlices luodaan Kubernetesissa?

Kubernetes EndpointSlices on paras vaihtoehto yhdelle Kubernetes-klusterin päätepisteelle. Se ei ainoastaan ​​auta sinua seuraamaan kaikkia verkon päätepisteitä helposti ja tehokkaasti, vaan se tarjoaa myös paremman suorituskyvyn yhteen päätepisteeseen verrattuna. Se näyttää myös alhaisemman verkkoliikenteen ja tarjoaa samalla skaalausvarmuutta. Lisäksi useiden EndpointSlices-osien käyttö mahdollistaa vähemmän työvoiman käytön Kubernetes-klusterin ohjaustasolle ja solmuille.

Voit saada vaiheet, joiden avulla opit luomaan EndpointSlices-kuvia Kubernetes-klusterissa seuraavissa esimerkeissä.

Vaihe 1: Käynnistä Minikube-klusteri

Ensimmäinen ja tärkein vaihe on varmistaa, että minikube-klusteri on aktiivinen. Ei-aktiivinen minikube-klusteri ei salli sinun suorittaa mitään työtä Kubernetes-ympäristössä, joten varmista, että se on aktiivisessa tilassa. Varmistaaksesi, että minikube-klusteri on toiminnassa, käytä seuraavaa komentoa:

> aloita minikube

Jos minikube-klusterisi ei ole käynnistynyt aikaisemmin tai jos se on lepotilassa, tämä komento herättää sen ja käynnistää sen. Nyt sinulla on aktiivinen minikube-klusteri. Olet valmis luomaan EndpointSlicen Kubernetes-ympäristössäsi.

Vaihe 2: Luo käyttöönotto YAML-tiedoston avulla

YAML-tiedostoa käytetään yleisimmin Kubernetesissa käyttöönottojen luomiseen. Voit käyttää jo olemassa olevaa käyttöönotto-YAML-tiedostoa tai luoda uuden seuraavalla komennolla:

> nanopäätepiste.yaml

Tämä luo uuden YAML-tiedoston nimeltä 'endpoint.yaml', johon voit tallentaa käyttöönottomäärityksen kokoonpanoa varten. Katso käyttöönoton määritelmä seuraavassa kuvakaappauksessa:

Vaihe 3: Luo EndpointSlice YAML-tiedoston avulla

Nyt kun meillä on YAML-tiedosto, joka sisältää käyttöönoton määritelmän, käytämme sitä EndpointSlices-tiedostojen luomiseen Kubernetes-klusteriimme. Meidän on otettava käyttöön määritystiedosto, jotta voimme saada EndpointSlices-kuvia Kubernetes-klusterissa. Käytämme seuraavaa komentoa konfigurointitiedoston käyttöönottamiseksi:

> kubectl create -f endpoint.yaml

Kubernetes-ympäristössä resurssit luodaan 'kubectl create' -komennolla. Tästä syystä käytämme 'kubectl create' -komentoa EndpointSlicesin luomiseen YAML-määritystiedostosta.

Johtopäätös

Tutkimme EndpointSlices-tuotteita Kubernetes-ympäristössä. Kubernetesin EndpointSlice on objekti, jota käytetään kaikkien Kubernetes-klusterin verkon päätepisteiden seuraamiseen. Se on paras vaihtoehto valtavalle ja yhdelle päätepisteelle Kubernetes-klusterissa, koska se mahdollistaa paremman skaalautuvuuden ja laajennettavuuden. Nämä EndpointSlices mahdollistavat Kubernetes-klusterin paremman suorituskyvyn sijoittamalla vähemmän työvoimaa solmuihin ja ohjaustasoon. Esimerkin avulla opimme luomaan EndpointSlices-kuvia Kubernetes-klusteriin.