Hva er forskjellen mellom KUBECTL CREATE og KUBECTL Apply?

Hva er forskjellen mellom KUBECTL CREATE og KUBECTL Apply?
“Kubectl Apply” endrer bare egenskapene som er spesifisert i filen i den eksisterende stabile kilden. Det er mulig at filen som brukes i "Apply" er en ufullstendig spesifikasjonsfil. Bare noen få kjennetegn på ressursene påvirkes av "Bruk". Du kan "bruke" en fil som bare endrer en merknad uten å spesifisere ytterligere ressursegenskaper. “Apply” gir mer tilpasningsevne og er en foretrukket tilnærming for oppdatering av forskjellige kilder. Operasjonssettet “Kubectl Apply” brukes til å bygge eller endre Kubernetes -tjenester spesifisert i en manifestfil fra en terminals kommando -ledetekst. Ressursens tilstand er definert i manifestfilen, og deretter brukes Kubectl til å sette den ut i handling. Hvis vi velger alternativet Apply, vil Kubernetes håndtere alt vi trenger. Vi trenger ikke å undervise eller håndtere hver fase individuelt. Dette er den deklarative teknikken, der modifikasjoner som er gjort til et levende objekt "holdes" selv om andre endringer gjøres i objektet.

Kubectl Create

“Kubectl Create” sletter ressursene før du oppretter dem fra den gitte filen. “Opprett” bruker en hel fil. “Opprett” verk basert på hver ressurs eiendom. På grunn av de manglende metadataene, hvis du bruker filen med erstatningsinstruksjonen, vil instruksjonen avbryte. Den imperative tilnærmingen inkluderer valg av skapelse. Dette innebærer at vi må gi råd til Kubernetes -klienten om å utføre de nødvendige oppgavene. Som et resultat ligner det på en brukerstyrt tilnærming. Vi omtaler Kubectl Create som Essential Management. Du informerer Kubernetes API om hva du vil bygge ved hjelp av denne metoden. Kubectl opprette er instruksjonen du bruker for å opprette en Kubernetes -ressurs fra ledeteksten. Dette er en nødvendig applikasjon. Du vil imidlertid motta et unntak hvis ressursen tidligere eksisterer. La oss se på detaljene i begge Kubectl -kommandoene. La oss starte med Kubectl Søk.

Praktisk implementering av Kubectl Apply

Vi vil bruke Ubuntu 20.04 Linux -system for praktisk implementering av KUBECTL Apply -kommandoen. Vi har installert Minikube for å få tjenestene til Kubernetes i Ubuntu 20.04 Linux -system. Så for det første må vi starte Minikube i Ubuntu 20.04 Linux -system.

$ Minikube Start

Prosessen vil ta litt tid. Så raskt som det kommer i gang, kan du fortsette videre. For å forstå konseptet med Kubectl bruker kommandoen, skal vi opprette distribusjonen. Distribusjoner er en samling av mange identiske belg uten kjennetegn. Distribusjoner hjelper deg med å sikre at en eller enda flere kopier av applikasjonen din er tilgjengelige for å betjene brukerens forespørsler på denne måten. Å lage en fil som har. YAML -utvidelse, utfør den pålagte kommandoen.

$ berøringsdistribusjon.Yaml

Filen vil bli opprettet i hjemmekatalogen; Navnet kan variere som per brukerpreferanse. En manifestfil for en Kubernetes -distribusjon med tre eksemplarer av et Nginx -containerbilde vises. Vi har kalt det ”mydeployment”, da du kan sjekke inn linje 4 i det vedlagte bildet.

Hvis du utfører kommandoen under, vil informasjonen fra denne manifestfilen bli brukt til å etablere en distribusjon.

$ kubectl gjelder -f distribusjon.Yaml

Utgangen viser at distribusjonen er dannet effektivt. Du får følgende utdata hvis du utfører følgende listede instruksjon:

$ kubectl få distribusjon

Du kan sjekke den nyopprettede distribusjonen i det ovennevnte bildet. Vi har merket denne distribusjonen "MyDeployment", og den opererer nå tre pods.

Praktisk implementering av KUBECTL CREATE

For den praktiske implementeringen av Kubectl Create Command, la oss begynne å opprette en distribusjon med Kubectl Create. Du vil motta følgende vedlagte resultat hvis du kjører kommandoen som vises i det vedlagte bildet.

Fra ovennevnte output, forstå at du vil få et unntak hvis du prøver å bruke Kubectl Create on a Resource som allerede oppstår. La oss prøve å bruke kubectl opprette for å begynne å lage en ressurs som ikke oppstår. I dette scenariet vil vi bruke navnet "YourDeployment" for å nevne Kubernetes -distribusjonen vår. Vi vil bruke følgende kommando for å gjøre distribusjonen:

$ KUBECTL Opprett distribusjon YourDeployment --Image = Nginx

Hvis alt går bra, vil du ha utdataene vist i det vedlagte bildet.

La oss gjøre noen endringer i den første distribusjonen vi gjorde: “MyDeployment”. Bildet viser hvordan du gjør dette ved å endre manifestfilen, “Distribusjon.Yaml ”. Som sett i det vedlagte bildet (linje nr. 8), er det hevet kopier fra 3 til 4.

For å endre distribusjonen fra 3 til 4 kopier, kjør Kubectl -kommandoen som følger:

$ kubectl gjelder -f distribusjon.Yaml

Distribusjonen er fullført, i henhold til utgangen. Dette indikerer at det er gjort en modifisering til en eksisterende distribusjon. For å validere at distribusjonen virkelig driver fire pods, bruk følgende sett Kubectl få distribusjon. Du vil få noe slikt som et resultat:

$ kubectl få distribusjon

Konklusjon

I denne artikkelen ble ulikheten mellom Kubectl Apply, og Kubectl Create blitt forklart i detalj sammen med praktiske eksempler. KUBECTL CREATE kan bare støpes for å lage en ny ressurs erklærende. På den andre siden kan du bruke KUBECTL Søk for å oppgi en ny Kubernetes -ressurs for å bruke en manifestfil ved hjelp av Kubectl Apply. Ved å oppdatere konfigurasjonen i den medfølgende manifestfilen, kan du bruke Kubectl Apply for å endre en eksisterende ressurs. Jeg håper du ikke vil ha noen bekymringer angående denne guiden.