Kuidas luua Kubernetesis CRD-d

Kuidas Luua Kubernetesis Crd D



Selles artiklis õpime Kubernetesis CRD-d looma. Selles õpetuses juhendame teid, kuidas luua Kubernetesis CRD ja seejärel luua Kubernetese kontroller, mida kasutatakse CRD eksemplari loomise taotluste käsitlemiseks. Me demonstreerime iga sammu näidete abil, et aidata teil täielikult mõista CRD loomise tööd koos kontrolleri objektiga, millega Kuberneteses CRD-d hallata. Nii et alustame!

Mis on CRD Kubernetesis?

CRD tähistab kohandatud ressursi määratlust, mida kasutatakse uute ressursside jaoks ilma teist API-serverit lisamata. CRD-dega töötamiseks ei pea te API koondamisest aru saama. See on Kubernetes 1.7-s kasutusele võetud väga võimas funktsioon, mida tarnitakse koos erinevate sisseehitatud ressursside ja API-objektidega. See võimaldab teil määratleda kohandatud ressursse teie valitud skeemi ja nimega.

CRD-d laiendavad Kubernetes API võimeid, ületades vaikeinstalli, kasutades kohandatud ressursside määratlusi. Kasutades CRD-sid, saate Kubernetesi juhendada viisil, mis suudab käsitleda enamat kui lihtsalt konteinereid. Saate luua omal valikul kohandatud ressursi ja muuta see deklaratiivseks, kasutades kohandatud kontrollereid. Nüüd õpime, kuidas luua kohandatud ressursi määratlust ja seejärel kujundada kohandatud kontroller CRD juhtimiseks. Ja siis kuidas kustutada CDR, et näha selle mõju Kubernetesile.







Eeltingimus

Enne kui asume CRD loomise ja kustutamise etappide juurde, veendume, et meie süsteem vastab kõigile eelduste vajadustele.



  • Ubuntu 20.04 või mõni muu uusim versioon, et Linuxi/Unixi keskkond töötaks.
  • Kubernetese klaster.
  • Kubectl CLI kubectli käskude kasutamiseks, klastri suhtluseks ja arenduskeskkonna haldamiseks.
  • minikube või mõni muu Kubernetese mänguväljak klastrite loomiseks

Installige need tööriistad, kui te pole neid veel installinud, enne kui jätkate järgmise jaotisega.



Nüüd liigume Kubernetesis CRD-de loomise samm-sammulise juhendi juurde.





Samm # 1: käivitage Kubernetes

CDR-idega töötamiseks peab teil olema vähemalt kahe Kubernetese sõlmega klaster, mis ei tööta juhttasandi hostidena. Me kasutame klastri loomiseks ja kasutamiseks minikube. Niisiis, kasutage minikube käivitamiseks allolevat käsku:

> käivita minikube

Selle käsu täitmisel saate sarnase väljundi, mis on allpool toodud:



Samm # 2: avage või looge konfiguratsioonifail

Nüüd, kui meie minikube on valmis ja töötab, avame konfiguratsioonifaili. Konfiguratsioonifailide avamiseks kasutatakse käsku 'nano'. Kõik, mida pead tegema, on sisestada nano-käsu kõrval failinimi, millele järgneb faililaiend ja vajutada sisestusklahvi. Siin on fail 'red.yaml', mis sisaldab CRD-de loomise konfiguratsiooni üksikasju. Siin on täielik nano käsk, mida saate soovitud faili avamiseks kasutada:

> nano punane.yaml

Selle käsu täitmisel avaneb teie terminalis järgmine fail:

Samm # 3: looge lõpp-punkti ressurss

Konfiguratsiooniressursid on salvestatud faili red.yaml. Kasutame seda uue nimeruumiga RESTful API lõpp-punkti loomiseks. Kubectl pakub konfiguratsioonifailist lõpp-punkti loomiseks käsku 'apply'. Siin on täielik apply käsk, mida kasutatakse uue nimeruumiga RESTful API loomiseks:

> kubectl rakendada -f punane.yaml

Selle käsuga loodud lõpp-punkti kasutatakse kohandatud objekti loomiseks, mis juhib CRD-d. Nimeruumiga ressursi jaoks luuakse järgmine väljund:

4. samm: looge CRD juhtimiseks kohandatud objekt

CRD-sid juhivad kohandatud objektid. Saame need luua, kui kohandatud ressursi määratlus on loodud. Kohandatud objektid sisaldavad suvalise JSON-i kohandatud välju. Kohandatud objekti loomiseks vajame taas YAML-i konfiguratsioonifaili. Kasutage YAML-i konfiguratsioonifaili loomiseks käsku 'nano':

> nano ct.yaml

Salvestage nõutud väljad koos konkreetsete üksikasjadega YAML-faili. Näidiskonfiguratsiooni üksikasjad on näidatud allolevas näites.

Nüüd kasutage kohandatud objekti loomiseks sama YAML-faili. Määratud YAML-failist kohandatud objekti loomiseks kasutage käsku 'apply'. Vaadake allolevat täielikku käsku:

> kubectl rakendada -f ct.yaml

Selle käsu edukal täitmisel saate järgmise väljundi:

5. samm: hallake CRD-d kohandatud objektiga

Kohandatud objekte kasutatakse CRD-de haldamiseks. Niisiis, uurime, kuidas saame kasutada hiljuti loodud kohandatud objekti juba loodud CRD haldamiseks. Siin kontrollime kohandatud objekti sisaldavaid üksikasju, kasutades käsku 'hangi'. Vaadake allolevas koodilõigul antud käsku:

> kubectl saada crontab

Kui käivitate selle käsu minikube terminalis, genereeritakse järgmine väljund:

Kui soovite kontrollida YAML-failis sisalduvaid töötlemata andmeid, võite kasutada seda käsku:

> kubectl saada ct - yaml

See näitab YAML-failis algandmeid nagu allpool toodud näidis:

Nii saame luua CRD ja kohandatud objekti loodud CRD haldamiseks ja juhtimiseks. Nüüd, kui soovite loodud CRD-d kustutada, võite järgida alltoodud protseduuri.

Kuidas kustutada Kubernetesis loodud CRD-d?

Kubectli käsud võimaldavad kustutada Kubernetesis CRD-d. Kui proovite Kubernetesis CRD-d kustutada, kustutatakse ka sellega seotud kohandatud ressursid. Kubectl pakub mis tahes ressursi kustutamiseks käsku 'kustuta'. Allpool antud käsku kasutatakse CRD kustutamiseks, mille oleme ülaltoodud sammudega loonud:

> kubectl kustutada -f punane.yaml

Selle käsu eduka täitmise korral saate järgmise tulemuse:

Nüüd, kui CRD ja sellega seotud kohandatud objektid on kustutatud, saate serverilt tõrketeate, kui proovite sellele juurde pääseda. Vaadake allolevat käsku, kus proovime pääseda juurde nimeruumiga RESTful API-le:

> kubeclt saada crontabs

Kuna 'crontabs' on kustutatud, tõstatab server selle toimingu puhul veateate. Vaadake selle käsu väljundit allpool:

Järeldus

See artikkel oli kiire ülevaade sellest, kuidas luua kohandatud ressursi määratlust, kuidas luua CRD-de juhtimiseks kohandatud objekt ja kuidas kustutada CRD Kubernetesist. Näidisnäidete abil demonstreerisime iga sammu, et aidata teil protsessi lihtsalt ja kiiresti mõista.