Toegang krijgen tot de Kubernetes-gebeurtenissen

Toegang Krijgen Tot De Kubernetes Gebeurtenissen



De gebeurtenissen in de Kubernetes-omgeving zijn een rijke bron van informatie waarmee een gebruiker kan begrijpen wat er binnen zijn services gebeurt. Het is een soort object dat specifiek vertelt wat er gebeurt in een container, node, cluster of pod. Welke wijzigingen er ook worden aangebracht in de Kubernetes-omgeving, er wordt een gebeurtenis tegen hen gegenereerd in het systeem. In deze gids laten we u zien wat een gebeurtenis is in het Kubernetes-systeem en hoe u de gebeurtenissen kunt krijgen met behulp van verschillende tools.

Wat is een evenement in Kubernetes?

Een Kubernetes-gebeurtenis is een object dat automatisch wordt gegenereerd tegen elke wijziging die plaatsvindt met bronnen zoals knooppunten, containers, clusters of pods in het Kubernetes-systeem. Het vertelt de gebruiker wat er gebeurt met de bronnen in het systeem, d.w.z. een container wordt gedood, een pod wordt gepland, implementatie wordt bijgewerkt, enz. Deze gebeurtenissen helpen bij het onderhouden van het Kubernetes-systeem en het uitvoeren van foutopsporing in de Kubernetes-omgeving. In deze blog gaan we ontdekken en bespreken hoe je toegang krijgt tot de events in de Kubernetes-omgeving.

Vereisten

Voordat u begint te leren hoe u de gebeurtenissen in Kubernetes kunt bekijken, moet u ervoor zorgen dat uw systeem aan alle basisbehoeften voldoet. Je moet het volgende hebben:







  • Ubuntu 20.04 of een andere nieuwste Ubuntu-versie
  • Virtuele machine geïnstalleerd in uw Linux/Unix-systeem
  • Minikube-cluster
  • Kubectl-opdrachtregelprogramma

Laten we nu verder gaan met het leren van de verschillende methoden om toegang te krijgen tot de Kubernetes-gebeurtenissen.



Start de Minikube-omgeving

Om de Kubernetes-omgeving te gebruiken en toegang te krijgen tot de gebeurtenissen die erin zijn gemaakt, moeten we toegang hebben tot minikube. Laten we daarom eerst de minikube starten met de volgende opdracht:



> start minikube





Dit begint bij de minikube-terminal waar u toegang heeft tot de Kubernetes-evenementen. Nu hebben we toegang tot of krijgen we de gebeurtenissen in Kubernetes

Hoe de gebeurtenissen in Kubernetes te bekijken

Er zijn veel verschillende manieren om toegang te krijgen tot de gebeurtenissen in Kubernetes of deze te bekijken. Hier beschrijven we deze methoden om u te helpen begrijpen hoe ze worden gebruikt om toegang te krijgen tot de gebeurtenissen in Kubernetes. De eerste en basismethode is om de eenvoudige opdracht kubectl get event te gebruiken. De opdracht 'get' in Kubernetes wordt gebruikt om toegang te krijgen tot een of meer bronnen van het Kubernetes-systeem. Alle parameters worden gevolgd door de opdracht 'get' om de gebeurtenissen in Kubernetes op te halen volgens de vereisten. Daarom krijgen we eerst de gebeurtenissen met het basiscommando dat hieronder wordt gegeven:



> kubectl gebeurtenissen ophalen

U kunt de resource-API gebruiken om de recente gebeurtenissen op te halen met deze opdracht. Het toont alle recente gebeurtenissen die in het hele systeem hebben plaatsgevonden.

In de toekomst laten we u zien hoe u het resultaat van de opdracht 'gebeurtenis ophalen' kunt weergeven in de vorm van JSON-indeling. Met de kubectl kunt u de uitvoer in het door u gewenste formaat afdrukken. Het enige dat u hoeft te doen, is het uitvoertype definiëren. Hier openen we de gebeurtenis in Kubernetes met de opdracht 'get' en geven we het resultaat weer in JSON-indeling met behulp van de volgende opdracht:

> kubectl gebeurtenissen ophalen -De json

  Tekstbeschrijving automatisch gegenereerd

Zoals u kunt zien aan de hand van de gegeven uitvoer, worden de gebeurtenissen weergegeven vanuit de Kubernetes-omgeving in JSON-indeling. Dit is vrij eenvoudig en u kunt het eenvoudig gebruiken door de vorige opdracht uit te voeren in uw kubectl-opdrachtregelprogramma.

De volgende methode die we u laten zien, is hoe u de gefilterde gebeurtenissen uit Kubernetes kunt halen. Tot nu toe hebben we geleerd hoe we alle gebeurtenissen in Kubernetes kunnen ophalen met behulp van de kubectl-opdracht 'gebeurtenissen ophalen' en hoe we de uitvoer in JSON-indeling kunnen weergeven. Laten we nu eens kijken hoe we de gebeurtenissen kunnen filteren op basis van onze behoeften en alleen de vereiste gebeurtenissen kunnen zien. Het filteren van de gebeurtenissen is heel eenvoudig; zoals eerder besproken, moet u de parameter gebruiken volgens uw behoeften, gevolgd door de kubectl-opdracht 'gebeurtenissen ophalen'. We gebruiken de volgende opdracht om de gebeurtenissen te filteren op basis van onze behoeften en alleen de vereiste gebeurtenissen weer te geven:

> kubectl get events –field-selector type ! =Normaal

Wanneer je dit commando gebruikt, zie je alleen de gebeurtenissen die geen “normaal” type hebben. Aangezien de gebeurtenissen met het type 'normaal' meestal alleen maar ruis zijn en geen zinvolle informatie geven, kunnen we ze overslaan. De volgende gegeven uitvoer toont de gebeurtenissen die niet het 'normale' type hebben:

  Tekstbeschrijving automatisch gegenereerd

De gebeurtenissen voor een specifieke pod ophalen

Net zoals we de enige vereiste evenementen kunnen filteren, hebben we ook alleen toegang tot de evenementen voor een specifieke pod. Om dat te doen, laten we eerst alle pods uit de Kubernetes-omgeving opsommen met behulp van de volgende opdracht:

> kubectl krijgt pods

Met deze opdracht worden alle pods weergegeven die tot nu toe in de Kubernetes-omgeving zijn gemaakt:

Nu hebben we een lijst met alle pods. We hebben toegang tot de gebeurtenissen voor een specifieke pod met behulp van de podnaam. We gebruiken de opdracht 'beschrijf pod' gevolgd door de podnaam om de gebeurtenissen op te halen die gerelateerd zijn aan die pod. De voorbeeldopdracht om toegang te krijgen tot de gebeurtenissen voor een specifieke opdracht is als volgt:

> kubeclt beschrijft pod / pod-naam

Hier vertegenwoordigt de 'podnaam' de naam van de pod waarvoor u de gebeurtenissen in Kubernetes moet zien.

Hier is een voorbeeld van een volledige opdracht die alle gebeurtenissen voor een specifieke pod weergeeft:

> kubectl beschrijft pod / afhankelijke-envars-demo

Uit de gegeven uitvoer is de naam van de eerste pod 'dependent-envars-demo' en hebben we toegang tot de gebeurtenissen voor die pod. De volgende gegeven uitvoer toont u de gebeurtenissen voor de afhankelijke-envars-demo pod:

  Tekstbeschrijving automatisch gegenereerd

Gevolgtrekking

In dit artikel leerden we over de gebeurtenissen in Kubernetes. We hebben onderzocht wat een gebeurtenis is in de Kubernetes-omgeving en hoe deze toegankelijk is in het Kubernetes-systeem. We hebben geleerd dat er veel open-source gratis methoden zijn om toegang te krijgen tot de gebeurtenissen in Kubernetes. We hebben ook geleerd hoe we die methoden kunnen implementeren met behulp van de kubectl-opdrachten.