Hva er distribusjoner i Kubernetes?
Distribusjoner består av et stort antall identiske belg med egentlig ingen differensierende funksjoner. En distribusjon skaper mange kopier av applikasjonen din og erstatter automatisk de som mislykkes eller blir ikke svarer. Distribusjonen av applikasjonen din sikrer at minst en forekomst er forberedt på å gi et svar på brukerspørsmål. Kubernetes distribusjonskontroller har ansvaret for å administrere distribusjoner.
En av de essensielle delene av distribusjonene er hvordan den administrerer applikasjonsendringer. Når du oppdaterer distribusjonsmanifestet i Kubernetes, oppdateres applikasjonen på rullende basis som standard. På denne måten vil den tidligere versjonen av distribusjonen fortsette å kjøre mens den nye blir satt opp.
I distribusjoner brukes en pod -mal for å spesifisere et krav for pods. Hver pods utseende er definert av POD -spesifikasjonen, som inkluderer hvilke tjenester som skal fungere i containere, hvilket volum pods skal montere, og andre aspekter.
Når pod -malen til en distribusjon oppdateres, produseres nye belg.
Forutsetning:
For å bruke Kubectl for å utføre kommandoer, må du først sette opp en Minikube -klynge på systemet vårt. Ubuntu 20.04 ble brukt til å implementere kommandoene i dette emnet. Du kan også bruke vårt foretrukne operativsystem siden vi allerede har installert Kubectl. Det må installeres før kommandoene kan kjøres.
For å starte en terminal, kan vi ta en av to teknikker. Et alternativ er å bruke operativsystemets applikasjonslinje for å nå terminalen. En annen måte er å bruke tastatursnarveien “Ctrl + Alt + T.”For å starte en terminal, velg et av disse alternativene.
Først må vi starte en Minikube -klynge som tidligere er distribuert på Ubuntu 20.04. Nå lanserer vi Minikube ved å skrive følgende kommando i terminalen. Instruksjonen og utdataene kan forstås i det påførte skjermbildet.
Opprette distribusjoner
De fleste applikasjoner for servicestil i Kubernetes bruker distribusjoner for å betjene applikasjonene sine. Distribusjoner definerer hvordan applikasjonsbeholderen din blir distribuert og antall forekomster som skal kjøres i Kubernetes. Etter det vil Kubernetes takle det nødvendige antallet replikater. Kubectl Apply og kubectl opprette kommandoer kan brukes til å bygge en distribusjon.
Etter at den er bygget, garanterer distribusjonen at antall belg du har spesifisert fungerer. Distribusjonen vil erstatte belg som mislykkes eller blir kastet ut fra nodene sine.
Et eksempel på en manifest -fil i Distribusjon i YAML -format er som følger:
Hele konfigurasjonsfilen finner du nedenfor. Metadata: Navnfeltet indikerer at en distribusjon som heter Nginx opprettes. I følge replikas -kolonnen genererer distribusjonen tre repliserte belg.
POD -malen, eller feltet 'Spec: Template', viser appen: Nginx -etiketten. Malen: Spesifikasjonsparameter i pod -malen spesifiserer at podene bare kjører en container, Nginx, som bruker Nginx Docker Hub Image Version 1.14.2. Distribusjonen gjør port 80 tilgjengelig for belgene å bruke.
Før du fortsetter og følger de videre trinnene, må du sørge for at Kubernetes -klyngen er oppe og opererer. For å konstruere den nevnte distribusjonen, følg prosedyrene som er beskrevet nedenfor.
Vi har brukt kommandoen 'Kubectl Apply' i dette tilfellet. Distribusjonen er vellykket konfigurert, noe som fremgår av utdataene. Instruksjonen og utdataene kan forstås i det påførte skjermbildet.
Kjør nå kommandoene 'Kubectl Get Deployments' for å se om distribusjonen er opprettet eller ikke. Resultatet vil ligne dette (se nedenfor) hvis distribusjonen fremdeles opprettes. Antall tiltenkte eksemplarer, i henhold til.spesifikasjon.Replikasfelt er tre. Instruksjonen og utdataene kan forstås i det påførte skjermbildet.
Rollout -kommandoen i Kubectl kommer til hjelp her! Vi kan bruke den til å overvåke fremdriften i distribusjonen vår.
Kommandoen vil som standard vente til alle belgene har startet ordentlig. Kommandoen går med en null returkode når distribusjonen er fullført vellykket.
Nå kan du kjøre KUBECTL Rollout Status Deployment/Nginx-Deployment for å undersøke status for distribusjon av distribusjonen. Instruksjonen og utdataene kan forstås i det påførte skjermbildet.
Etter noen sekunder, kjør 'Kubectl få distribusjoner igjen. Slik ser utgangen ut. Du kan se at distribusjonen har bygget alle tre kopiene og at alle kopier er oppdaterte (de har den siste pod-malen) og er klare til bruk. Instruksjonen og utdataene kan forstås i det påførte skjermbildet.
Etter det vil vi bruke 'Kubectl Get RS' -kommandoen. Dette vil hjelpe deg med å se replikasetten (RS) som distribusjonen er spesielt opprettet. Instruksjonen og utdataene kan forstås i det påførte skjermbildet.
Følgende felt er produsert fra 'Kubectl Get RS' -kommandoen. Avsnittet nedenfor viser hvilket formål de tjener.
Det er verdt å merke seg at Replicasets navn alltid er [distribusjonsnavn]-[Random-String]. Den tilfeldige strengen opprettes tilfeldig ved hjelp av frø pod-template-hash.
Konklusjon:
Vi diskuterte distribusjoner av Kubectl -liste i denne artikkelen. Den normale distribusjonsstrømmen for Kubernetes for servicemodellapper og hvordan de fungerer. Vi har vist hvordan du kan legge til statussjekker og en automatisert tilbakevendingsmetode til distribusjonssekvensen.