Utfør bash i en pod med kubectl?

Utfør bash i en pod med kubectl?
Denne artikkelen demonstrerer hvordan du får et skall til en løpende beholder ved hjelp av Kubectl Exec. Denne artikkelen bør gjøres på en klynge med minimum to noder som ikke kontrollerer flyvertene. Du kan bruke Minikube til å konstruere en klynge hvis du for øyeblikket ikke har en.

For å kjøre instruksjonen i Kubernetes, trenger du Ubuntu 20.04 distribuert på Linux -operativsystemet ditt. For å kjøre Kubernetes på Linux, må du også installere Minikube -klyngen på PC -en. Minikube gjør det enkelt å teste kommandoer og programmerere ved å la deg gjøre det systematisk. Som et resultat gir det nybegynnere den beste Kubernetes læringsopplevelse mulig. Minikube -klyngen skal startes først. Gå til den nyinstallerte kommandoprommetterminalen i Ubuntu 20.04. Ved å bruke CTRL+ALT+T -snarveisnøkkelen eller sette “Terminal” i Ubuntu 20.04 Systemets søkeboks, du kan gjøre det. En av de foregående måtene vil sette i gang Minikube fullt ut på terminalskallet. Minikube vil bli startet etter det.

$ Minikube Start

Skriv "Minikube Start" inn i terminalen for å starte Minikube. Kubernetes -klyngen vil bli lansert etter at en virtuell maskin som er i stand til å betjene en enkelt node -klynge er bygget. Det vil også fungere med Kubectl -miljøet. Slik vil klyngen samhandle med deg.

Få et skall til en løpende beholder

Først har vi opprettet en fil ved hjelp av Touch -kommandoen. Den brukes til å lage en fil som ikke har noe innhold. Touch -kommandoen genererte en tom fil. Denne kommandoen kan også brukes hvis brukeren ikke har noen data å lagre når filen opprettes.

$ berøringsskall.Yaml

Med Touch -kommandoen kan du lage en enkelt fil om gangen. Se følgende skjermbilde for en bedre idé. Berøring, som alle andre kommandoer, har en rekke muligheter. Disse alternativene kan brukes til forskjellige formål. For å lage et stort antall filer samtidig, bruk Touch -kommandoen. Disse filene vil ikke inneholde noen data når de ble opprettet.

Vi har laget en pod med en beholder. Nginx -bildet drives av beholderen. Pods konfigurasjonsfil er som følger:

Selvfølgelig står du fritt til å bruke et annet bilde eller skall. Noen få argumenter er nevnt nedenfor:

My-Shell: Navnet på distribusjonen som er produsert er vanligvis oppkalt etter dette. Dette vil være pod -tittelen med en unik ID på slutten.

-RM: Når vi løsner, sletter du alle ressursene vi har produsert. Dette renser opp distribusjonen så vel som poden etter å ha stengt økten.

-Jeg/-TTY: Det er kombinasjonen av disse to som lar oss bli med i en interaktiv økt.

-: Skiller posisjons -Arg fra slutten av Kubectl -utførelsesalternativene (BASH).

Bash: Den overstyrer beholderens CMD med bash. Vi ønsker å bruke bash som containerens kommando i dette scenariet.

Nå er poden vellykket opprettet med denne kommandoen.

$ kubectl gjelder -f shell.Yaml

Følgende kommando (Get POD) kan brukes til å teste at beholderen kjører.

$ kubectl få pod shell-demo

KUBECTL EXEC -kommandoen brukes til å utføre kommandoer i Kubernetes Pods ved hjelp av Docker Containers. Det er også mulig å skaffe seg et interaktivt skall til en Docker -beholder som kjører i en pod ved hjelp av denne kommandoen.

Kubectl Exec -kommandoen lar deg starte en skalløkt inne i Kubernetes Cluster's Containers. Når logger alene ikke er nok, bruk denne kommandoen til å undersøke beholderens filsystem, sjekk miljøet og bruk flere feilsøkingsverktøy. Den beste måten å få et skall inn i en Kubernetes -beholder er å bruke Kubectl Exec. Det ble skapt uttrykkelig for dette formålet og eliminerte alle komplikasjoner med å bestemme hvilken fysisk node som skal kobles til.

Det er ingenting som hindrer deg i å endre beholderen med Kubectl Exec fordi det gir deg fullstendig skalltilgang. Dette lar deg installere flere programvarepakker for å hjelpe deg med feilsøking.

Liste rotkatalogen i skallet ditt. Inne i beholderen, skriv "LS /".

Åpning av konsollen når en pod har to eller flere containere

Tenk på følgende scenario: Du har to containere som heter Main-App og Helper-App i pod som heter My-Pod. Følgende kommando starter et skall i hovedkontaineren.

$ kubectl exec -i -t my -pod -container main -app - /bin /bash

Konklusjon

I denne artikkelen har vi lært hvordan vi skal utføre Bash -kommandoen med Kubectl og forutsetningene for å kjøre instruksjonene i Kubernetes. I tillegg har vi også gått gjennom det grunnleggende om berørings- og exec -kommando og for hvilket formål de brukes.