Kubectl Copy File fra Pod til Local

Kubectl Copy File fra Pod til Local
Når du bruker Kubernetes, kan det hende du må transportere filer inn og ut av Pod-baserte containere. Vi benyttet CP -kommandoen til å overføre data til og fra eksterne maskiner før containerisering, og vi brukte et verktøy som SCP for å gjøre det. Kubernetes har heldigvis en sammenlignbar funksjon. Kubectl CP -kommandoen fullfører KUBECTL EXEC -kommandoen, og bruker Exec SubResource i Kubernetes POD API. Kubectl CP er avhengig av TAR -kommandoen, som er plassert i beholderens standard utførelsesvei, og den undersøker ikke beholderens filsystem direkte. For en bedre forståelse av Kubectl CP -kommandoen, vil denne guiden gå over noen eksempler.

Før start:

Vi vil bruke Ubuntu 20.04 Linux -operativsystem for å demonstrere hvordan KUBECTL CP -funksjonen fungerer. Operativsystemet som brukes vil bli fullstendig bestemt av brukerens valg. Vi må først installere Kubectl og deretter sette den opp på maskinen vår. Minikube's installasjon og oppsett er to av de essensielle kravene. I tillegg må du begynne å bruke Minikube. Minikube er en virtuell maskin som driver en en-node Kubernetes-klynge. På Ubuntu 20.04 Linux -system, vi må bruke kommandolinjeterminalen for å komme i gang. Åpne skallet ved å trykke på “Ctrl+ALT+T” på tastaturet eller bruke terminalapplikasjonen i Ubuntu 20.04 Linux -systemprogrammer. For å komme i gang med Minikube -klyngen, kjør kommandoen som er angitt nedenfor.

$ Minikube Start

POD -detaljer

Du tildeler en IP -adresse til en pod når du oppretter den. Localhost kan brukes til å slå sammen containere i en pod med et stort antall av dem. Du kan utvide kommunikasjonen utover poden ved å avsløre en port. Fra Kubectl, Get Commands Return Data i tabellform for en eller flere ressurser. Etikettvalgere kan brukes til å filtrere innhold. Informasjon kan bare gis til det nåværende navneområdet eller hele klyngen. Vi må velge et navn for pod (eller pods) som vi ønsker å jobbe. Vi vil bruke KUBECTL Get POD -kommandoen for å finne podens navn (er), og vi vil bruke disse navnene gjennom eksemplene. Kjør kommandoen nedenfor for å se en liste over belgene som for øyeblikket er tilgjengelige i systemet.

$ kubectl få pods

Vi har generert en fil i systemets hjemmekatalog. “Xyz.txt ”er navnet på filen. Kubectl CP -kommandoen vil bli kjørt fra denne filen.

$ Touch XYZ.tekst

Filen ble produsert, som du kan se nedenfor.

Forsikre deg om at du har alt du trenger før du begynner. Vi må sørge for at Kubernetes -klienten vår er koblet til en klynge. For det andre må vi bestemme oss for podens navn (eller pods) som vi ønsker å samarbeide. For å bestemme podens navn (er), vil vi bruke Kubectl Get Pod og bruke disse navnene i følgende deler.

Overføring av en fil fra en lokal PC til en pod

La oss anta at vi må flytte noen filer fra en lokal PC til en pod. Vi kopierte en lokal fil til en pod kalt “Shell-Demo” i foregående eksempel, og vi ga samme vei på pod for å reprodusere filen. Du vil se at vi fulgte en absolutt vei i begge tilfeller. Relative stier kan også brukes. I Kubernetes kopieres filen til arbeidskatalogen og ikke i hjemmekatalogen, som er et betydelig skille mellom Kubectl CP og teknologier som SCP.

Kubectl CP -kommandoen tar to parametere, og den første parameteren er kilden, mens den andre ser ut til å være destinasjonen. I likhet med SCP kan begge parametere (kilde- og destinasjonsfiler) referere til en lokal eller ekstern fil uten tvil.

$ kubectl cp xyz.TXT Shell-Demo: XYZ.tekst

Kopier filen til den gjeldende katalogen til POD

Nå har vi laget en ny tekstfil med navnet “Kalsoom.tekst".

$ Touch Kalsoom.tekst

Filen opprettes med suksess.

Den vil kopiere “Kalsoom.txt ”fra arbeidskatalogen til pod til den gjeldende arbeidskatalogen. Skriv inn følgende kommando i terminalskallet til Ubuntu 20.04 Linux operativsystem.

$ Kubectl CP Shell-Demo: Kalsoom.txt kalsoom.tekst

Konklusjon

Som vi lærte i dette innlegget, er den mest brukte Kubectl CP -kommandoen å kopiere filer mellom brukermaskinen eller skyen og containerne. Denne kommandoen kopierer filer ved å produsere en tjærefil i containeren, gjenskape den til nettverket, og deretter pakke den ut ved hjelp av Kubectl på brukerens arbeidsstasjon eller skyforekomst. Kommandoen Kubectl CP er ganske nyttig og brukt av mange til å overføre filer mellom Kubernetes Pods og det lokale systemet. Denne kommandoen kan være nyttig for å feilsøke eventuelle logger eller innholdsfiler som sendes ut lokalt inne i beholderen, og hvis du vil dumpe containerens database, for eksempel.