Implementa una app de Kubernetes con el desarrollo remoto

En esta página, se muestra cómo comenzar a usar Cloud Code para VS Code con rapidez mediante un entorno de desarrollo remoto en Cloud Shell.

En esta guía de inicio rápido, omitirás la configuración y clonarás un proyecto en tu lugar de trabajo de desarrollo remoto con un clic, crearás un clúster, ejecutarás una app de Kubernetes en él, depurarás el 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

Para configurar recursos de asistencia y acceder a Cloud Shell, el entorno de desarrollo remoto en Google Cloud que usas en esta guía de inicio rápido, dentro de VS Code, completa los siguientes pasos:

  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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  6. Si aún no lo hiciste, instala Visual Studio Code en tu máquina.
  7. Instala la extensión Remote - SSH de Visual Studio Code.
  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 hiciste.

Inicia Cloud Code

Cuando abres Visual Studio Code conectado a un entorno de desarrollo remoto en Cloud Shell, el entorno tiene todas las herramientas que necesitas para desarrollar aplicaciones de Kubernetes.

  1. Para comenzar a trabajar en tu lugar de trabajo de desarrollo remoto, elige el lenguaje que prefieras para el proyecto clonado y, luego, haz clic en el botón Abrir con Cloud Code:

    VS Code inicia y clona un proyecto en tu lugar de trabajo de desarrollo remoto.

  2. Si aún no estableciste los requisitos previos, se te solicitará que los instales.

Cree 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 add. Agrega un clúster a KubeConfig y, luego, haz clic 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 nuevo clúster de GKE.

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

  6. Haz clic en Open 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 en 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 Actualiza.

  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.

Ejecuta y visualiza tu app

Ahora que todo está configurado, puedes ejecutar tu aplicación y verla en vivo. Cloud Code inspecciona 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ú Selección rápida que aparece, selecciona Run on Kubernetes.

  3. Confirma si deseas usar el contexto del clúster actual o cambiar a uno diferente.

  4. Si se te solicita, elige un registro de imágenes para enviar las imágenes. Si estás crear un nuevo registro de imágenes con gcr.io/PROJECT_ID asegúrese de que el registro de imágenes esté en el mismo proyecto que su clúster.

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

  5. Una vez que tu aplicación se ejecuta en Kubernetes, la ventana de resultados muestra una dirección IP. Para usar esta dirección IP vinculada y 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, configúralo como activo y obtén las credenciales del clúster, 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 de tu clúster y, luego, en Configurar como clúster activo.

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ú Selección rápida que aparece, selecciona Debug en Kubernetes.

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

  4. Si se te solicita, confirma si quieres usar el contexto del clúster actual o cambia a uno preferido.

    En Cloud Code, se usa la configuración cloudcode.kubernetes en tu archivo .vscode/launch.json para ejecutar la 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 solicitará que confirmes o ingresa el directorio en el contenedor remoto donde el programa para depurar o presiona Esc para omitir la depuración del contenedor.

  6. Para agregar un punto de interrupción en la línea 9, abre src/app.js y haz clic en 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 la 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 cadena que se envía intercalada #8 a Hello, goodbye! y, luego, reinicia la acción Debug on Kubernetes.

    Después de que la app se vuelva a compilar e implementar, observa el valor actualizado de res._contentLength

    App detenida en la interrupción con valores actualizados

Una vez que comienza la sesión de depuración, se muestra el panel Development sessions la vista de registro estructurado. Cuando una tarea comienza, aparece con un semicírculo giratorio progress_activity.

Si la 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 el paso en la Panel Development session (Sesión de desarrollo). En el panel Resultado, se muestra el paso en la 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 Kubernetes. sección.

  2. Expande las siguientes secciones:

    • Sección del clúster que prefieras
    • La sección Espacios de nombres y, luego, la sección del espacio de nombres que prefieras
    • La sección Pods y, luego, tu sección de Pods preferidos
    • 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, haz clic en Get Terminal.

    Esto 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 que implementaste durante la ejecución se borran de forma automática.

Para evitar que se apliquen cargos a tu cuenta por otros recursos que usaste asegúrate de borrar el proyecto o el clúster que creaste si quieres reutilizar el proyecto.

Para borrar el clúster, sigue estos pasos:

  1. Haz clic en . Cloud Code y, luego, expande el explorador de Kubernetes.
  2. Coloca el puntero sobre el nombre de tu 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?