Ejecuta y desarrolla una aplicación

Ahora que ya está todo configurado, puedes optar por la ejecución habitual de la aplicación o iniciar un ciclo de iteración de desarrollo en tu IDE para propagar cualquier cambio realizado en la fuente y las dependencias de tu aplicación activa. En esta página, se usa la app de muestra del libro de visitas para ilustrar la experiencia de ejecución y desarrollo de Kubernetes.

Selecciona una acción de ejecución

Ejecuta en Kubernetes

Para la ejecución regular de tu aplicación, puedes usar el objetivo de ejecución de Kubernetes "Run on Kubernetes" ícono de acción de ejecutar, para compilar la imagen e implementar el proyecto en tu clúster de Kubernetes. No se supervisan las fuentes ni las dependencias del proyecto, y el proceso de Skaffold finaliza una vez que se completan la imagen y la implementación.

Implementación habitual mediante la acción de ejecutar

Para obtener más información sobre cómo personalizar la implementación, consulta las opciones de configuración disponibles.

Desarrollo continuo en Kubernetes

Haz clic en la acción “Develop on Kubernetes” (Desarrollar en Kubernetes) ícono de acción de ejecutar para iniciar el ciclo de desarrollo en tu clúster de Kubernetes. Una vez que se inicia el ciclo de desarrollo, Cloud Code, mediante Skaffold, compila una imagen para el proyecto y, luego, la etiqueta, la envía al repositorio configurado y usa kubectl a fin de implementar los manifiestos de Kubernetes del proyecto.

Iniciar el ciclo de desarrollo del clúster de Kubernetes

Para obtener más información sobre cómo personalizar la implementación, consulta las opciones de configuración disponibles.

Vista previa de la app implementada

  1. Una vez que hagas clic en el botón Ejecutar en tu acción de ejecución preferida, podrás ver los registros de aplicaciones entrantes en la ventana de salida.

    Una vez que se inicie la implementación, verás la lista de puertos reenviados para tu aplicación implementada.

    Visualizar registros transmitidos desde la aplicación de Kubernetes

  2. Una vez que la implementación se complete de forma correcta, se te ofrecerá una notificación que indica que ahora puedes acceder a tu servicio mediante URL locales. Haz clic en "View" para abrir Event Log.

    La notificación que indica la URL para acceder a la aplicación publicada ahora está disponible en el registro de eventos.

    En el Event log, busca el puerto en el que se entrega tu aplicación. Haz clic en el vínculo para abrir el navegador con la aplicación en ejecución.

  3. Vea la aplicación recién implementada.

    Ejecución de la app del libro de visitas en localhost:8080

Cómo ver registros

Si bien puedes ver una transmisión en vivo de los registros de los pods en ejecución en la salida de la terminal mientras desarrollas y ejecutas la aplicación, también puedes ver los registros de un Pod específico si navegas hacia el explorador de Kubernetes.

Para ver los registros de un pod específico, sigue estos pasos:

  1. Navega a Kubernetes Explorer. Se puede acceder desde el panel lateral ubicado a la derecha o mediante Herramientas > Cloud Code > Kubernetes > Ver explorador de clústeres.

    Panel de Kubernetes Explorer abierto mediante la pestaña que se encuentra en la barra de tareas del lado derecho

  2. Selecciona el pod del que deseas ver los registros.

  3. Haz clic con el botón derecho en el pod y selecciona Stream Logs (Transmitir registros). Como alternativa, puedes transmitir registros para contenedores individuales que se ejecutan en pods.

    Esto generará registros en la consola de Kubernetes Explorer.

    Transmite registros desde un pod mediante el menú que aparece cuando se hace clic con el botón derecho para generar registros en la consola de Kubernetes Explorer

Agrega funciones nuevas durante el desarrollo en Kubernetes

Si comenzaste un ciclo de iteración de desarrollo con "Develop on Kubernetes" y agregaste más características a tu proyecto, verás cómo estos cambios se implementan en tu clúster de Kubernetes sin detener y quitar la implementación, compilar y etiquetar de forma manual la imagen o actualizar el clúster

Si estás siguiendo la app del libro de visitas, haz lo siguiente:

  1. Abre el archivo “FrontendController.java” de src/main/java/cloudcode/guestbook/frontend y agrega este extremo nuevo a la clase FrontendController:

     @RequestMapping("/greeting")
     @ResponseBody
     public String greeting(@RequestParam(value="name", defaultValue="World") String name) {
        return String.format("Hello from Kubernetes with IntelliJ, %s!", name);
     }
     ```
    
  2. Agrega las importaciones necesarias para las anotaciones nuevas, RequestMapping y ResponseBody.

  3. Guarda los cambios (Ctrl/Cmd S) o compila el proyecto (usa el menú Build (Compilar) > Build Project (Compilar proyecto).

    Puedes mirar el progreso y los registros de la implementación en la ventana de la consola. Cuando se propaguen los cambios, visita la nueva URL del extremo a fin de confirmar las actualizaciones: localhost:8080/greeting.

    Visualiza el extremo recién creado en un navegador

  4. Cuando termines, haz clic en el botón Detener para finalizar la sesión de desarrollo continuo. Con esto, el complemento borra todos los recursos de Kubernetes que se usaron para la sesión de implementación.

Visualiza los detalles de recursos

Para realizar un seguimiento del estado de los recursos de Kubernetes, puedes usar el explorador de Kubernetes, al que puedes acceder desde el panel lateral ubicado a la derecha. También puedes acceder a él mediante Tools (Herramientas) > Cloud Code (Cloud Code) > Kubernetes (Kubernetes) > View Cluster Explorer (Ver explorador de clústeres).

Panel de Kubernetes Explorer abierto mediante la pestaña que se encuentra en la barra de tareas del lado derecho

Con Kubernetes Explorer, puede acceder a la información sobre los clústeres, nodos, cargas de trabajo y mucho más, así como establecer un contexto activo, transmitir y ver registros, y buscar descripciones de recursos.

De forma conveniente, puedes ejecutar un kubectl describe en tus recursos implementados a fin de mostrar sus detalles. Para ello, haz clic con el botón derecho sobre su etiqueta dentro del explorador de Kubernetes y elige Describe (Describir).

Opción de descripción disponible cuando se hace clic con el botón derecho en un recurso apropiado dentro del panel de Kubernetes Explorer y se selecciona Describe (Describir)

Configuración

Cuando usas las opciones de configuración de ejecución “Run on Kubernetes” (Ejecutar en Kubernetes) y “Develop on Kubernetes” (Desarrollar en Kubernetes), puedes personalizar tu implementación mediante la configuración disponible. Para acceder a ellas, selecciona la configuración de ejecución del menú desplegable y elige “Edit Configurations” (Editar opciones de configuración).

  • Opciones de Skaffold
    • Skaffold configuration (Configuración de Skaffold): Te permite seleccionar un archivo de configuración llamado “skaffold.yaml”. Si tu proyecto ya tiene uno, se detectará de forma automática.
    • Deployment profile (Perfil de implementación): 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 o fatal. El nivel de verbosidad predeterminado es warn.
  • Opciones de Kubernetes
    • Development Context (Contexto de implementación): Representa el contexto de Kubernetes con el que se implementará tu aplicación. El comportamiento predeterminado es implementar en el contexto actual del sistema. De forma alternativa, puedes optar por implementar en un contexto fijo si seleccionas “Switch context and deploy to” (Cambiar contexto y, también, implementar en), que se encuentra en la sección “Deployment” (Implementación) de “Run/Debug settings” (Configuración de ejecución y depuración). Esta opción cambiará el contexto actual en tu sistema al contexto que se especifica en la implementación.Selecciona el contexto de implementación de Kubernetes en una configuración de ejecución de Cloud Code
    • 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.
  • Opciones de almacenamiento de imágenes de contenedor
  • Configuración de compilación

Obtén asistencia

Para enviar comentarios, informa problemas en GitHub o haz preguntas en Stack Overflow.