Descripción general de Kubernetes en Cloud Code para IntelliJ

En esta página se ofrece una descripción general del desarrollo de Kubernetes en Cloud Code.

Usar el explorador de Kubernetes en Cloud Code

El explorador Kubernetes te permite acceder a información sobre tus clústeres, nodos, cargas de trabajo y más, directamente desde tu IDE. También puedes definir un contexto actual, transmitir y ver registros, abrir una terminal interactiva y buscar descripciones de recursos con el Explorador de Kubernetes.

Explorador de Kubernetes de Cloud Code

Cloud Code usa el archivo kubeconfig predeterminado, que se encuentra en el directorio $HOME/.kube en macOS o Linux, o en %USERPROFILE%\.kube en Windows, para recuperar recursos de Kubernetes. Puedes cambiar o añadir archivos Kubeconfig desde el explorador de Kubernetes. Los archivos kubeconfig son archivos YAML que contienen los detalles del clúster de Kubernetes, el certificado y el token secreto para autenticarte en el clúster.

Para usar un archivo kubeconfig que no sea el predeterminado, consulta la guía Usar archivos kubeconfig.

Acceder al explorador de Kubernetes

Para ver y gestionar tus recursos de Kubernetes, usa el explorador de Kubernetes, al que puedes acceder desde el panel lateral de la derecha. También se puede acceder a él mediante Herramientas > Cloud Code > Kubernetes > Ver explorador de clústeres.

Cuando inicias una sesión de desarrollo o depuración, la sección Sesiones de desarrollo muestra la vista de registro estructurado.

Panel Sesiones de desarrollo

Acciones básicas

El explorador de Kubernetes se basa en kubectl. Siempre que hayas configurado tu archivo de configuración kubectl para acceder a tus clústeres, puedes usar el explorador Kubernetes para añadir clústeres, consultar todos los espacios de nombres, recursos y nodos disponibles de tus clústeres, independientemente de si están en el contexto activo o inactivo.

Las acciones generales de Kubernetes disponibles, a las que se puede acceder a través de sus iconos en el explorador Kubernetes, son las siguientes:

  • Icono de nueva aplicación de Kubernetes a partir de un ejemplo Crear una aplicación de Kubernetes a partir de un ejemplo
  • Icono de actualizar explorador Actualiza el Explorador
  • Icono de Documentos Abrir la documentación de Cloud Code Kubernetes en un navegador web

Estas son algunas acciones de depuración habituales de Kubernetes a las que se puede acceder a través de sus iconos en el explorador Kubernetes:

  • Icono de Run Ejecuta la configuración de ejecución/depuración actual.
  • Icono de depuración Inicia la configuración de ejecución en modo de depuración.
  • Icono de detener depuración Detener una sesión de depuración activa.

Copiar un nombre de recurso

Puedes copiar cualquier nombre de recurso de Kubernetes en el portapapeles (incluidos los nombres de contenedores y clústeres). Para copiar el nombre de un recurso, haz clic con el botón derecho en el recurso y elige Copiar nombre de recurso.

Copiar un nombre de recurso con el menú del botón derecho

Actualizar recursos

El explorador de Kubernetes monitoriza los cambios y se actualiza automáticamente para reflejar las novedades. Para forzar la actualización de cualquier recurso de Kubernetes y obtener su información más reciente, haz clic con el botón derecho en el recurso y elige Actualizar.

Actualizar pods con el menú del botón derecho

También puedes forzar la actualización de todo el explorador Kubernetes con el botón de actualización del explorador Kubernetes. Botón de actualización del explorador de Kubernetes

Describe los recursos

Para ver los detalles de cualquier recurso que no sea de clúster, haz clic con el botón derecho en el recurso y, a continuación, selecciona Describir. La información del recurso se muestra en el panel de la consola Explorador de Kubernetes.

Opción Describir disponible al hacer clic con el botón derecho en un recurso adecuado del explorador de Kubernetes y elegir Describir

Para ver los detalles de un recurso, también puedes hacer clic en él. Si tiene metadatos adjuntos, estos estarán disponibles en el panel Detalles del recurso del Explorador de Kubernetes.

Ver los metadatos de los recursos en el panel Detalles del recurso, disponible en la segunda mitad del Explorador de Kubernetes

Opciones de Skaffold

  • Configuración de Skaffold: selecciona un archivo de configuración skaffold.yaml. Se detectará automáticamente si tienes un skaffold.yaml en tu proyecto.
  • Perfil de implementación: selecciona un perfil de las opciones disponibles configuradas en el archivo skaffold.yaml.
  • Variables de entorno: te permite configurar variables de entorno adicionales que se transfieren al proceso de implementación de Skaffold. Las marcas de Skaffold también se pueden configurar como variables de entorno para usarlas en este campo. Consulta la documentación de referencia de la CLI de Skaffold para ver una lista completa de las variables de entorno de Skaffold disponibles.
  • Verbosidad: te permite definir el nivel de verbosidad de los resultados en trace, debug, info, warn, error o fatal. El nivel de detalle predeterminado es warn.

Opciones de Kubernetes

  • Contexto de despliegue: representa el contexto de Kubernetes con el que se despliega tu aplicación. El comportamiento predeterminado, si no se especifica un contexto de implementación, es implementar en el contexto del sistema actual, si existe.

    Si prefieres no implementar en el contexto actual, en la sección Implementación de los ajustes Ejecutar/Depurar, puedes hacer lo siguiente:

    • Desplegar localmente en un clúster de minikube: inicia un clúster de minikube gestionado por Cloud Code para ejecutar tu aplicación y detiene el clúster cuando se detiene el despliegue. Si ya se está ejecutando un clúster de minikube, Cloud Code usa el clúster de minikube para el despliegue.
    • Cambiar contexto e implementar en: cambia el contexto actual de tu sistema al contexto especificado al implementar.

      Seleccionar el contexto de despliegue de Kubernetes en una configuración de Kubernetes de Cloud Code

  • Eliminar las implementaciones cuando termine: elimina las implementaciones de Kubernetes cuando finaliza el proceso. Este es el comportamiento predeterminado. También puedes activar o desactivar este ajuste para evitar que se eliminen los despliegues.

Personalizar la configuración de lanzamiento

Para configurar cómo se ejecuta tu aplicación, puedes personalizar el archivo skaffold.yaml.

También puedes configurar el lanzamiento en Configuraciones de ejecución/depuración. Para editar tus configuraciones, ve a Ejecutar > Editar configuraciones.

Ver YAML remoto

Para ver el archivo YAML de un recurso de tu clúster, ve al explorador de Kubernetes. Vaya a un recurso en el Explorador de Kubernetes, como un pod, haga clic con el botón derecho en el nombre del recurso y, a continuación, seleccione Ver YAML remoto.

El archivo YAML correspondiente al recurso especificado se abre en una nueva pestaña del editor.

Para ver el archivo YAML de un pod, haz clic con el botón derecho en su etiqueta en el Explorador de Kubernetes y elige "Ver YAML remoto".

Ver registros

Puedes transmitir y ver registros de recursos de Kubernetes en la consola del explorador de Kubernetes para monitorizar su progreso.

Una vez que tu aplicación se compile y se ejecute en modo normal o de desarrollo, podrás monitorizar los registros que se transmitan desde tu aplicación en el IDE.

Ver registros transmitidos de la aplicación Hello World de Java

También puedes ver los registros de un servicio específico desplazándote hasta el Explorador de Kubernetes.

Para seleccionar el recurso del que quieras ver los registros, como un pod, un despliegue o un servicio, sigue estos pasos:

  1. Haz clic con el botón derecho en el recurso y selecciona Registros de streaming. También puedes transmitir registros de contenedores concretos que se ejecutan en pods.

    Esto genera registros en la consola del Explorador de Kubernetes.

Para ver el estado de los recursos de tu implementación, sigue estos pasos:

  • Estados de pods, despliegues y nodos: estos recursos de Kubernetes tienen marcas de estado de colores junto a sus etiquetas: rojo para el estado fallido, amarillo para el estado de inicio, finalización o advertencia, y verde para el estado correcto o deseado.

    La marca de verificación verde junto a la etiqueta del pod indica que el estado es correcto.

  • Descripciones de los recursos implementados: puedes ejecutar un kubectl describe en tus recursos implementados para ver sus detalles. Para ello, haz clic con el botón derecho y selecciona Describir.

    Opción Describir disponible al hacer clic con el botón derecho en un recurso adecuado del panel Explorador de Kubernetes y elegir Describir

Abrir una terminal

En el caso de los pods y los contenedores, puedes abrir una terminal interactiva haciendo clic con el botón derecho en el pod o el contenedor y seleccionando Obtener terminal.

Abrir una terminal interactiva

Acciones específicas de recursos

El Explorador de Kubernetes muestra clústeres, espacios de nombres, nodos, cargas de trabajo (como despliegues, conjuntos de réplicas, pods y contenedores), servicios y entradas, configuraciones (como secretos y mapas de configuración) y almacenamiento (como volúmenes). Con el explorador de Kubernetes, puedes realizar acciones únicas en algunos de estos recursos.

Puedes acceder al explorador de Kubernetes desde el panel lateral o ir a Herramientas > Cloud Code > Kubernetes > Ver explorador de clústeres.

Panel Explorador de Kubernetes abierto mediante la pestaña de la barra de tareas de la derecha

Para ver los detalles de los recursos implementados, haz clic con el botón derecho en una etiqueta de recurso del Explorador de Kubernetes y, a continuación, haz clic en Describe (Describir).

Opción Describir disponible al hacer clic con el botón derecho en un recurso adecuado del panel Explorador de Kubernetes y elegir Describir

Clústeres

  • Añadir un clúster de Google Kubernetes Engine: añade un clúster de GKE Standard o Autopilot que ya tengas, o crea uno nuevo haciendo clic en + Add GKE Cluster (Añadir clúster de GKE) en el explorador de Kubernetes.

Aparecerá el cuadro de diálogo Añadir clúster, donde podrás elegir el proyecto y el clúster que quieras usar o crear un clúster.

Cuando lo hayas hecho, haz clic en Aceptar y accede al clúster que hayas elegido y a sus recursos subyacentes a través del explorador de Kubernetes.

Añadir un clúster de GKE con el cuadro de diálogo Explorador de Kubernetes, que incluye campos para el proyecto y el nombre del clúster

  • Definir como contexto actual: define el clúster especificado como activo para que el contexto kubectl configurado acceda a este clúster de forma predeterminada.

    Definir un clúster como contexto actual con el explorador de Kubernetes

El explorador de Kubernetes se actualiza automáticamente y verás el símbolo de Kubernetes junto al clúster correspondiente.

Si un clúster tiene varios contextos configurados, podrás elegir uno de los contextos disponibles para definirlo como contexto actual.

Elegir y definir un clúster activo de una lista de varios contextos con el explorador de Kubernetes

Espacios de nombres

  • Definir como contexto actual: define un espacio de nombres como activo para que el contexto kubectl configurado acceda a este espacio de nombres de forma predeterminada.

    Definir el espacio de nombres como contexto actual mediante el menú del botón derecho

Si esta acción se realiza correctamente, el Explorador de Kubernetes se actualizará automáticamente y verás un asterisco junto al espacio de nombres para indicar que forma parte del contexto actual.

Ten en cuenta que un contexto de Kubernetes es un acceso directo que te permite acceder rápidamente a un espacio de nombres de tu clúster. Normalmente, los contextos se crean automáticamente cuando inicias un clúster de minikube o GKE. Si no ves la opción Set as current context (Definir como contexto actual) para un espacio de nombres determinado y quieres crear un contexto para él, usa el comando kubectl config set-context en tu terminal para definir un contexto con el clúster, el usuario y el espacio de nombres que prefieras.

Pods

  • Ver registros: Ver registros de un pod en la consola del Explorador de Kubernetes.
  • Obtener terminal: Obtener terminal de un pod en la consola del explorador de Kubernetes.

    Además, los pods en ejecución tienen marcas de estado de color junto a sus etiquetas:

    • Rojo: el pod está en un estado de error
    • Amarillo: el pod se está iniciando o terminando
    • Verde: el pod está en buen estado y en ejecución
Marca de verificación verde junto a la indicación de que el pod está en buen estado

Contenedores

  • Ver registros: Ver registros de un contenedor en la consola del Explorador de Kubernetes.
  • Obtener terminal: Obtener terminal de un contenedor en la consola Explorador de Kubernetes.
Transmitir registros de un contenedor mediante su menú contextual para mostrar los registros en la consola del Explorador de Kubernetes

Despliegues

  • Ver registros: Ver registros de una implementación en la consola del Explorador de Kubernetes.

    Las implementaciones activas tienen marcas de estado de color junto a sus etiquetas y recuentos de réplicas actuales y totales:

    • Amarillo: la implementación no tiene la disponibilidad mínima o tiene problemas con las imágenes.
    • Verde: el despliegue está en buen estado y ha tenido una disponibilidad mínima.
Iconos de implementación verdes que indican que el estado es correcto

Nodos

Los nodos de tu clúster tienen marcas de estado de color junto a sus nombres:

  • Amarillo: el nodo tiene un problema con los recursos, como la disponibilidad de memoria o de disco.
  • Verde: el nodo está en buen estado.

Definiciones de recursos personalizadas (CRDs)

En el explorador de Kubernetes se muestran todas las definiciones de recursos personalizados (CRDs) instaladas y disponibles en tu clúster:

Lista de definiciones de recursos personalizadas en el Explorador

Siguientes pasos

Obtener asistencia

Para enviar comentarios o informar de un problema en tu IDE de IntelliJ, ve a Herramientas > Cloud Code > Ayuda o información > Enviar comentarios o informar de un problema para informar de un problema en GitHub.