Opprett distribusjon ved å bruke 'kubectl create deployment'

Opprett Distribusjon Ved A Bruke Kubectl Create Deployment



Kubernetes er en gratis distribusjon med åpen kildekode og også kjent som k8s. Den brukes til å automatisere distribusjon, administrasjon og skalering av containerisert programvare og applikasjoner. Den gir forskjellige komponenter for beholderadministrasjon som noder, kontrollplan, pods og Kubernetes-distribusjon. Ved hjelp av Kubernetes kan utviklerne enkelt automatisere driftsoppgaven, rulle tilbake endringene og overvåke og skalere de containeriserte applikasjonene og programvaren.

I denne bloggen vil vi forklare:







Hva er Kubernetes Deployment?

Kubernetes Deployment blir referert til som et ressursobjekt som gir deklarativ instruksjon og oppdateringer til hovedelementene som Pods, ReplicaSet og containeriserte applikasjoner. Kubernetes Deployment tillater utvikleren å beskrive den containeriserte applikasjonen som bilde, antall pods, port, replikaer og så videre. Den ene hovedgrunnen til at Kubernetes er bedre enn Docker, er at den tilbyr oss auto-healing og auto-scaling egenskaper, og disse tilstandene er oppnåelige på grunn av Kubernetes Deployment.



I 'auto-healing' er mekanismen en testautomatiseringsteknikk som tester dets løpende objekt og i tilfelle feil oppstår, implementerer det beste samsvaret for korreksjon og bruker rettelsen for å matche den faktiske tilstanden med ønsket tilstand. I 'auto-scaling' skalerer tjenesten applikasjonens arbeidsmengde automatisk.



Hvorfor er det bedre å lage distribusjon enn å lage pods?

Kubernetes-distribusjon lar utvikleren enkelt holde en gruppe av de samme podene i gang med en felles konfigurasjon. Mens du lager en pod, må brukere derimot opprette og kjøre poden separat. I distribusjon, hvis én pod slettes eller avsluttes, vil den automatisk bli gjenskapt og startet på grunn av en auto-helbredelsesmekanisme. Men hvis pods kjøres direkte uten distribusjon, i tilfelle feil, må brukerne gjenskape og kjøre poden manuelt.





Hva er et replikasett i distribusjon?

Da utvikleren opprettet distribusjonen, ble tre hovedkomponenter generert og ReplicaSet er en av dem. ReplicaSet er en kontroller for distribusjon og er ansvarlig for å kjøre det angitte antallet Pods i en distribusjon. I tilfelle, hvis én pod slettes, instruerer ReplicaSet raskt å regenerere den nye poden for å matche den faktiske tilstanden til podene med ønsket tilstand. Den er hovedansvarlig for å gi deklarative oppdateringer til pods.

Hva er kommandoen 'kubectl create deployment'?

« kubectl opprette distribusjon ” er en kommando av Kubectl-verktøyet som brukes til å opprette og starte Kubernetes-distribusjonen. Deretter instruerer distribusjonen Kubernetes hvordan du oppretter og oppdaterer forekomster av applikasjonen din.



Syntaks

kubectl opprette distribusjon < distribusjonsnavn > --bilde = < bildenavn > -- < alternativ =verdi >


Alternativ

Kommandoen 'kubectl create deployment' støtter forskjellige alternativer for å gi et ekstra lag med funksjonalitet og for å gi ekstra instruksjoner for å distribuere forekomster av en applikasjon. Alternativene som støttes av ' kubectl opprette distribusjon kommandoen er gitt nedenfor i tabellform:

Alternativ Beskrivelse
“– – tillat-missing-mal-keys Hvis verdien er satt til sann, vil den ignorere eventuelle feil i maler når en kartnøkkel eller et felt mangler i malen.
“– –tørrkjørt Verdien kan være 'ingen', 'server' eller 'klient'. Hvis verdien er klient, vil den bare vise eller skrive ut objektet som ville blitt sendt uten å sende det.

Hvis verdien er server, vil den bare sende inn forespørsler på serversiden.

“– –feltsjef Viser eller angir lederens navn som brukes til å spore felteierskap.
'- -bilde Angi bildenavnet for å spesifisere beholdermalen.
-o, “– –utgang Spesifiser utdataformatet.
'- -havn Den setter porten til å eksponere beholderen.
-r, “– –replikaer Den brukes til å definere en rekke pod-replikaer.
“– –save-config Den brukes til å lagre konfigurasjonen av et objekt i merknaden. Hvis verdien er usann, vil merknaden være uendret.
“– –vis-administrerte-felt Som standard er verdien falsk. Men hvis det er satt som sant, vil det beholde eller lagre de administrerte feltene når du skriver ut objekter i JSON- eller YAML-format.
“– –validate=’strict’ Verdien kan være 'streng', 'advare' eller 'ignorer'. Hvis den er 'streng', vil den validere inndataene og mislykkes i forespørselen hvis den er ugyldig.

Hvis verdien er 'advarsel', vil den advare om dupliserte og ukjente felt.

Hvis verdien er 'ignorer', vil den ikke utføre noen skjemavalidering.

Forutsetning: Installer kubectl og minikube

For å starte Kubernetes Deployment i Kubernetes-klyngen, installer først verktøyene nedenfor på systemet:

    • Kubectl-verktøy: Kubectl er et Kubernetes-kommandolinjeverktøy som brukes til å kontrollere, administrere og drifte en Kubernetes-klynge og dens komponenter som Kubernetes Deployment.
    • Minikube-verktøy: Minikube er et implementeringssystem for Kubernetes som gir eller oppretter en virtuell maskin på systemet for å starte Kubernetes-klyngen. Den kan kjøre enkeltnode-klynger og brukes mest av nybegynnere eller til testformål.

For å komme i gang med Kubernetes og installere viktige komponenter som ' kubectl ' og ' minikube ', gå gjennom vår tilknyttede ' 'artikkel.

Hvordan lage Kubernetes-implementering ved å bruke kommandoen 'kubectl create'?

Kubernetes-distribusjonen kan opprettes ved å bruke Yaml-manifestet eller ved ' kubectl opprette distribusjon ' kommando. For å opprette Kubernetes-distribusjonen ved å bruke kommandoen 'kubectl create deployment', følg demonstrasjonen nedenfor.

Trinn 1: Kjør PowerShell

Start først Windows PowerShell med administrative rettigheter fra Start-menyen. De administrative rettighetene kreves fordi minikube starter Kubernetes-klyngen på den virtuelle maskinen ved å bruke HyperV:


Trinn 2: Start Kubernetes Cluster

For å starte Kubernetes-klyngen, bruk ' minikube start ' kommando:

minikube start



Trinn 3: Få Kubernetes-noder

Gå deretter til Kubernetes-nodene for å sjekke om klyngen er startet eller ikke bruker ' kubectl får noder ' kommando:

kubectl får noder



Trinn 4: Opprett Kubernetes-implementering

Opprett en ny Kubernetes-distribusjon i klyngen gjennom 'k ubectl create deployment “– –image= ' kommando. For demonstrasjon har vi laget 'nginx-deployment' som vil kjøre Nginx-applikasjonen i en pod ved å bruke 'nginx:stable-perl'-bildet:

kubectl opprette distribusjon nginx-deployment --bilde =nginx:stabil-perl



Trinn 5: Få Kubernetes Deployment, ReplicaSet og Pod

Kommandoen 'kubectl create deployment' vil opprette tre komponenter Deployment, ReplicaSet og Pod. For å få tilgang til Kubernetes-distribusjonene, kjør ' kubectl få distribusjon ' kommando:

kubectl få distribusjon


Her kan du se ' nginx-distribusjon ' er tilgjengelig i Kubernetes-klyngen:


ReplicaSet er distribusjonskontrolleren som sikrer at applikasjonen i pods kjører feilfritt og reparerer bruddpunktene. For å få tilgang til ReplicaSet, bruk ' kubectl får rs ' kommando:

kubectl får rs


Her viser ReplicaSet ønsket antall pods og nåværende kjørende pods:


Poden er en mindre enhet av Kubernetes-klyngen som kjører den containeriserte applikasjonen. For å få tilgang til Kubernetes-podene, bruk ' kubectl få pods ' kommando. Her er ' -O alternativet brukes til å spesifisere utdataformatet. For å se Pod IP-adressen har vi brukt ' bred ' format:

kubectl få pods -O bred



Trinn 6: Logg på Kubernetes Cluster

For å få tilgang til applikasjonen som kjører i en beholder, åpner du først Kubernetes-klyngen ved å bruke ' minikube ssh ' kommando:

minikube ssh



Trinn 7: Få tilgang til applikasjoner som kjører i Kubernetes Deployment

Etter det, bruk ' krølle ”-kommandoen sammen med Pod-IP-adressen for å få tilgang til den containeriserte applikasjonen:

krøll 10.244.0.7


Hvordan kjøre replikaer i Kubernetes Deployment Ved å bruke kommandoen 'kubectl create deployment'?

Å lage Kubernetes Deployment er bedre enn å kjøre Pod, da den kan kjøre og administrere en gruppe pods samtidig ved å lage Pod-replikaer. For å kjøre replikaer i Kubernetes-distribusjon ved å bruke kommandoen 'kubectl create deployment', følg instruksjonene nedenfor.

Trinn 1: Opprett Kubernetes-implementering

Først oppretter du en distribusjon ved å bruke ' kubectl opprette distribusjon '-kommandoen sammen med ' “– –kopier ' alternativet. Verdien av 'replikaer'-alternativet vil spesifisere ønsket antall pods som skal administreres og kjøres av ReplicaSet:

kubectl opprette distribusjon nginx-deployment --bilde =nginx:stabil-perl --kopier = 2



Trinn 2: Få Kubernetes Deployment, ReplicaSet og Pods

Nå får du tilgang til Kubernetes-implementeringen ved å bruke kommandoen 'kubectl get deploy':

kubectl få distribusjon


Her kan du se at distribusjonen viser det klare, oppdaterte og tilgjengelige antallet pods:


Bruk kommandoen nedenfor for å få tilgang til ReplicaSet-informasjon. Du kan se at ReplicaSet viser statusen til ønsket antall pods og kjører pods for øyeblikket:

kubectl får rs



På samme måte, for å få tilgang til de løpende podene, bruk kommandoen nedenfor:

kubectl få pods


Utdataene indikerer at Kubernetes-distribusjonen utfører ønsket antall Pods-replikaer i Kubernetes-klyngen:

Hvordan ReplicaSet fungerer for å kontrollere Kubernetes-distribusjon?

ReplicaSet er ansvarlig for å kjøre ønsket antall Pods i en distribusjon. Hvis én pod brytes ned eller slettes, vil den automatisk gjenskape poden for å matche gjeldende status for podene med ønsket tilstand. Denne mekanismen implementerer faktisk auto-healing-teknikken. Følg instruksjonene nedenfor for demonstrasjon.

Trinn 1: Se Live Kubernetes Pods

Først, se Pods-statusen live ved å bruke ' kubectl få pods -w ' kommando. Legg også merke til navnet på poden som vil bli ødelagt eller slettet:

kubectl få pods -I



Trinn 2: Slett en pod

Deretter åpner du en annen PowerShell-terminal og prøver å slette den andre poden ved å bruke ' kubectl slett pods ' kommando:

kubectl slette pods nginx-deployment-7584b4674d-hbx4f


Utdataene viser at vi har slettet poden:


Åpne nå PowerShell-vinduet der podens status er live. Her kan du se når vi slettet poden, at ReplicaSet automatisk opprettet og utførte den nye poden for å matche gjeldende pod-status til ønsket status:


Vi har dekket metoden for å lage Kubernetes Deployment ved å bruke kommandoen 'kubectl create deployment'.

Konklusjon

For å opprette Kubernetes-implementeringen ved å bruke ' kubectl opprette distribusjon ”-kommando, installer først de essensielle verktøyene som minikube og kubectl. Deretter kjører du den nye Kubernetes-klyngen med minikube. Opprett nå en ny distribusjon ved å bruke ' kubectl create deployment “– –image= ' kommando. Deretter kan du se Kubernetes-distribusjonen, ReplicaSet og Pods ved å bruke ' kubectl få alt ' kommando. Denne artikkelen har illustrert hvordan du oppretter Kubernetes Deployment ved å bruke ' kubectl opprette distribusjon ' kommando.