Cómo acceder a los eventos de Kubernetes

Cómo acceder a los eventos de Kubernetes
Los eventos en el entorno de Kubernetes son una rica fuente de información que permite a un usuario comprender lo que está sucediendo dentro de sus servicios. Es un tipo de objeto que dice específicamente lo que está sucediendo en un contenedor, nodo, clúster o POD. Cualesquiera que sean los cambios que se realicen en el entorno de Kubernetes, se genera un evento contra ellos en el sistema. En esta guía, lo guiaremos sobre lo que es un evento en el sistema Kubernetes y cómo obtener los eventos con la ayuda de diferentes herramientas.

¿Qué es un evento en Kubernetes??

Un evento de Kubernetes es un objeto que se genera automáticamente con cualquier cambio que ocurra con recursos como nodos, contenedores, grupos o vainas en el sistema Kubernetes. Le dice al usuario qué está sucediendo con los recursos en el sistema, yo.mi. Se mata un contenedor, se programa una cápsula, se actualiza la implementación, etc. Estos eventos ayudan a mantener el sistema Kubernetes y realizar la depuración en el entorno de Kubernetes. En este blog, descubriremos y discutiremos cómo acceder a los eventos en el entorno de Kubernetes.

Requisitos previos

Antes de comenzar a aprender a ver los eventos en Kubernetes, asegúrese de que su sistema satisfaga todas las necesidades básicas. Debes tener lo siguiente:

  • Ubuntu 20.04 o cualquier otra última versión de Ubuntu
  • Máquina virtual instalada en su sistema Linux/UNIX
  • Clúster de minikube
  • Herramienta de línea de comandos kubectl

Ahora, pasemos a aprender los diferentes métodos para acceder a los eventos de Kubernetes.

Comience el entorno de Minikube

Para usar el entorno de Kubernetes y acceder a los eventos que se crean en él, necesitamos tener acceso a Minikube. Por lo tanto, iniciemos primero el minikube usando el siguiente comando:

> Minikube Start

Esto comienza en la terminal de Minikube donde puede acceder a los eventos de Kubernetes. Ahora, podemos acceder o obtener los eventos en Kubernetes

Cómo ver los eventos en Kubernetes

Hay muchas formas diferentes de acceder o ver los eventos en Kubernetes. Aquí, describiremos estos métodos para ayudarlo a comprender cómo se utilizan para acceder a los eventos en Kubernetes. El primer y básico método es usar el comando simple de evento Kubectl Get. El comando "Get" en Kubernetes se utiliza para acceder a uno o más recursos desde el sistema Kubernetes. Todos los parámetros son seguidos por el comando "obtener" para obtener los eventos en Kubernetes de acuerdo con el requisito. Por lo tanto, primero obtenemos los eventos con el comando básico que se da en lo siguiente:

> kubectl obtener eventos

Puede aprovechar la API de recursos para obtener los eventos recientes utilizando este comando. Muestra todos los eventos recientes que ocurrieron en todo el sistema.

En el futuro, le mostraremos cómo puede mostrar el resultado del comando "Get Event" en forma de formato JSON. El kubectl le permite imprimir la salida en su formato deseado. Todo lo que tienes que hacer es definir el tipo de salida. Aquí, accedemos al evento en Kubernetes con el comando "Get" y mostramos el resultado en formato JSON con la ayuda del siguiente comando:

> Kubectl Get Events -O JSON

Como puede observar en la salida dada, los eventos se enumeran desde el entorno Kubernetes en el formato JSON. Esto es bastante simple, y puede usarlo fácilmente simplemente ejecutando el comando anterior en su herramienta de línea de comandos Kubectl.

El siguiente método que le mostraremos es cómo obtener los eventos filtrados de Kubernetes. Hasta ahora, aprendimos a obtener todos los eventos en Kubernetes utilizando el comando Kubectl "Obtener eventos" y cómo mostrar la salida en formato JSON. Ahora, veamos cómo podemos filtrar los eventos de acuerdo con nuestras necesidades y solo ver los eventos requeridos. Filtrar los eventos es muy simple; Como se discutió anteriormente, debe usar el parámetro de acuerdo con sus necesidades seguido del comando "Get Events" Kubectl. Utilizamos el siguiente comando para filtrar los eventos de acuerdo con nuestras necesidades y solo mostramos los eventos requeridos:

> Kubectl Get Events -field -selector Type!= Normal

Cuando usa este comando, solo ve los eventos que no tienen un tipo "normal". Dado que los eventos con el tipo "normal" son en su mayoría ruido y no proporcionan información significativa, podemos omitirlos. La siguiente salida dada muestra los eventos que no tienen el tipo "normal":

Cómo obtener los eventos para una cápsula específica

Al igual que podemos filtrar los únicos eventos requeridos, también podemos acceder a los eventos solo para una cápsula específica. Para hacer eso, primero enumeremos todas las vainas del entorno Kubernetes con la ayuda del siguiente comando:

> kubectl consigue vainas

Este comando enumera todos los pods creados en el entorno Kubernetes hasta ahora:

Ahora, tenemos una lista de todos los vainas. Podemos acceder a los eventos para una cápsula específica utilizando el nombre de la cápsula. Usamos el comando "Describe pod" seguido del nombre de la cápsula para obtener los eventos relacionados con ese pod. El comando de muestra para acceder a los eventos para un comando específico es el siguiente:

> kubeClt describe pod/pod-name

Aquí, el "Nombre de la cápsula" representa el nombre del pod para el que necesita ver los eventos en Kubernetes.

Aquí hay una muestra de un comando completo que muestra todos los eventos para una cápsula específica:

> kubectl describir pod/dependiente-envars-demo

Desde la salida dada, el nombre de la primera cápsula es "dependiente-envars-demo" y accedemos a los eventos para ese pod. La siguiente salida dada le muestra los eventos para la vaina dependiente-envars-demo:

Conclusión

En este artículo, aprendimos sobre los eventos en Kubernetes. Exploramos qué es un evento en el entorno de Kubernetes y cómo se puede acceder en el sistema Kubernetes. Aprendimos que hay muchos métodos gratuitos de código abierto para acceder a los eventos en Kubernetes. También aprendimos cómo implementar esos métodos utilizando los comandos Kubectl.