Vytvoriť nasadenie pomocou „kubectl vytvoriť nasadenie“

Vytvorit Nasadenie Pomocou Kubectl Vytvorit Nasadenie



Kubernetes je bezplatná distribúcia s otvoreným zdrojom a tiež známa ako k8s. Používa sa na automatizáciu nasadenia, správy a škálovania kontajnerového softvéru a aplikácií. Poskytuje rôzne komponenty na správu kontajnerov, ako sú uzly, riadiaca rovina, moduly a nasadenie Kubernetes. S pomocou Kubernetes môžu vývojári jednoducho automatizovať prevádzkovú úlohu, vrátiť zmeny a monitorovať a škálovať kontajnerizované aplikácie a softvér.

V tomto blogu vysvetlíme:







Čo je Kubernetes Deployment?

Kubernetes Deployment sa označuje ako zdrojový objekt, ktorý poskytuje deklaratívne inštrukcie a aktualizácie jeho hlavných prvkov, ako sú moduly, ReplicaSet a kontajnerové aplikácie. Kubernetes Deployment umožňuje vývojárom opísať kontajnerovú aplikáciu, ako je obrázok, počet modulov, port, repliky atď. Jedným z hlavných dôvodov, prečo je Kubernetes lepší ako Docker, je to, že nám ponúka vlastnosti automatického liečenia a automatického škálovania a tieto stavy sú dosiahnuteľné vďaka nasadeniu Kubernetes.



Mechanizmus „automatického liečenia“ je technika testovacej automatizácie, ktorá testuje svoj bežiaci objekt a v prípade výskytu akejkoľvek chyby implementuje najlepšiu zhodu na opravu a aplikuje opravu tak, aby zodpovedala skutočnému stavu s požadovaným stavom. Služba „automatické škálovanie“ automaticky škáluje pracovné zaťaženie aplikácie.



Prečo je vytváranie nasadenia lepšie ako vytváranie modulov?

Nasadenie Kubernetes umožňuje vývojárom jednoducho udržiavať skupinu rovnakých modulov spustených so spoločnou konfiguráciou. Naproti tomu pri vytváraní modulu sú používatelia povinní vytvoriť a spustiť modul samostatne. Ak sa pri nasadení vymaže alebo ukončí jeden modul, automaticky sa znova vytvorí a spustí vďaka mechanizmu automatického liečenia. Ak sa však moduly spúšťajú priamo bez nasadenia, v prípade chyby sa od používateľov vyžaduje, aby modul znova vytvorili a spustili manuálne.





Čo je ReplicaSet v nasadení?

Keď vývojár vytvoril nasadenie, vygenerovali sa tri hlavné komponenty a ReplicaSet je jedným z nich. ReplicaSet je kontrolór nasadenia a je zodpovedný za spustenie určeného počtu modulov v rámci nasadenia. V prípade, že sa vymaže jeden modul, ReplicaSet rýchlo vydá pokyn na regeneráciu nového modulu, aby sa zhodoval skutočný stav modulov s požadovaným stavom. Je predovšetkým zodpovedný za poskytovanie deklaratívnych aktualizácií modulov.

Čo je príkaz „kubectl create deployment“?

' kubectl vytvoriť nasadenie “ je príkaz nástroja Kubectl, ktorý sa používa na vytvorenie a spustenie nasadenia Kubernetes. Potom nasadenie poskytne Kubernetes pokyn, ako vytvoriť a aktualizovať inštancie vašej aplikácie.



Syntax

kubectl vytvoriť nasadenie < názov-nasadenia > --obrázok = < image-name > -- < možnosť =hodnota >


Možnosť

Príkaz „kubectl create deployment“ podporuje rôzne možnosti na poskytnutie ďalšej vrstvy funkčnosti a na poskytnutie ďalších pokynov na nasadenie inštancií aplikácie. Možnosti podporované „ kubectl vytvoriť nasadenie ” príkaz je uvedený nižšie v tabuľkovej forme:

Možnosť Popis
“– –povoliť-chýbajúce-klávesy-šablóny Ak je jeho hodnota nastavená ako true, bude ignorovať všetky chyby v šablónach, keď v šablóne chýba kľúč mapy alebo pole.
“– – chod nasucho Jeho hodnota môže byť „žiadny“, „server“ alebo „klient“. Ak je hodnota klient, zobrazí alebo vytlačí len objekt, ktorý by bol odoslaný bez jeho odoslania.

Ak je hodnota server, odošle iba požiadavky na strane servera.

“– – manažér v teréne Zobrazuje alebo nastavuje meno manažéra používané na sledovanie vlastníctva poľa.
“– – obraz Ak chcete špecifikovať šablónu kontajnera, zadajte názov obrázka.
-o, „– –výstup Zadajte výstupný formát.
“– – prístav Nastaví port tak, aby odkryl kontajner.
-r, „– –repliky Používa sa na definovanie počtu replík pod.
“– –uložiť-konfiguráciu Používa sa na uloženie konfigurácie objektu v jeho anotácii. Ak je jeho hodnota nepravda, anotácia zostane nezmenená.
“– –zobraziť-spravované-polia V predvolenom nastavení je jeho hodnota nepravda. Ale ak je nastavený ako true, zachová alebo uloží managedFields pri tlači objektov vo formáte JSON alebo YAML.
“– –validate=’prísne’ Jeho hodnota môže byť „prísne“, „upozorniť“ alebo „ignorovať“. Ak je „prísne“, overí zadanie a ak je neplatná, žiadosť zlyhá.

Ak je jeho hodnota „warn“, upozorní vás na duplicitné a neznáme polia.

Ak je jeho hodnota „ignorovať“, nevykoná žiadnu validáciu schémy.

Predpoklad: Nainštalujte kubectl a minikube

Ak chcete spustiť nasadenie Kubernetes v klastri Kubernetes, najskôr nainštalujte do systému nižšie uvedené nástroje:

    • Nástroj Kubectl: Kubectl je nástroj príkazového riadka Kubernetes, ktorý sa používa na riadenie, správu a prevádzku klastra Kubernetes a jeho komponentov, ako je napríklad Kubernetes Deployment.
    • Nástroj Minikube: Minikube je implementačný systém pre Kubernetes, ktorý poskytuje alebo vytvára virtuálny počítač v systéme na spustenie klastra Kubernetes. Môže vykonávať klastre s jedným uzlom a väčšinou ho používajú začiatočníci alebo na testovacie účely.

Ak chcete začať s Kubernetes a nainštalovať základné komponenty ako „ kubectl “ a „ minikube “, prejdite cez naše prepojené „ “článok.

Ako vytvoriť nasadenie Kubernetes pomocou príkazu „kubectl create“?

Nasadenie Kubernetes je možné vytvoriť použitím manifestu Yaml alebo pomocou „ kubectl vytvoriť nasadenie “príkaz. Ak chcete vytvoriť nasadenie Kubernetes pomocou príkazu „kubectl create deployment“, postupujte podľa nižšie uvedenej ukážky.

Krok 1: Spustite PowerShell

Najprv spustite Windows PowerShell s oprávneniami správcu z ponuky Štart. Správcovské oprávnenia sú potrebné, pretože minikube spúšťa klaster Kubernetes na virtuálnom počítači pomocou HyperV:


Krok 2: Spustite Kubernetes Cluster

Ak chcete spustiť klaster Kubernetes, použite „ minikube štart 'príkaz:

minikube štart



Krok 3: Získajte uzly Kubernetes

Ďalej prejdite na uzly Kubernetes a skontrolujte, či je klaster spustený alebo nepoužíva „ kubectl získať uzly 'príkaz:

kubectl získať uzly



Krok 4: Vytvorte nasadenie Kubernetes

Vytvorte nové nasadenie Kubernetes v klastri prostredníctvom „k ubectl vytvoriť nasadenie “– –image= “príkaz. Pre demonštráciu sme vytvorili „nginx-deployment“, ktorý spustí aplikáciu Nginx v podu pomocou obrázka „nginx:stable-perl“:

kubectl vytvoriť nasadenie nginx-deployment --obrázok =nginx:stable-perl



Krok 5: Získajte Kubernetes Deployment, ReplicaSet a Pod

Príkaz „kubectl create deployment“ vytvorí tri komponenty Deployment, ReplicaSet a Pod. Ak chcete získať prístup k nasadeniam Kubernetes, spustite „ kubectl dostať nasadiť 'príkaz:

kubectl dostať nasadiť


Tu môžete vidieť „ nasadenie nginx “ je k dispozícii v klastri Kubernetes:


ReplicaSet je kontrolér nasadenia, ktorý zaisťuje, že aplikácia v moduloch funguje bezchybne a opravuje body prerušenia. Na prístup k ReplicaSet použite „ kubectl dostať rs 'príkaz:

kubectl dostať rs


Tu ReplicaSet zobrazuje požadovaný počet modulov a aktuálne bežiace moduly:


Pod je menšia jednotka klastra Kubernetes, ktorá spúšťa kontajnerovú aplikáciu. Na prístup k modulom Kubernetes použite „ kubectl dostať strúčiky “príkaz. Tu je „ -O ” sa používa na určenie výstupného formátu. Na zobrazenie IP adresy podu sme použili „ široký “formát:

kubectl dostať strúčiky -O široký



Krok 6: Prihláste sa do Kubernetes Cluster

Ak chcete získať prístup k aplikácii spustenej v kontajneri, najprv prejdite do klastra Kubernetes pomocou „ minikube ssh 'príkaz:

minikube ssh



Krok 7: Prístup k aplikácii spustenej v Kubernetes Deployment

Potom použite „ zvlniť ” spolu s IP adresou podu na prístup ku kontajnerovej aplikácii:

zvlnenie 10.244.0.7


Ako spustiť repliky v nasadení Kubernetes pomocou príkazu „kubectl vytvoriť nasadenie“?

Vytvorenie Kubernetes Deployment je lepšie ako spustenie Podu, pretože dokáže spustiť a spravovať skupinu podov naraz vytvorením replík Podu. Ak chcete spustiť repliky v nasadení Kubernetes pomocou príkazu „kubectl create deployment“, postupujte podľa pokynov nižšie.

Krok 1: Vytvorte Kubernetes Deployment

Najprv vytvorte nasadenie pomocou „ kubectl vytvoriť nasadenie 'príkaz spolu s ' “– – repliky možnosť “. Hodnota možnosti „replicas“ určí požadovaný počet modulov, ktoré by mala ReplicaSet spravovať a spúšťať:

kubectl vytvoriť nasadenie nginx-deployment --obrázok =nginx:stable-perl --repliky = 2



Krok 2: Získajte Kubernetes Deployment, ReplicaSet a Pods

Teraz prejdite na nasadenie Kubernetes pomocou príkazu „kubectl get deploy“:

kubectl dostať nasadiť


Tu môžete vidieť, že nasadenie zobrazuje pripravený, aktuálny a dostupný počet modulov:


Pomocou nižšie uvedeného príkazu získate prístup k informáciám ReplicaSet. Môžete vidieť, že ReplicaSet zobrazuje stav požadovaného počtu modulov a aktuálne vykonávaných modulov:

kubectl dostať rs



Podobne na prístup k bežiacim modulom použite nasledujúci príkaz:

kubectl dostať strúčiky


Výstup naznačuje, že nasadenie Kubernetes úspešne vykonáva požadovaný počet replík podov v klastri Kubernetes:

Ako funguje ReplicaSet na riadenie nasadenia Kubernetes?

ReplicaSet je zodpovedná za spustenie požadovaného počtu modulov v rámci nasadenia. Ak sa jeden modul rozbije alebo odstráni, modul sa automaticky vytvorí tak, aby zodpovedal aktuálnemu stavu modulov s požadovaným stavom. Tento mechanizmus v skutočnosti implementuje techniku ​​auto-hojenia. Pre demonštráciu postupujte podľa nižšie uvedených pokynov.

Krok 1: Zobrazte Live Kubernetes Pods

Najprv si zobrazte stav modulov naživo pomocou „ kubectl dostať pods -w “príkaz. Poznamenajte si aj názov modulu, ktorý bude poškodený alebo odstránený:

kubectl dostať strúčiky -In



Krok 2: Odstráňte pod

Potom otvorte ďalší terminál PowerShell a pokúste sa odstrániť druhý modul pomocou „ kubectl vymazať pody 'príkaz:

kubectl odstrániť pody nginx-deployment-7584b4674d-hbx4f


Výstup ukazuje, že sme modul úspešne odstránili:


Teraz otvorte okno PowerShell, kde je aktuálny stav modulu. Tu môžete vidieť, keď sme odstránili modul, ReplicaSet automaticky vytvoril a spustil nový modul, aby sa aktuálny stav modulov zhodoval s požadovaným stavom:


Pokryli sme metódu vytvárania Kubernetes Deployment pomocou príkazu „kubectl create deployment“.

Záver

Ak chcete vytvoriť nasadenie Kubernetes pomocou „ kubectl vytvoriť nasadenie “, najprv nainštalujte základné nástroje ako minikube a kubectl. Potom spustite nový klaster Kubernetes pomocou minikube. Teraz vytvorte nové nasadenie pomocou „ kubectl vytvoriť nasadenie “– –image= “príkaz. Potom si pozrite nasadenie Kubernetes, ReplicaSet a Pods pomocou „ kubectl dostať všetko “príkaz. Tento článok ilustruje, ako vytvoriť Kubernetes Deployment pomocou „ kubectl vytvoriť nasadenie “príkaz.