Hva er en hendelse i Kubernetes?
En Kubernetes -hendelse er et objekt som genereres automatisk mot enhver endring som skjer med ressurser som noder, containere, klynger eller pods i Kubernetes -systemet. Den forteller brukeren hva som skjer med ressursene i systemet, jeg.e. En beholder drepes, en pod er planlagt, distribusjonen er oppdatert osv. Disse hendelsene hjelper til med å opprettholde Kubernetes -systemet og utføre feilsøking i Kubernetes -miljøet. I denne bloggen vil vi oppdage og diskutere hvordan du får tilgang til hendelsene i Kubernetes -miljøet.
Forutsetninger
Før du begynner å lære å se på hendelsene i Kubernetes, må du sørge for at systemet ditt oppfyller alle de grunnleggende behovene. Du må ha følgende:
La oss nå gå videre for å lære de forskjellige metodene for å få tilgang til Kubernetes -hendelsene.
Start Minikube -miljøet
For å bruke Kubernetes -miljøet og få tilgang til hendelsene som er opprettet i det, må vi ha tilgang til Minikube. La oss derfor først starte Minikube med følgende kommando:
> Minikube Start
Dette starter på Minikube -terminalen hvor du kan få tilgang til Kubernetes -hendelsene. Nå kan vi få tilgang til eller få hendelsene i Kubernetes
Hvordan se hendelsene i Kubernetes
Det er mange forskjellige måter å få tilgang til eller se på hendelsene i Kubernetes. Her vil vi beskrive disse metodene for å hjelpe deg med å forstå hvordan de brukes til å få tilgang til hendelsene i Kubernetes. Den første og grunnleggende metoden er å bruke den enkle Kubectl Get Event -kommandoen. "Get" -kommandoen i Kubernetes brukes til å få tilgang til en eller flere ressurser fra Kubernetes -systemet. Alle parametrene blir fulgt av “Get” -kommandoen for å få hendelsene i Kubernetes i henhold til kravet. Derfor får vi først hendelsene med den grunnleggende kommandoen som er gitt i følgende:
> Kubectl Få hendelser
Du kan utnytte ressurs -API for å få de nylige hendelsene ved å bruke denne kommandoen. Det viser alle de nylige hendelsene som skjedde over hele systemet.
Fremover vil vi vise deg hvordan du kan vise resultatet av "Get Event" -kommandoen i form av JSON -format. Kubectl lar deg skrive ut utgangen i ønsket format. Alt du trenger å gjøre er å definere utgangstypen. Her får vi tilgang til hendelsen i Kubernetes med "Get" -kommandoen og viser resultatet i JSON -format ved hjelp av følgende kommando:
> Kubectl Få hendelser -o json
Som du kan observere fra den gitte utgangen, er hendelsene oppført fra Kubernetes -miljøet i JSON -formatet. Dette er ganske enkelt, og du kan enkelt bruke det bare ved å utføre den forrige kommandoen i KUBECTL -kommandolinjeverktøyet.
Den neste metoden som vi vil vise deg er hvordan du får de filtrerte hendelsene fra Kubernetes. Så langt lærte vi hvordan vi får alle hendelsene i Kubernetes ved å bruke "Get Events" Kubectl -kommandoen og hvordan du viser utdataene i JSON -format. La oss nå se hvordan vi kan filtrere hendelsene i henhold til våre behov og bare se de nødvendige hendelsene. Filtrering av hendelsene er veldig enkelt; Som diskutert tidligere, må du bruke parameteren i henhold til dine behov etterfulgt av "Get Events" Kubectl -kommandoen. Vi bruker følgende kommando for å filtrere hendelsene i henhold til våre behov og bare vise de nødvendige hendelsene:
> Kubectl Få hendelser -Field -Selector -type!= Normalt
Når du bruker denne kommandoen, ser du bare hendelsene som ikke har en "normal" type. Siden hendelsene med den "normale" typen stort sett bare er støy og ikke gir noen meningsfull informasjon, kan vi hoppe over dem. Følgende gitt utdata viser hendelsene som ikke har den "normale" typen:
Hvordan få hendelsene for en spesifikk pod
Akkurat som om vi kan filtrere de eneste nødvendige hendelsene, kan vi også få tilgang til hendelsene bare for en spesifikk pod. For å gjøre det, la oss først liste ned alle belgene fra Kubernetes -miljøet ved hjelp av følgende kommando:
> kubectl få pods
Denne kommandoen lister ned alle belgene som er opprettet i Kubernetes -miljøet så langt:
Nå har vi en liste over alle belgene. Vi kan få tilgang til hendelsene for en spesifikk pod ved hjelp av pod -navnet. Vi bruker “Beskriv pod” -kommandoen etterfulgt av POD -navnet for å få hendelsene som er relatert til den pod. Eksempelkommandoen for å få tilgang til hendelsene for en spesifikk kommando er som følger:
> Kubeclt beskriv pod/pod-navn
Her representerer "Pod-Name" navnet på poden du trenger å se hendelsene i Kubernetes.
Her er et utvalg av en komplett kommando som viser alle hendelsene for en spesifikk pod:
> Kubectl beskriv pod/avhengig-envar--demo
Fra den gitte utgang. Følgende gitt utdata viser deg hendelsene for den avhengige-envars-demo pod:
Konklusjon
I denne artikkelen lærte vi om hendelsene i Kubernetes. Vi utforsket hva en hendelse er i Kubernetes -miljøet og hvordan det kan nås i Kubernetes -systemet. Vi lærte at det er mange åpen kildekode gratis metoder for å få tilgang til hendelsene i Kubernetes. Vi lærte også hvordan vi implementerer disse metodene ved hjelp av KUBECTL -kommandoene.