Kuinka luoda CRD Kubernetesissa

Kuinka Luoda Crd Kubernetesissa



Opitaan luomaan CRD Kubernetesissa tässä artikkelissa. Tässä opetusohjelmassa opastamme sinua luomaan CRD:n Kubernetesissa ja luomaan sitten Kubernetes-ohjaimen, jota käytetään käsittelemään CRD:n ilmentymän luontipyyntöjä. Esittelemme jokaista vaihetta esimerkkien avulla, jotta ymmärrät täysin CRD:n luomisen yhdessä ohjainobjektin kanssa, joka käsittelee CRD:tä Kubernetesissa. Joten aloitetaan!

Mikä on CRD Kubernetesissa?

CRD on lyhenne sanoista Custom Resource Definition, jota käytetään uusille resursseille lisäämättä toista API-palvelinta. Jotta voit työskennellä CRD:iden kanssa, sinun ei tarvitse ymmärtää API-aggregointia. Se on erittäin tehokas Kubernetes 1.7:ssä esitelty ominaisuus, joka toimitetaan erilaisten sisäänrakennettujen resurssien ja API-objektien kanssa. Sen avulla voit määrittää mukautettuja resursseja valitsemallasi skeemalla ja nimellä.

CRD:t laajentavat Kubernetes API:n kykyjä oletusasennuksen yläpuolelle käyttämällä mukautettuja resurssimäärityksiä. CRD:n avulla voit ohjata Kubernetesia tavalla, joka pystyy käsittelemään muutakin kuin vain kontteja. Voit luoda oman valintasi mukautetun resurssin ja tehdä siitä deklaratiivisen käyttämällä mukautettuja ohjaimia. Nyt opimme luomaan mukautetun resurssimäärityksen ja suunnittelemaan sitten mukautetun ohjaimen ohjaamaan CRD:tä. Ja sitten kuinka poistaa CDR nähdäksesi sen vaikutuksen Kubernetesiin.







Edellytys

Ennen kuin siirrymme CRD:n luomisen ja poistamisen vaiheisiin, varmistamme, että järjestelmämme täyttää kaikki edellytysten tarpeet.



  • Ubuntu 20.04 tai mikä tahansa uusin versio, jotta Linux/Unix-ympäristö toimii.
  • Kubernetes-klusteri.
  • Kubectl CLI käyttää kubectl-komentoja, klusteriviestintää ja hallinnoida kehitysympäristöä.
  • minikube tai mikä tahansa muu Kubernetes-leikkipaikka klustereiden luomiseen

Asenna nämä työkalut, jos et ole vielä asentanut niitä, ennen kuin siirryt seuraavaan osaan.



Nyt siirrymme vaiheittaiseen oppaaseen CRD:iden luomisesta Kubernetesissa.





Vaihe 1: Käynnistä Kubernetes

Jotta voit työskennellä CDR:ien kanssa, sinulla on oltava klusteri, jossa on vähintään kaksi Kubernetes-solmua, jotka eivät toimi ohjaustason isäntinä. Käytämme minikubea klusterin luomiseen ja käyttämiseen. Joten käytä alla annettua komentoa käynnistääksesi minikube:

> aloita minikube

Kun suoritat tämän komennon, saat samanlaisen tulosteen kuin alla:



Vaihe 2: Avaa tai luo määritystiedosto

Nyt kun minikubemme on toiminnassa, meidän on avattava asetustiedosto. 'nano'-komentoa käytetään asetustiedostojen avaamiseen. Sinun tarvitsee vain antaa tiedoston nimi nano-komennon viereen ja sen jälkeen tiedostopääte ja painaa Enter. Täällä meillä on red.yaml-tiedosto, joka sisältää määritystiedot CRD-tiedostojen luomista varten. Tässä on täydellinen nano-komento, jonka avulla voit avata haluamasi tiedoston:

> nano red.yaml

Kun suoritat tämän komennon, seuraava tiedosto avautuu päätteeseesi:

Vaihe 3: Luo päätepisteresurssi

Määritysresurssit on tallennettu red.yaml-tiedostoon. Käytämme sitä uuden nimiavaruuden RESTful API -päätepisteen luomiseen. Kubectl tarjoaa 'apply'-komennon päätepisteen luomiseksi määritystiedostosta. Tässä on täydellinen 'apply'-komento, jota käytetään uuden nimiavaruuden RESTful API:n luomiseen:

> kubectl soveltaa -f red.yaml

Tämän komennon luomaa päätepistettä käytetään mukautetun objektin luomiseen, joka ohjaa CRD:tä. Nimiavaruusresurssille luodaan seuraava tulos:

Vaihe 4: Luo mukautettu objekti CRD:n ohjaamiseksi

CRD-levyjä ohjaavat mukautetut objektit. Voimme luoda ne, kun mukautettu resurssimääritys on luotu. Mukautetut objektit sisältävät mielivaltaisen JSON:n mukautetut kentät. Mukautetun objektin luomiseksi tarvitsemme jälleen YAML-määritystiedoston. Luo YAML-määritystiedosto komennolla 'nano':

> nano ct.yaml

Tallenna pakolliset kentät erityisillä tiedoilla YAML-tiedostoon. Esimerkkikokoonpanon tiedot näkyvät alla olevassa näytteessä:

Käytä nyt samaa YAML-tiedostoa mukautetun objektin luomiseen. Käytä 'apply'-komentoa luodaksesi mukautetun objektin määritetystä YAML-tiedostosta. Katso alla oleva täydellinen komento:

> kubectl soveltaa -f ct.yaml

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

Vaihe 5: Hallinnoi CRD:tä mukautetulla objektilla

Mukautettuja objekteja käytetään CRD:iden hallintaan. Joten, meidän on opittava, kuinka voimme hyödyntää äskettäin luotua mukautettua objektia jo luodun CRD:n hallintaan. Täällä aiomme tarkistaa mukautetun objektin sisältävät tiedot käyttämällä 'get' -komentoa. Katso alla olevassa koodinpätkässä annettu komento:

> kubectl saada crontab

Kun suoritat tämän komennon minikube-päätteessä, seuraava tuloste luodaan:

Jos haluat tarkistaa YAML-tiedoston sisältämät raakatiedot, voit käyttää tätä komentoa:

> kubectl get ct - yaml

Tämä näyttää YAML-tiedoston raakatiedot, kuten alla oleva esimerkki:

Näin voimme luoda CRD:n ja mukautetun objektin luodun CRD:n hallintaa ja hallintaa varten. Nyt, jos haluat poistaa luodun CRD:n, voit noudattaa alla annettua menettelyä.

Kuinka poistaa Kubernetesissa luodut CRD:t?

Kubectl-komentojen avulla voit poistaa CRD:t Kubernetesista. Kun yrität poistaa CRD:n Kubernetesissa, myös siihen liittyvät mukautetut resurssit poistetaan. Kubectl tarjoaa 'delete'-komennon minkä tahansa resurssin poistamiseksi. Alla annettua komentoa käytetään poistamaan CRD, jonka olemme luoneet yllä olevissa vaiheissa:

> kubectl poistaa -f red.yaml

Kun tämä komento suoritetaan onnistuneesti, saat seuraavan tuloksen:

Nyt kun CRD ja siihen liittyvät mukautetut objektit on poistettu, saat virheilmoituksen palvelimelta, jos yrität käyttää sitä. Katso alla annettu komento, jossa yritämme käyttää nimiavaroitua RESTful API:ta:

> kubeclt get crontabs

Koska 'crontabs' on poistettu, palvelin nostaa tämän toiminnon virheilmoituksen. Katso tämän komennon tulos alla:

Johtopäätös

Tämä artikkeli oli nopea yleiskatsaus mukautetun resurssimäärityksen luomiseen, mukautetun objektin luomiseen CRD:iden hallitsemiseksi ja CRD:n poistamiseen Kubernetesista. Esitimme jokaisen vaiheen esimerkkiesimerkkien avulla, jotta ymmärrät prosessin helposti ja nopeasti.