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