Hvordan lage et statlig sett i Kubernetes

Hvordan lage et statlig sett i Kubernetes
I denne guiden vil vi definere hvordan du genererer et statlig sett i Kubernetes. Denne guiden hjelper deg med. Statefulsets brukes i distribuerte systemer og statlige applikasjoner. Før du begynner å lære å lage det statlige Set i Kubernetes, bør du bli kjent med det grunnleggende om distribuerte systemer og Stateful Application Administration på Kubernetes. Mot slutten av denne artikkelen vil du kunne opprette, skalere, oppdatere og slette Statefulset i Kubernetes.

Forutsetninger

Ubuntu 20.02 eller noen annen siste versjon av Ubuntu bør installeres i systemet ditt. Aktiver den virtuelle maskinen på Ubuntu -systemet ditt for å utføre Kubernetes -kommandoene. Du må være kjent med POD -er, Cluster DNS, Statefulsets og KUBECTL -kommandolinjeverktøyet.

Følg denne trinn-for-trinn-guiden for å lære hvordan du lager et statlig sett i Kubernetes:

Trinn 1: Start Kubernetes Dashboard

For å kjøre Kubernetes -applikasjonen eller kommandoer på Kubernetes -applikasjonen, må du ha en løpende Kubernetes -terminal. 'Minikube' er Kubernetes -terminalen som brukes til å utføre de forskjellige kommandoene på Kubernetes -applikasjonene. Bruk kommandoen gitt nedenfor for å starte Minikube:

kalsoom@virtualbox> Minikube Start

Når du oppgir denne kommandoen på Kubernetes -terminalen, trykk Enter for å utføre den. Etter å ha implementert instruksjonen, får du følgende resultat:

Trinn 2: Åpne/opprett en YAML -fil

Neste trinn er å åpne en YAML -fil, hvis du allerede har den opprettede filen. Ellers kan du opprette en ny YAML -fil som skal brukes til å opprette Statefulset. Kubernetes gir 'Nano' -kommandoen for å opprette eller åpne en fil i Kubernetes -systemet. Spesifiser filnavnet med filtypen og kjør Nano -kommandoen på den. Se kommandoen gitt nedenfor:

kalsoom@virtualbox> nano textweb.Yaml

Når du utfører denne kommandoen i Kubernetes -terminalen, vil du se følgende fil åpen i Kubernetes -terminalen:

Trinn 3: Opprett konfigurasjonen fra YAML -filen

Kommandoen 'Kubectl Create' brukes til å opprette konfigurasjonen for tjenestene. Vi har YAML -filen og alle spesifikasjonene for den statlige tjenesten som er nevnt i filen. Filen vil bli brukt med 'Create' -kommandoen for å opprette Kubernetes -ressursen direkte på Kubernetes -terminalen. Se kommandoen gitt nedenfor for å opprette Kubernetes -ressursene direkte:

kalsoom@virtualbox> kubectl create -f testweb.Yaml

Etter vellykket utførelse av kommandoen, vil du se 'opprettet' melding på terminalen. To pods vil bli opprettet med denne kommandoen, og hver av dem kjører i Nginx Webserver.

Trinn 4: Opprett de statlige podene

Neste trinn er å lage belgene for det statlige. Kommandoen som brukes til å lage belgene for det statlige fulgte er gitt nedenfor:

kalsoom@virtualbox> kubectl få pods -w -l app = nginx

Etter å ha utført denne kommandoen, får du se følgende resultat på Kubernetes -terminalen:

Trinn 5: Få tjenestene til Nginx Webserver

Siden vi har opprettet to pods i forrige trinn, og hver av dem kjører i Nginx -serveren, la oss få tjenestene til disse podene fra Nginx Webserver. Bruk følgende kommando for å få Nginx -tjenestene:

kalsoom@virtualbox> kubectl få service nginx

Skriv denne kommandoen på Minikube -terminalen og trykk Enter -kommandoen for å utføre den og se følgende resultat:

Trinn 5: Få nettstatsstatus

Neste trinn er å bekrefte at begge podene er opprettet med hell, og det kan gjøres ved å bruke Web StatefulSet. For å få nettet StatefulSet, bruk følgende kommando:

kalsoom@virtualBox> Kubectl Få StatefulSet Web

Skriv denne kommandoen på Kubernetes -terminalen, etter utførelse vil du få følgende utdata:

Trinn 6: Lag de bestilte kopiene fra Statefulset

Pods for det statlige med flere kopier er opprettet i sekvensiell rekkefølge. Hver pod er distribuert i en 0 til N-1-sekvensen. La oss konfigurere rekkefølgen på de opprettede belgene i terminalen. Bruk kommandoen 'Kubectl Get' for å konfigurere bestillingen. Se den komplette kommandoen nedenfor:

kalsoom@virtualbox> kubectl få pods -w -l app = nginx

Når du utfører denne kommandoen i Kubernetes -terminalen, vil utgangen til slutt se ut som den som er gitt i utdraget nedenfor:

Som du kan se av utdataene, til Web-0 POD har kjørt, har ikke Web-1 POD blitt lansert.

Trinn 7: Undersøk den ordinære indeksen for pods

Pods er opprettet med ordinærindeksen, og de har også en stabil nettverksidentitet, la oss undersøke ordinærindeksen til Statefulset Pods med følgende kommando:

kalsoom@virtualbox> kubectl få pods -l app = nginx

Denne kommandoen vil vise den unike identiteten til podene basert på den unike ordinale indeksen, som ble tildelt av Statefulset -kontrolleren til hver pod. Den komplette podens navn er gitt som - og to belg vil bli opprettet for Web Statefulset fordi det har to replikker. La oss nå se utdataene nedenfor:

Trinn 8: Implementere vertsnavninstruksjonen i hver pod

Et jevnt vertsnavn har blitt tildelt hver pod jordet på sin ordinale indeks. For å implementere vertsnavnet som er tilordnet hver pod, kan vi bruke følgende kommando:

kalsoom@virtualbox> for i i 0 1; do kubectl exec "web- $ i" -sh -c 'hostname'; Ferdig

Denne kommandoen vil vise deg de to kopiene av pod. Se utdataene gitt i utdraget nedenfor:

Trinn 8: Undersøk DNS-adressene i klyngen

DNS-adressene til POD-ene blir undersøkt ved å bruke 'NSlookup'. Pakken 'Dnsutils' gir 'NSlookup' -funksjonaliteten for å utføre kommandoen 'Kubectl Run' på StatefulSet Container. Den komplette kommandoen er gitt nedenfor for din veiledning:

kalsoom@virtualbox> kubectl run -i - -tty -image busybox: 1.28 DNS-test-Restart = Never--RM

Dette vil starte et nytt skall hvor du kan utføre teksten DNS -beholderen med følgende kommando:

kalsoom@virtualbox> nslookup web-o.nginx

Når du utfører denne kommandoen, vil en lignende utgang være tilgjengelig på terminalen din:

Nå, sjekk statusen til Statefulset Pods og avslutt deretter containerskallet. Igjen, bruk kommandoen 'Kubectl Get' for å se belgene i det statlige.

Trinn 9: Slett belgene i Statefulset

Det siste trinnet er å slette alle belgene i Statefulset. Og for det kan du øve på instruksjonen 'Kubectl sletting'. Se den komplette kommandoen gitt nedenfor:

kalsoom@virtualbox> kubectl slett pod -l app = nginx

Når du kjører denne kommandoen i Kubernetes -terminalen, vil utgangen til slutt se slik ut:

Konklusjon

I denne artikkelen lærte vi hvordan vi lager, oppdaterer og sletter belgene i det statlige Kubernetes. Vi brukte forskjellige KUBECTL -kommandoer for å konfigurere belgene i Statefulset. YAML -filen har blitt brukt til definisjonen av tjenestene til podene og for å konfigurere disse tjenestene i Statefulset