Implementa una app de Kubernetes con Cloud Code para VS Code

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

Configurarás una aplicación nueva de Kubernetes con una aplicación de muestra “Hello World”, crearás un clúster, ejecutarás tu app en él, depurarás tu código en ejecución, verás los registros de tu aplicación activa y conectarás una terminal a tu contenedor en ejecución.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. Habilita la API de Google Kubernetes Engine.

    Habilita la API

  5. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  6. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  7. Habilita la API de Google Kubernetes Engine.

    Habilita la API

  8. Instala Git. Se requiere Git para copiar muestras en tu máquina.
  9. Instala el complemento de Cloud Code si aún no lo has hecho.

Crea una aplicación

  1. Abre la paleta de comandos (presiona Ctrl/Cmd + Shift+P o haz clic en View > Command Palette) y, luego, ejecuta Cloud Code: New Application.

  2. Elige Kubernetes Application.

  3. Elige una app de Hello World en el idioma que prefieras.

    Por ejemplo, si eliges Node.js: Hello World, se crea una app de Hello World de Node.js de inicio.

  4. Guarda la nueva aplicación.

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

Crea un clúster de GKE

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

  1. Haz clic en Cloud Code y expande la sección Kubernetes.

  2. Haz clic en agregar Agregar un clúster a KubeConfig y, luego, en Google Kubernetes Engine en el menú Selección rápida.

  3. Cuando se te solicite que habilites container.googleapis.com, selecciona .

  4. Haz clic en + Crear un clúster de GKE nuevo.

  5. Elige Estándar como el tipo de clúster.

  6. Haz clic en Abrir para permitir que Cloud Code abra la consola de Google Cloud.

  7. En la consola de Google Cloud, usa el proyecto que creaste, establece la zona en us-central1-a y el nombre del clúster como my-first-cluster.

  8. Haz clic en Crear. La creación del clúster tarda unos minutos.

  9. Después de crear el clúster, en el menú Selección rápida, haz clic en Actualizar Actualizar.

  10. Después de que el nombre de tu clúster nuevo aparezca en la lista, haz clic en el nombre del clúster. El clúster nuevo se agrega a la configuración y se configura para ser el contexto activo.

Cómo ejecutar y visualizar tu app

Ahora que está todo configurado, puedes ejecutar tu aplicación y verla en vivo. Cloud Code supervisa los cambios en tu sistema de archivos para que puedas editar y volver a ejecutar tu app casi en tiempo real.

Para ejecutar tu aplicación, sigue estos pasos:

  1. En la barra de estado de Cloud Code, haz clic en el nombre del proyecto activo.

    Nombre del proyecto activo en la barra de estado

  2. En el menú de selección rápida que aparece, selecciona Run on Kubernetes.

  3. Confirma si quieres usar el contexto del clúster actual o cambiar a otro.

  4. Si se te solicita, elige un registro de imágenes para enviarla. Si creas un registro de imágenes nuevo con gcr.io/PROJECT_ID, asegúrate de que el registro de imágenes esté en el mismo proyecto que el clúster.

    Aparecerá una ventana de resultados en la que podrás realizar un seguimiento del progreso de la 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.

  5. Una vez que la aplicación se ejecuta en Kubernetes, se muestra una dirección IP en la ventana de resultados. Si quieres usar esta dirección IP vinculada para acceder a tu aplicación, presiona Ctrl/Cmd y haz clic en la dirección.

Sugerencias para solucionar problemas

Si usas un clúster preexistente, para configurarlo como activo y obtener sus credenciales, sigue estos pasos:

  1. Haz clic en Cloud Code y expande la sección Kubernetes.

  2. Haz clic con el botón derecho en el nombre del clúster y, luego, en Set as Active Cluster.

Depurar tu app

Para depurar tu aplicación, sigue estos pasos:

  1. En la barra de estado de Cloud Code, haz clic en el nombre del proyecto activo.

    Nombre del proyecto activo en la barra de estado

  2. En el menú de selección rápida que aparece, selecciona Debug on Kubernetes.

  3. Si se te solicita, autentica tus credenciales para ejecutar y depurar una aplicación de manera local.

  4. Si se te solicita, confirma si quieres usar el contexto del clúster actual o cambiar al que prefieras.

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

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

  5. Antes de conectar la sesión del depurador, se te pedirá que confirmes o ingreses el directorio en el contenedor remoto en el que se encuentra el programa de depuración, o bien que presiones ESC para omitir la depuración del contenedor.

  6. Para agregar un punto de interrupción a la línea 9, abre src/app.js y haz clic en el margen del editor.

    Los círculos rellenos de color rojo indican las interrupciones activas, mientras que los círculos vacíos de color gris indican las interrupciones inhabilitadas. 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 detiene en el primer punto de interrupción activo.

    En el siguiente ejemplo, 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

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

    Después de que la app se vuelva a compilar y a implementar, toma nota del valor actualizado de res._contentLength.

    Se pausó la app en el punto de interrupción con valores actualizados

Una vez que se inicia tu sesión de depuración, en el panel Development sessions (Sesiones de desarrollo), se muestra la vista de registro estructurada. Cuando comienza una tarea, esta aparece con un semicírculo progress_activity giratorio.

Si una tarea se realiza correctamente, aparecerá una marca de verificación check_circle junto al paso.

Para ver los detalles de un paso, haz clic en él en el panel Development session. En el panel Resultado, se muestra el paso en el resultado del registro.

Abre una terminal en tu contenedor

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

  1. Haz clic en Cloud Code y expande la sección Kubernetes.

  2. Expande las siguientes secciones:

    • La sección de tu clúster preferida
    • La sección Espacios de nombres y, luego, la sección del espacio de nombres que prefieras
    • La sección Pods y, luego, la sección de tu Pod preferido
    • La sección Contenedores

      Pods de Cloud Code

  3. Haz clic con el botón derecho en el contenedor en el que deseas abrir una terminal y, luego, en Obtener terminal.

    Se iniciará una terminal. Ahora tienes acceso a una shell dentro del contenedor en ejecución.

Limpia

Después de detener la aplicación, todos los recursos de Kubernetes implementados durante la ejecución se borrarán automáticamente.

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 proyecto o el clúster que creaste si quieres volver a usarlo.

Para borrar el clúster, sigue estos pasos:

  1. Haz clic en Cloud Code y, luego, expande el explorador Kubernetes.
  2. Mantén el puntero sobre el nombre del clúster y, luego, haz clic en open_in_new Abrir en la consola de Google Cloud.
  3. Haz clic en Borrar y, luego, en Borrar.

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

  1. En la consola de Google Cloud, ve a la página Administrar recursos.

    Ir a Administrar recursos

  2. En la lista de proyectos, elige el proyecto que quieres borrar y haz clic en Borrar.
  3. En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrar el proyecto.

¿Qué sigue?