Hvordan lage init -containere i Kubernetes

Hvordan lage init -containere i Kubernetes
Denne opplæringen vil gi deg en oversikt over init -containere i Kubernetes. Kubernetes fungerer bra med containere, som er grunnen til at det har blitt topp preferanse for utviklerne. Kubernetes lar deg administrere alle containerne på ett sted med bare ett kontrollpanel. I denne artikkelen skal vi diskutere hvilke containere som er i Kubernetes, og vi vil fokusere spesielt på initbeholdere i Kubernetes. Ved hjelp av eksempler vil vi vise deg hvordan du enkelt kan opprette en init -beholder i Kubernetes.

Hva er en beholder i Kubernetes?

En beholder er en komplett pakke som inneholder alt som kreves for å utføre en applikasjon. Det er et bilde av en klar til å kjøre programvarepakke som lar en applikasjon utføre sin ønskede funksjon. Den inneholder kode, systembiblioteker, viktige standardinnstillingsverdier og eventuelle andre krav til kjøretid. Du trenger bare å kode beholderen en gang og etter det, kan den utføres hvor som helst. Det er plattformuavhengig, slik at du ikke har noen problemer mens du kjører applikasjonene dine på noen plattform ved hjelp av containere. Containere kan virtualisere operativsystemet som lar deg kjøre applikasjonene dine fra hvor som helst fra plattformen din eller det private datasenteret eller til og med til den offentlige skyen.

Hva er en init -beholder i Kubernetes?

INIT -beholderen i Kubernetes er en metode for å utføre den første løpende initialiseringsrutinen i en Kubernetes POD. Det er en lett spesialisert beholder som alltid kjører før applikasjonen eller en annen hovedbeholder som kjører i en pod. Den inneholder oppsettskriptet og andre verktøy som vanligvis ikke er til stede i bildet av applikasjonen. Det er vanligvis definert i POD -spesifikasjonen sammen med containere -matrisen. Den grunnleggende bruken av en init -beholder er å bootstrap Appian med JDBC eller RDBMS -drivere som ikke er inkludert i WebApp Docker -bildet. Det kan brukes til å utsette eller blokkere applikasjonen eller andre containere for å starte når du trenger å vente på at Bootstrap -skriptet skal fullføres eller for at ressurser og avhengigheter skal være tilgjengelig.

Hvordan lage en init -beholder i Kubernetes -miljøet?

Ettersom flere appbeholdere kjøres i poden, kan mer enn en init -beholder også kjøre i en enkelt pod. Og de vil alle fullføre utførelsen før noen appbeholder starter utførelsen. INIT -beholderne kjøres i en sekvens, når en init -beholder fullfører utførelsen, starter den neste utførelsen, og når alle initbeholdere fullfører utførelsen, starter enhver appbeholder utførelsen.

Hvis utførelsen av noen INIT -beholder mislykkes, starter Kubernetes gjentatte ganger på containeren til den fullfører utførelsen. La oss nå lage en init -beholder i Kubernetes. Men før det, sørg for at systemet ditt oppfyller alle de grunnleggende behovene for å opprette en init -beholder. For å lage en init -beholder du må ha:

  • Ubuntu 20.04 eller noen annen siste versjon
  • Kubectl kommandolinjeverktøy
  • Minikube Cluster

La oss nå gå videre til implementeringen.

Trinn 1: Start Minikube -klyngen

Du må starte Minikube -klyngen for å bruke Kubernetes -miljøet for å kjøre Kubectl -kommandoer. For å starte Minikube -klyngen, bruker vi følgende kommando:

> Minikube Start

Dette vil vekke minikube -klyngen og la deg kjøre Kubectl -kommandoene i terminalen.

Trinn 2: Opprett YAML -konfigurasjonsfilen

Nå har prosessen med å lage en init -beholder startet. Det første og fremst du trenger for å opprette init -beholderen er å opprette en YAML -konfigurasjonsfil. Du kan bruke 'Nano' -kommandoen til å opprette en ny YAML -fil eller åpne en allerede eksisterende YAML -fil som inneholder konfigurasjonsdetaljene. Kommandoen gitt nedenfor lar deg opprette en YAML -fil med det valgte navnet ditt:

> Nano Podin.Yaml

Når YAML -filen er opprettet, kan du lagre konfigurasjonsdetaljene i den som den som er gitt i øyeblikksbildet nedenfor:

Trinn 3: Distribuer YAML -filen

Nå som konfigurasjonsfilen vår er klar, la oss distribuere den ved hjelp av KUBECTL Apply -kommandoen. Følgende kommando lar deg kjøre pod på konfigurasjonsfilen som vi nettopp opprettet:

> Kubectl Bruk -f podin.Yaml

Utgangen viser tydelig at poden som heter MyApp-Pod er opprettet.

Trinn 4: Sjekk statusen til POD

La oss nå sjekke statusen til poden ved hjelp av kommandoen gitt nedenfor:

> kubectl get -f podin.Yaml

Dette viser ganske enkelt navnet, klar, status, omstart og aldersparametere for POD. Hvis du trenger å se på den detaljerte statusen til poden, kan du bruke følgende gitt nedenfor:

> Kubectl beskriv -f podin.Yaml

Her kan du se status som detaljer, som forteller deg når pod har startet, hvilken IP-adresse den kjører på, hvilken node den kjører på osv. gir deg et detaljert bilde av podens status.

Trinn 5: Kontroller loggene til INIT -beholderen

Fra utgangen gitt i forrige trinn, kan du se at poden som vi har opprettet er i gang. Hvis du nå vil se loggene til INIT -beholderen som kjører på den poden, kan du bruke kommandoen gitt nedenfor:

> Kubectl logger myapp-pod -c init-myservice

Init Container-navnet er 'INIT-MyService' som vi spesifikt nevner for å sjekke loggen. Når du utfører denne kommandoen, vil du få en lignende utdata som den som er gitt nedenfor:

Konklusjon

I denne artikkelen lærte vi om det grunnleggende konseptet om hvilke containere som er spesielt fokusert på INIT -beholderen i Kubernetes. INIT -beholderen er en lett spesialisert beholder som kjøres før noen annen beholder starter opp i POD. Dets funksjonalitet overlapper noen ganger oppstart og beredskapsprober. Disse sonderne kan brukes til å utføre en aktivitet som å blokkere eller forsinke applikasjonsoppstarten til en viss tilstand er oppfylt. Ved å demonstrere et enkelt eksempel lærte vi hvordan du lager en init -beholder i Kubernetes.