Ejecutar una app de Kubernetes

En esta página, se muestra cómo comenzar a usar Cloud Code con rapidez.

Configurarás una nueva aplicación de Kubernetes con una plantilla de inicio de “Hello World”, creará un clúster, ejecutarás tu aplicación en este clúster, depurar tu código en ejecución, verás registros de tu aplicación activa y conectarás un terminal al contenedor en ejecución.

Crea una app nueva de Hello World con Cloud Code

Antes de comenzar

Si deseas usar Google Cloud, deberás crear o seleccionar un proyecto de Google Cloud y habilitar la facturación en tu proyecto.

Instala Cloud Code

  1. Si aún no lo hiciste, instala Visual Studio Code en tu máquina.
  2. Para todas las plataformas de Cloud, instala el cliente de Docker (autenticado con tu registro de Docker) en PATH de tu máquina (su carpeta de instalación debe estar visible debajo de un directorio en tu PATH).

    Cloud Code instala de manera automática kubectl, Skaffold y el SDK de Cloud.

  3. Instala Cloud Code mediante una de las siguientes opciones:

    • Abre VS Code e instala Cloud Code.
    • Abre Visual Studio Code en tu máquina. Usa elExtensiones vistaÍcono de extensión en VS Code (el ícono cuadrado debe estar disponible en la barra de tareas del lado izquierdo), busca y haz clic en el botónCloud Code extensión y, luego, haga clic enInstala las rutas "a GCP".

    Cuando finalice la instalación, verás la página de bienvenida de Cloud Code y una colección de plantillas integradas en las apps de inicio, que puedes usar para configurar una aplicación nueva con rapidez.

    Página de bienvenida de Cloud Code

    Además, la barra de estado de Cloud Code, que incluye acciones comunes, ahora está disponible dentro de la barra de estado de VS Code.

    Barra de estado de Cloud Code

Crea una aplicación

  1. Desde la paleta de comandos (Cmd/Ctrl+Mayúscula+P), ejecuta Cloud Code: Aplicación nueva{/1. }, selecciona Aplicación de Kubernetes y, luego, una aplicación de Hello World en el idioma que prefieras.

    Por ejemplo, si seleccionas Node.js: Hello World, se crea una app de Hello World para Node.js.

  2. Guarda la nueva aplicación.

    Una notificación confirma que se creó tu aplicación y que se abre una ventana nueva con tu aplicación.

Crea un clúster de GKE

Para crear un clúster estándar de Google Kubernetes Engine (GKE), sigue estos pasos:

  1. Para abrir el explorador de Google Kubernetes Engine, haz clic en el ícono de Cloud Code - Kubernetes Ícono de Kubernetes Explorer en la barra de actividad de VS Code a la izquierda.
  2. Si aún no has accedido, para autenticarte con el SDK de Cloud, haz clic en Acceder aquí para acceder al SDK de Google Cloud.
  3. Para crear un clúster de GKE nuevo, en el encabezado de GKE Explorer, haz clic en + (disponible cuando se desplaza el mouse sobre él).
  4. Asegúrate de crear el clúster en tu proyecto predeterminado.
  5. Completa los campos del asistente de creación de clústeres y, luego, haz clic en Crear clúster.

    En este ejemplo, se configura el ID del proyecto con el botón predeterminado del ID del proyecto, la zona se establece como us-central1-a y el nombre del clúster se define como my-first-cluster.

    La creación del clúster tarda unos minutos. Una vez creado tu clúster, aparecerá en la vista GKE Explorer Ícono de Kubernetes Explorer.

    Crea un clúster nuevo con GKE Explorer

Ejecuta la app

Ejecuta una ejecución de prueba de tu configuración

Sigue estos pasos para comprobar la validez de la configuración de tu app:

  1. Abre el archivo de configuración que deseas validar en tu IDE (para la app de Hello World, los archivos de configuración se encuentran en la carpeta kubernetes-manifests).
  2. Usa Cloud Code: Configuración actual de prueba para la validación del lado del servidor o Cloud Code: Configuración actual de prueba para la validación del lado del cliente desde Paleta de comandos (a la que se puede acceder desde el menú Administrar Ícono Administrar)

    Esto ejecuta kubectl apply -f dry-run=server (o kubectl apply -f dry-run=client, para la opción Cliente) y muestra una validación exitosa (o un mensaje de error, si tu archivo de configuración no es válido) como una notificación de aviso. las rutas "a GCP".

    Comandos de prueba enumerados desde la paleta de comandos y la configuración actual de prueba para la validación del servidor seleccionada

Ejecuta y visualiza tu aplicación

Ahora que ya está todo listo, puedes ejecutar tu aplicación y verla en vivo. Cloud Code observa el sistema de archivos en busca de cambios para que puedas editar y volver a ejecutar la app casi en tiempo real.

Para ejecutar tu aplicación, sigue estos pasos:

  1. Usa la barra de estado de Cloud Code y selecciona Run on Kubernetes (Ejecutar en Kubernetes).
  2. Confirma si deseas usar el contexto de clúster actual o cambiar uno diferente.
  3. Si se te solicita, elige un registro de imágenes para enviar las imágenes.

    Aparecerá una ventana de resultados en la que puedes seguir el progreso de tu aplicación en ejecución. También verás una transmisión en vivo de los registros de los pods en ejecución en el resultado de la terminal.

  4. Una vez que tu aplicación se ejecuta en Kubernetes, la ventana de resultados muestra una dirección IP. A fin de usar esta dirección IP vinculada para acceder a tu aplicación, presiona Ctrl/Cmd + clic.

    Ejecuta la app de Hello World

Sugerencias para solucionar problemas

Si usas un clúster preexistente, para obtener credenciales de clúster y agregar tu clúster a kubectl, ejecuta el siguiente comando:

 gcloud container clusters get-credentials ${CLUSTER} --zone=${ZONE}
 

Como alternativa, puedes configurar tu clúster como activo y obtener sus credenciales mediante GKE Explorer de la siguiente manera:

  1. Navega a GKE Explorer (como un panel accesible en el Explorador de Kubernetes, en la vista Ícono de Kubernetes Explorer de Cloud Code).
  2. Haz clic con el botón derecho en tu clúster y, luego, en Establecer como clúster activo.

Depura tu app

Para depurar tu aplicación, sigue estos pasos:

  1. Usa la barra de estado de Cloud Code y selecciona Depurar en Kubernetes.
  2. Si se te solicita, confirma si deseas usar el contexto de clúster actual o cambiar a uno preferido.

    Cloud Code usa la configuración cloudcode.kubernetes en tu archivo .vscode/launch.json para ejecutar la aplicación y adjuntar una sesión de depurador a ella.

    Cloud Code luego compila tus contenedores, los envía al registro, aplica las configuraciones de Kubernetes al clúster y muestra la dirección IP que puedes usar para explorar tu aplicación en vivo.

  3. Antes de adjuntar la sesión de depurador, se te solicitará que confirmes o ingreses el directorio en el contenedor remoto donde se encuentra el programa que quieres depurar, o presiona ESC para omitir la depuración del contenedor.

  4. Para agregar una interrupción en la línea #9, abre src/app.js y, luego, haz clic en el margen del editor.

    Los círculos rellenos en rojo significan las interrupciones activas, mientras que los círculos grises indican los puntos de interrupción inhabilitados. Para un control de interrupciones más preciso, puedes usar la sección de interrupciones en la vista de depuración de VS Code.

    Sección de interrupciones en el panel izquierdo de la vista de depuración que permite agregar, quitar y, también, inhabilitar interrupciones

    Cuando envías una solicitud nueva a tu aplicación, el depurador se pausa en el primer punto de interrupción activo.

    En la siguiente muestra, en Local en la sección Variables, ten en cuenta que el valor de res._contentLength; para Hello, world! es 13.

    App detenida en la interrupción, variables y secciones de pila de llamadas propagadas con valores dentro del permiso

  5. Edita la string que se envía en la línea #8 a Hello, goodbye! y, luego, reinicia la acción Debug on Kubernetes.

    Después de que la app se vuelva a compilar y se vuelva a implementar, ten en cuenta el valor actualizado de res._contentLength.

    La app se pausó en el punto de interrupción con valores actualizados

Visualiza los registros

Además de ver un flujo en vivo de los registros de la ejecución de pods en la salida de la terminal desde tu aplicación en ejecución, también puedes ver los registros con el visor de registros que viene con Cloud Code.

Para ver los registros, sigue estos pasos:

  1. Escribe Cloud Code: Ver registros mediante la paleta de comandos (accesible con Ctrl/Cmd+Shift) para iniciar el visor de registros.+P o a través del menú Administrar marcado con un ícono de ajustes Ícono Administrar).
  2. Busca la app en ejecución, en este caso nodejs-hello-world, para ver los registros del uso del campo de implementación en el cuadro de búsqueda del visor de registros.

    Ver registros mediante la configuración del campo de implementación dentro del cuadro de búsqueda del visor de registros en “nodejs-hello-world”.

Bonificación: Abre una terminal en tu contenedor

Para abrir una terminal en tu contenedor, sigue estas instrucciones:

  1. Navega a Kubernetes Explorer.
  2. Selecciona el clúster y, en la sección de pods subyacente, el pod al que deseas conectarte.
  3. En tu pod especificado, expande tu sección Contenedores.
  4. Haz clic con el botón derecho en el contenedor en el que deseas abrir una terminal y, luego, en Obtener terminal.

    Esto inicia una terminal. Ahora tienes acceso a un shell dentro del contenedor en ejecución.

    Abrir una terminal para el pod especificado

Realice una limpieza

Cuando finalizas tu aplicación, todos los recursos de Kubernetes implementados durante la ejecución se borran de manera automática.

Para evitar que se apliquen cargos a tu cuenta por otros recursos que usaste en esta guía de inicio rápido, asegúrate de borrar el clúster y el proyecto que creaste.

Si usas Google Cloud y deseas borrar solo tu clúster, puedes hacerlo de la siguiente manera:

  • En el explorador de Kubernetes, en la vista de Cloud CodeÍcono de Kubernetes Explorer , haz clic derecho en el clúster que quieres borrar del panel de Google Kubernetes Engine Explorer y, luego, haz clic enBorrar clústeres las rutas "a GCP".

Para borrar tu proyecto (y los recursos asociados, incluidos los clústeres), sigue estos pasos:

  1. Ve a la página Proyectos en Cloud Console:

    Ir a la página Proyectos

  2. Selecciona el proyecto que creaste para esta guía de inicio rápido y haz clic en el ícono de la papelera junto a él para borrarlo.

    Esta acción cierra el proyecto y programa su eliminación.

¿Qué sigue?