Crear desplegament amb 'kubectl create deployment'

Crear Desplegament Amb Kubectl Create Deployment



Kubernetes és una distribució gratuïta de codi obert i també coneguda com a k8s. S'utilitza per automatitzar el desplegament, la gestió i l'escalat de programari i aplicacions en contenidors. Proporciona diferents components per a la gestió de contenidors, com ara nodes, pla de control, pods i desplegament de Kubernetes. Amb l'ajuda de Kubernetes, els desenvolupadors poden automatitzar fàcilment la tasca operativa, retrocedir els canvis i supervisar i escalar les aplicacions i el programari en contenidors.

En aquest bloc us explicarem:







Què és Kubernetes Deployment?

El desplegament de Kubernetes es coneix com un objecte de recurs que proporciona instruccions declaratives i actualitzacions dels seus elements principals, com ara Pods, ReplicaSet i aplicacions en contenidors. El desplegament de Kubernetes permet al desenvolupador descriure l'aplicació en contenidors, com ara la imatge, el nombre de pods, el port, les rèpliques, etc. L'única raó principal per la qual Kubernetes és millor que Docker és que ens ofereix propietats de curació automàtica i d'escala automàtica i aquests estats es poden aconseguir gràcies al desplegament de Kubernetes.



En el mecanisme de 'curació automàtica' és una tècnica d'automatització de proves que prova el seu objecte en execució i, en cas que es produeixi qualsevol error, implementa la millor concordança per a la correcció i aplica la correcció per fer coincidir l'estat real amb l'estat desitjat. En el servei d''escalat automàtic', escala automàticament la càrrega de treball de l'aplicació.



Per què és millor crear un desplegament que crear pods?

El desplegament de Kubernetes permet al desenvolupador mantenir fàcilment un grup dels mateixos pods en funcionament amb una configuració comuna. En canvi, mentre es creen un pod, els usuaris han de crear i executar el pod per separat. Durant el desplegament, si s'elimina o s'acaba un pod, es tornarà a crear i es començarà automàticament a causa d'un mecanisme de curació automàtica. Però si els pods s'executen directament sense desplegament, en cas d'error, els usuaris han de recrear i executar el pod manualment.





Què és un ReplicaSet en desplegament?

Quan el desenvolupador va crear el desplegament, es van generar tres components principals i ReplicaSet és un d'ells. El ReplicaSet és un controlador de desplegament i és responsable d'executar el nombre especificat de pods dins d'un desplegament. En cas que, si s'elimina un pod, el ReplicaSet indica ràpidament que es regeneri el nou pod perquè coincideixi amb l'estat real dels pods amb l'estat desitjat. És el principal responsable de proporcionar actualitzacions declaratives als pods.

Què és l'ordre 'kubectl create deployment'?

El ' kubectl crea desplegament ” és una comanda de l'eina Kubectl que s'utilitza per crear i iniciar el desplegament de Kubernetes. A continuació, el desplegament indica a Kubernetes com crear i actualitzar instàncies de la vostra aplicació.



Sintaxi

kubectl crea desplegament < nom-de desplegament > --imatge = < nom-imatge > -- < opció = valor >


Opció

L'ordre 'kubectl create deployment' admet diferents opcions per proporcionar una capa addicional de funcionalitat i donar instruccions addicionals per desplegar instàncies d'una aplicació. Les opcions admeses pel ' kubectl crea desplegament L'ordre es dóna a continuació en forma de taula:

Opció Descripció
“– –permet les claus-de-plantilla que falten Si el seu valor s'estableix com a cert, ignorarà els errors de les plantilles quan falti una clau o un camp de mapa a la plantilla.
“– –funcionament en sec El seu valor pot ser 'cap', 'servidor' o 'client'. Si el valor és client, només mostrarà o imprimirà l'objecte que s'enviaria sense enviar-lo.

Si el valor és servidor, només enviarà sol·licituds del costat del servidor.

“– –gerent de camp Mostra o estableix el nom del gestor utilitzat per fer el seguiment de la propietat del camp.
“– –imatge Especifiqueu el nom de la imatge per especificar la plantilla del contenidor.
-o, “– –sortida Especifiqueu el format de sortida.
“– –port Estableix el port per exposar el contenidor.
-r, “– –rèpliques S'utilitza per definir una sèrie de rèpliques de pod.
“– –guardar-config S'utilitza per guardar la configuració d'un objecte en la seva anotació. Si el seu valor és fals, l'anotació no canviarà.
“– –mostrar-camps-gestionats Per defecte, el seu valor és fals. Però si s'estableix com a cert, mantindrà o desarà els camps gestionats quan imprimeixin objectes en format JSON o YAML.
“– –validate=’estricte’ El seu valor pot ser 'estricte', 'avisar' o 'ignorar'. Si és 'estricte', validarà l'entrada i fallarà la sol·licitud si no és vàlida.

Si el seu valor és 'advertir', advertirà sobre camps duplicats i desconeguts.

Si el seu valor és 'ignora', no realitzarà cap validació d'esquema.

Requisit previ: instal·lar kubectl i minikube

Per iniciar el desplegament de Kubernetes al clúster de Kubernetes, primer, instal·leu les eines següents al sistema:

    • Eina Kubectl: Kubectl és una eina de línia d'ordres de Kubernetes que s'utilitza per controlar, gestionar i operar un clúster de Kubernetes i els seus components, com ara Kubernetes Deployment.
    • Eina Minikube: Minikube és un sistema d'implementació per a Kubernetes que proporciona o crea una màquina virtual al sistema per iniciar el clúster de Kubernetes. Pot executar clústers d'un sol node i és utilitzat principalment per principiants o amb finalitats de prova.

Per començar amb Kubernetes i instal·lar components essencials com ' kubectl ' i ' minikube ”, passa pel nostre enllaç “ ' article.

Com crear un desplegament de Kubernetes mitjançant l'ordre 'kubectl create'?

El desplegament de Kubernetes es pot crear aplicant el manifest de Yaml o mitjançant el ' kubectl crea desplegament ' comandament. Per crear el desplegament de Kubernetes mitjançant l'ordre 'kubectl create deployment', seguiu la demostració que es proporciona a continuació.

Pas 1: executeu PowerShell

Primer, inicieu el Windows PowerShell amb privilegis administratius des del menú Inici. Els privilegis administratius són necessaris perquè minikube inicia el clúster Kubernetes a la màquina virtual mitjançant HyperV:


Pas 2: inicieu el clúster de Kubernetes

Per iniciar el clúster de Kubernetes, utilitzeu el ' inici minikube ' comandament:

inici minikube



Pas 3: obteniu nodes de Kubernetes

A continuació, accediu als nodes de Kubernetes per comprovar si el clúster s'ha iniciat o no utilitzant el ' kubectl obté nodes ' comandament:

kubectl obté nodes



Pas 4: creeu el desplegament de Kubernetes

Creeu una nova implementació de Kubernetes al clúster mitjançant el 'k ubectl create deployment “– –imatge= ' comandament. Per a la demostració, hem creat 'nginx-deployment' que executarà l'aplicació Nginx en un pod mitjançant la imatge 'nginx:stable-perl':

kubectl crea desplegament nginx-deployment --imatge =nginx:stable-perl



Pas 5: obteniu Kubernetes Deployment, ReplicaSet i Pod

L'ordre 'kubectl create deployment' crearà tres components Deployment, ReplicaSet i Pod. Per accedir als desplegaments de Kubernetes, executeu el ' kubectl obtenir desplegament ' comandament:

kubectl obtenir desplegament


Aquí, podeu veure ' nginx-deployment ” està disponible al clúster de Kubernetes:


El ReplicaSet és el controlador de desplegament que assegura que l'aplicació en pods s'executa sense errors i repara els punts d'interrupció. Per accedir al ReplicaSet, utilitzeu el ' kubectl obtenir rs ' comandament:

kubectl obtenir rs


Aquí, el ReplicaSet mostra el nombre desitjat de pods i pods en funcionament actuals:


El pod és una unitat més petita del clúster de Kubernetes que executa l'aplicació en contenidors. Per accedir als pods de Kubernetes, utilitzeu ' kubectl obtenir beines ' comandament. Aquí el ' -O ” s'utilitza per especificar el format de sortida. Per veure l'adreça IP del pod, hem utilitzat el ' ample ” format:

kubectl obtenir beines -O ample



Pas 6: inicieu la sessió a Kubernetes Cluster

Per accedir a l'aplicació que s'executa en un contenidor, primer, accediu al clúster de Kubernetes mitjançant el ' minikube ssh ' comandament:

minikube ssh



Pas 7: Accediu a l'aplicació que s'executa a Kubernetes Deployment

Després d'això, utilitzeu el ' rínxol ” comanda juntament amb l'adreça IP del pod per accedir a l'aplicació en contenidors:

rínxol 10.244.0.7


Com executar rèpliques al desplegament de Kubernetes mitjançant l'ordre 'kubectl create deployment'?

Crear Kubernetes Deployment és millor que executar Pod, ja que pot executar i gestionar un grup de pods alhora creant rèpliques de Pod. Per executar rèpliques al desplegament de Kubernetes mitjançant l'ordre 'kubectl create deployment', seguiu les instruccions següents.

Pas 1: creeu el desplegament de Kubernetes

En primer lloc, creeu un desplegament amb el ' kubectl crea desplegament ordre ' juntament amb el ' “– –rèpliques ” opció. El valor de l'opció 'rèpliques' especificarà el nombre desitjat de pods que ReplicaSet hauria de gestionar i executar:

kubectl crea desplegament nginx-deployment --imatge =nginx:stable-perl --rèpliques = 2



Pas 2: obteniu Kubernetes Deployment, ReplicaSet i Pods

Ara, accediu al desplegament de Kubernetes mitjançant l'ordre 'kubectl get deploy':

kubectl obtenir desplegament


Aquí podeu veure que el desplegament mostra el nombre de pods preparats, actualitzats i disponibles:


Utilitzeu l'ordre següent per accedir a la informació de ReplicaSet. Podeu veure que ReplicaSet mostra l'estat del nombre desitjat de pods i que s'executen actualment:

kubectl obtenir rs



De la mateixa manera, per accedir als pods en execució, utilitzeu l'ordre següent:

kubectl obtenir beines


La sortida indica que el desplegament de Kubernetes està executant correctament el nombre desitjat de rèpliques de Pods al clúster de Kubernetes:

Com funciona ReplicaSet per controlar el desplegament de Kubernetes?

El ReplicaSet és responsable d'executar el nombre desitjat de pods dins d'un desplegament. Si un pod es desglossa o s'elimina, el recrearà automàticament perquè coincideixi amb l'estat actual dels pods amb l'estat desitjat. En realitat, aquest mecanisme està implementant la tècnica d'autocuració. Per a la demostració, seguiu les instruccions següents.

Pas 1: visualitzeu els pods de Kubernetes en directe

Primer, visualitzeu l'estat dels pods en directe mitjançant el ' kubectl obtenir pods -w ' comandament. A més, tingueu en compte el nom del pod que es trencarà o es suprimirà:

kubectl obtenir beines -En



Pas 2: suprimiu un pod

A continuació, obriu un altre terminal de PowerShell i proveu d'eliminar el segon pod mitjançant el ' kubectl suprimeix pods ' comandament:

Kubectl suprimeix pods nginx-deployment-7584b4674d-hbx4f


La sortida mostra que hem suprimit correctament el pod:


Ara, obriu la finestra de PowerShell on es mostra l'estat del pod. Aquí, podeu veure quan vam suprimir el pod, el ReplicaSet va crear i executar automàticament el nou pod per fer coincidir l'estat actual dels pods amb l'estat desitjat:


Hem tractat el mètode per crear el desplegament de Kubernetes mitjançant l'ordre 'kubectl create deployment'.

Conclusió

Per crear el desplegament de Kubernetes mitjançant el ' kubectl crea desplegament ”, en primer lloc, instal·leu les eines essencials com minikube i kubectl. Després d'això, executeu el nou clúster de Kubernetes amb minikube. Ara, creeu un desplegament nou amb el ' kubectl crea el desplegament “– –imatge= ' comandament. Després d'això, visualitzeu el desplegament de Kubernetes, el ReplicaSet i els pods mitjançant el ' kubectl obtenir-ho tot ' comandament. Aquest article ha il·lustrat com crear el desplegament de Kubernetes mitjançant el ' kubectl crea desplegament ' comandament.