En esta página, se proporciona una descripción general del desarrollo de Kubernetes en Cloud Code.
Usa Kubernetes Explorer en Cloud Code
El explorador de Kubernetes te permite acceder a información sobre tus clústeres, nodos, cargas de trabajo y mucho más, directamente desde tu IDE. También puedes establecer un contexto actual, transmitir y ver registros, abrir una terminal interactiva y buscar descripciones de recursos con Kubernetes Explorer.
![Explorador de Kubernetes de Cloud Code](https://cloud.google.com/static/code/docs/intellij/images/kubernetes-explorer-panel.png?hl=es)
Cloud Code usa el archivo kubeconfig predeterminado, ubicado en el directorio $HOME/.kube
en macOS/Linux o %USERPROFILE%\.kube
en Windows, para recuperar los recursos de Kubernetes. Puedes cambiar o agregar archivos Kubeconfig nuevos desde Kubernetes Explorer. Los archivos kubeconfig son archivos YAML
que contienen los detalles, el certificado y el token secreto de tu clúster de Kubernetes para
autenticarse en él.
Para usar un archivo kubeconfig que no sea el predeterminado, consulta la guía Cómo trabajar con archivos kubeconfig.
Accede a Kubernetes Explorer
Para ver y administrar tus recursos de Kubernetes, usa Kubernetes Explorer, al que puedes acceder desde el panel lateral ubicado a la derecha. También puedes 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.
Acciones básicas
Kubernetes Explorer se basa en kubectl
. Siempre que hayas configurado el archivo de configuración kubectl
para acceder a los clústeres, puedes usar Kubernetes Explorer para agregar clústeres, explorar todos los espacios de nombres, recursos y nodos disponibles, sin importar si están en el contexto activo o inactivo.
Las acciones generales disponibles de Kubernetes, a las que se puede acceder a través de sus íconos en el explorador de Kubernetes, son las siguientes:
Crea una nueva aplicación de Kubernetes a partir de una muestra
Actualiza el explorador
Abre la documentación de Kubernetes de Cloud Code en un navegador web
Las siguientes son acciones de depuración comunes adicionales de Kubernetes, a las que se puede acceder a través de sus íconos en el explorador de Kubernetes:
Ejecuta la configuración de ejecución y depuración actual.
Inicia la configuración de ejecución en modo de depuración.
Detiene una sesión de depuración activa.
Cómo copiar el nombre de un 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 él y elige Copiar nombre del recurso.
![Cómo copiar el nombre de un recurso con el menú contextual](https://cloud.google.com/static/code/docs/intellij/images/copy-resource-name.png?hl=es)
Actualiza recursos
El explorador de Kubernetes detecta cambios y se actualiza automáticamente para reflejar las actualizaciones. Para forzar la actualización de cualquier recurso de Kubernetes para recuperar su información más reciente, haz clic con el botón derecho en el recurso y elige Actualizar.
![Actualiza los pods con el menú contextual](https://cloud.google.com/static/code/docs/intellij/images/refresh-resource.png?hl=es)
![Botón de actualización de Kubernetes Explorer](https://cloud.google.com/static/code/docs/intellij/images/kubernetes-explorer-refresh.png?hl=es)
Describe recursos
Para mostrar los detalles de cualquier recurso que no sea de clúster, haz clic derecho en él y, luego, selecciona Describe. La información del recurso se presenta en el panel de la consola de Kubernetes Explorer.Para ver los detalles del recurso, también puedes hacer clic en cualquier recurso. Si tiene metadatos adjuntos, estos estarán disponibles en el panel Resource Details (Detalles del recurso) en Kubernetes Explorer.
Opciones de Skaffold
- Skaffold configuration: Te permite seleccionar un archivo de configuración
skaffold.yaml
. Se detectará automáticamente si tienes unskaffold.yaml
en tu proyecto. - Deployment profile: Te permite seleccionar un perfil de las opciones disponibles configuradas en el archivo
skaffold.yaml
. - Environment variables (Variables de entorno): Te permite configurar variables del entorno adicionales que se pasarán al proceso de implementación de Skaffold. Las marcas de Skaffold también se pueden configurar como variables de entorno a fin de usarlas en este campo. Consulta la documentación de referencia de la CLI de Skaffold para obtener una lista completa de las variables de entorno de Skaffold disponibles.
- Verbosity (Verbosidad): Te permite configurar el nivel de verbosidad de salida en
trace
,debug
,info
,warn
,error
ofatal
. El nivel de verbosidad predeterminado eswarn
.
Opciones de Kubernetes
Development Context: Representa el contexto de Kubernetes con el que se implementa 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 uno.
Si prefieres no implementar en el contexto actual, en la sección Deployment de la configuración de ejecución y depuración, puedes optar por lo siguiente:
- Deploy locally to a minikube cluster: inicia un clúster de Minikube administrado por Cloud Code para ejecutar la app y detiene el clúster después de que se detiene la implementación. Si un clúster de Minikube ya se encuentra en ejecución, Cloud Code usa el clúster de Minikube existente para la implementación.
Cambiar contexto e implementar en: Cambia el contexto actual en tu sistema al contexto que se especifica en la implementación.
Delete deployments when finished (Borrar las implementaciones cuando se terminen): Borra las implementaciones de Kubernetes cuando finaliza el proceso. Este es el comportamiento predeterminado. Como alternativa, puedes desactivar esta configuración para evitar que se borren las implementaciones.
Personaliza la configuración de inicio
Para configurar cómo se ejecuta tu aplicación, puedes personalizar el archivo skaffold.yaml
.
Cómo ver YAML remoto
Para ver el YAML de un recurso del clúster directamente desde Kubernetes Explorer. Navega a un recurso en Kubernetes Explorer, como un pod, haz clic con el botón derecho en el nombre del recurso y, luego, selecciona View Remote YAML.Se abrirá el archivo YAML correspondiente al recurso especificado en una nueva pestaña del editor.
Ver registros
Puedes transmitir y ver los registros de los recursos de Kubernetes en la consola de Kubernetes Explorer para supervisar su progreso.
Luego de que tu aplicación se compila y se ejecuta en modo de desarrollo o normal, puedes supervisar la transmisión de registros de la aplicación desde el IDE.
También puedes ver los registros de un servicio específico si navegas a Kubernetes Explorer.
Para seleccionar el recurso del que deseas ver los registros, como un pod, una implementación o un servicio, haz lo siguiente:
Haz clic con el botón derecho en el recurso y selecciona Transmitir registros. Como alternativa, puedes transmitir registros para contenedores individuales que se ejecutan en Pods.
Esto genera registros en la consola de Kubernetes Explorer.
Para ver el estado de los recursos de tu implementación, sigue estos pasos:
Estados del Pod, la implementación y el nodo: Estos recursos de Kubernetes tienen marcas de estado de color junto a sus etiquetas. El color rojo indica un estado de error, el amarillo indica inicio, finalización o advertencia y el verde, un buen estado.
Descripciones de recursos implementados: Puedes ejecutar
kubectl describe
en los recursos implementados para mostrar sus detalles. Para ello, haz clic derecho y selecciona Describe (Describir).
Cómo iniciar una terminal
En el caso de los pods y contenedores, puedes abrir una terminal interactiva haciendo clic con el botón derecho en el pod o contenedor y seleccionando Get terminal.
![Cómo abrir una terminal interactiva](https://cloud.google.com/static/code/docs/intellij/images/get-terminal.png?hl=es)
Acciones específicas del recurso
Kubernetes Explorer muestra clústeres, espacios de nombres, nodos, cargas de trabajo (como implementaciones, conjuntos de réplicas, pods y contenedores), servicios y entradas, configuraciones (como secretos y mapas de configuración) y almacenamiento (como volúmenes). Con Kubernetes Explorer, puedes realizar acciones únicas en algunos de estos recursos.
Puedes acceder a Kubernetes Explorer desde el panel lateral o ir a Tools > Cloud Code > Kubernetes > View Cluster Explorer.
Para mostrar los detalles de los recursos implementados, haz clic con el botón derecho en una etiqueta de recurso en Kubernetes Explorer y, luego, en Describe.
Clústeres
- Agrega un clúster de Google Kubernetes Engine: Agrega un clúster de GKE estándar o de Autopilot existente, o crea uno nuevo haciendo clic en + Add GKE Cluster en el explorador de Kubernetes.
Aparecerá el diálogo Add Cluster, en el que puedes elegir el proyecto y el clúster que deseas usar o crear uno nuevo.
Cuando termines, haz clic en Aceptar y accede al clúster que elegiste y a sus recursos subyacentes a través de Kubernetes Explorer.Set as current context: (Establece como contexto actual) Configura el clúster especificado como activo de modo que el contexto
kubectl
configurado acceda a este clúster de forma predeterminada.
Kubernetes Explorer 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 configurarlo como el contexto actual.
![Elige y configura un clúster activo de una lista de varios contextos con Kubernetes Explorer](https://cloud.google.com/static/code/docs/intellij/images/multiple-context.png?hl=es)
Espacios de nombres
Configurar como contexto actual: Configura un espacio de nombres como activo de modo que el contexto
kubectl
configurado acceda a este espacio de nombres de forma predeterminada.
Ten en cuenta que un contexto de Kubernetes es un atajo que te brinda acceso rápido a un espacio de nombres en tu clúster. Por lo general, los contextos se crean automáticamente cuando inicias un clúster de minikube o GKE. Si no ves la opción Establecer como contexto actual para un espacio de nombres determinado y deseas crear un contexto para él, usa el comando kubectl config set-context
en la terminal para establecer un contexto con el clúster, el usuario y el espacio de nombres que prefieras.
Pods
- Ver registros: Visualiza registros desde un pod en la consola de Kubernetes Explorer.
Obtén una terminal: Obtén una terminal para un pod en la consola de Kubernetes Explorer.
Además, los pods en ejecución tienen marcas de estado con colores junto a sus etiquetas:
- Rojo: El pod está en estado de error
- Amarillo: El pod se está iniciando o finalizando
- Verde: El pod está en funcionamiento
![Marca de verificación verde junto al pod que indica que está en buen estado](https://cloud.google.com/static/code/docs/intellij/images/kubernetes-explorer-healthy-pod.png?hl=es)
Contenedores
- Ver registros: Visualiza registros desde un contenedor en la consola de Kubernetes Explorer.
- Obtén una terminal: Obtén una terminal para un contenedor en la consola de Kubernetes Explorer.
![Transmite registros desde un contenedor mediante el menú que aparece cuando se hace clic con el botón derecho para generar registros en la consola de Kubernetes Explorer](https://cloud.google.com/static/code/docs/intellij/images/stream-container-logs.png?hl=es)
Implementaciones
Ver registros: Visualiza registros desde una implementación en la consola de Kubernetes Explorer.
Las implementaciones en vivo tienen marcas de estado con colores junto a sus etiquetas y recuentos de réplicas actuales o totales:
- Amarillo: La implementación no tiene una disponibilidad mínima o tiene problemas con las imágenes.
- Verde: La implementación está en buen estado y tiene una disponibilidad mínima.
![Íconos de implementación verdes que indican un estado correcto](https://cloud.google.com/static/code/docs/intellij/images/deploy-status-green.png?hl=es)
Nodos
Los nodos del clúster tienen marcas de estado con colores junto a sus nombres:
- Amarillo: El nodo tiene un problema de recursos, como la disponibilidad del disco o la memoria.
- Verde: El nodo está en buen estado.
Definiciones de recursos personalizados (CRD)
Kubernetes Explorer muestra todas las definiciones de recursos personalizados (CRD) instaladas y disponibles en el clúster:
![Lista de definiciones de recursos personalizados en el explorador](https://cloud.google.com/static/code/docs/intellij/images/crd-list.png?hl=es)
¿Qué sigue?
- Comienza a usar Cloud Code para IntelliJ para Kubernetes. Para ello, crea e implementa una aplicación de Kubernetes a partir de una muestra de código.
- Usa la sincronización de archivos y la recarga en caliente para acelerar el desarrollo.
- Cómo depurar tu aplicación en Cloud Code