Aprende a crear una aplicación web en un contenedor con el editor de Cloud Shell, pruébala localmente y, a continuación, despliégala en un clúster de Google Kubernetes Engine (GKE).
Para seguir las instrucciones paso a paso de esta tarea directamente en el editor de Cloud Shell, haz clic en Ayúdame:
Antes de empezar
-
In the Google Cloud console, go to the project selector page.
-
Select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
Crear una aplicación web
Usa el editor de Cloud Shell como entorno para crear tu aplicación. El editor ya tiene cargadas las herramientas necesarias para el desarrollo en Cloud.
Para crear tu aplicación, haz lo siguiente:
Abre el editor de Cloud Shell.
Si se te pide que autorices a Cloud Code para que use tus credenciales y haga una llamada a la API de Google Cloud, haz clic en Autorizar.
Abre el menú Cloud Code desde la barra de estado.
Selecciona Nueva aplicación.
Selecciona Aplicación de Kubernetes como tipo de aplicación de ejemplo.
En la lista de aplicaciones de ejemplo de Kubernetes, selecciona Go:Hello World (Go:Hola, mundo).
Selecciona la carpeta donde se ubicará tu aplicación y haz clic en Crear aplicación.
El editor de Cloud Shell carga la aplicación en un nuevo espacio de trabajo. Una vez que se vuelva a cargar, podrás acceder a tu aplicación desde la
Probar una aplicación en un clúster local
Ahora que has creado tu aplicación, puedes ejecutarla en un clúster local de Kubernetes en Cloud Shell:
- Para abrir una terminal de Cloud Shell, haz clic en Terminal > Nueva terminal.
Para iniciar tu clúster minikube local, en el símbolo del sistema del
terminal , ejecuta el siguiente comando:minikube start
Puede que tarde un minuto en configurarse el clúster de minikube.
Si se te pide que autorices a Cloud Shell para que pueda hacer llamadas a la API de Cloud, haz clic en Autorizar.
Una vez que hayas configurado el clúster, aparecerá un mensaje similar al siguiente:
Done! kubectl is now configured to use "minikube" cluster...
Una vez configurado el clúster local, compila y ejecuta esta aplicación:
- Abre el menú de
Cloud Code desde la barra de estado. - Selecciona
Ejecutar en Kubernetes . Si se te pide, confirma que quieres usar el contexto de minikube actual.
Este proceso tarda unos minutos y puedes ver el estado del despliegue en la vista
Sesiones de desarrollo .Al hacer clic en los distintos nodos de la vista Sesiones de desarrollo, se muestran fragmentos de registro relacionados con la fase de implementación seleccionada.
Una vez que se haya compilado y desplegado tu aplicación, busca el nodo de reenvío de puertos de tu servicio. En la vista Sesiones de desarrollo, expande URLs de reenvío de puertos > servicio >
go-hello-world-external .Para iniciar la aplicación, coloca el puntero sobre
go-hello-world-external y, a continuación, haz clic en Abrir URL.
Editar una aplicación
Para entender los componentes de la aplicación Hello World, consulta el diagrama del archivo readme.md
- Una aplicación web
go-hello-world
básica, , que devuelve una respuesta con plantilla "It's running!" a todas las solicitudes que recibe.main.go
- Un servicio de balanceador de carga
go-hello-world-external
, , que expone la aplicación describiendo un servicio de Kubernetes.hello.service.yaml
Para modificar la aplicación, sigue estos pasos:
- Modifica el archivo
para que imprima "Se ha vuelto a desplegar". El archivo se guarda automáticamente.main.go
Espera un minuto a que tu aplicación termine de compilarse y desplegarse, y monitoriza su progreso mientras se vuelve a compilar en la vista
Sesiones de desarrollo .Una vez que la aplicación se haya compilado y desplegado, busca el nodo de reenvío de puertos de tu servicio: Sesiones de desarrollo > URLs de reenvío de puertos > servicio >
go-hello-world-external .Para iniciar la aplicación, coloca el puntero sobre
go-hello-world-external y haz clic en Abrir URL.
Ver registros de aplicaciones
Para analizar tu aplicación mientras se ejecuta, usa el visualizador de registros para monitorizar sus registros:
Para abrir el visualizador de registros, abre la paleta de comandos (a la que se puede acceder mediante
Ctrl
/Cmd
+Shift
+P
o Ver > Paleta de comandos) y, a continuación, ejecuta Cloud Code: View Logs (Cloud Code: Ver registros).En esta vista, puedes filtrar los registros de tu aplicación y desplazarte por ellos.
Especifica los filtros de
Despliegue para ver los registros de tu aplicación,go-hello-world
.Cambia a la pestaña de tu aplicación que muestra el mensaje "Se ha vuelto a desplegar". Vuelve a cargar la página en el navegador y, a continuación, vuelve a la pestaña de Cloud Shell.
Para ver los registros recién generados en el visor de registros, haz clic en
Actualizar .
Crear un clúster de Google Kubernetes Engine
Para crear un clúster de Google Kubernetes Engine en el que desplegar tu aplicación, sigue estos pasos:
Haz clic en
Cloud Code y, a continuación, despliega la sección Kubernetes.
Haz clic en
Añadir un clúster a KubeConfig y, a continuación, en Google Kubernetes Engine en el menú Selección rápida.Cuando se te pida que habilites
container.googleapis.com
, haz clic en Sí.Haz clic en + Crear un clúster de GKE.
Elige Estándar como tipo de clúster.
Haz clic en Abrir para permitir que Cloud Shell abra la consolaGoogle Cloud .
En la consola de Google Cloud , usa el proyecto que has creado, define la zona como
us-central1-a
y asigna el nombremy-first-cluster
al clúster.Haz clic en Crear. La creación del clúster tarda unos minutos.
Una vez creado el clúster, en el menú Selección rápida, haga clic en
Actualizar.
Cuando aparezca el nombre del nuevo clúster en la lista, haz clic en él. El nuevo clúster se añade a la configuración y se configura como contexto activo.
Desplegar una aplicación en un clúster de GKE
Para desplegar tu aplicación en el nuevo clúster, sigue estos pasos:
En el menú
Cloud Code , al que se accede desde la barra de estado, seleccionaEjecutar en Kubernetes .Confirma que el clúster que has creado es el contexto de tu aplicación.
Confirma la opción predeterminada de tu registro de imágenes.
Espera un minuto a que tu aplicación termine de compilarse y desplegarse, y monitoriza su progreso mientras se vuelve a compilar en la vista
Sesiones de desarrollo .Una vez que se haya compilado y desplegado tu aplicación, busca el nodo de reenvío de puertos de tu servicio. En la vista Sesiones de desarrollo, expande URLs de reenvío de puertos > servicio >
go-hello-world-external .Para iniciar la aplicación, mantén el puntero sobre
go-hello-world-external y haz clic en Abrir URL.
Eliminar los recursos utilizados
Para eliminar solo el clúster que has creado para esta guía de inicio rápido, haz lo siguiente:
- Coloca el cursor sobre el nombre del clúster y haz clic en
Abrir en la Google Cloud consola.
- Haz clic en Eliminar y, a continuación, en Eliminar.
Para eliminar tu proyecto (y los recursos asociados, incluidos los clústeres), sigue estos pasos:
Ve a la página Proyectos de la Google Cloud consola:
Selecciona el proyecto que has creado para esta guía de inicio rápido y haz clic en Eliminar.
Escribe el ID del proyecto para confirmar la acción y, a continuación, haz clic en Cerrar.
De esta forma, se cierra el proyecto y se programa su eliminación.
Siguientes pasos
Descubre las funciones de la interfaz del editor de Cloud Shell.
Consulta información sobre la depuración con el editor de Cloud Shell y la compatibilidad adicional del editor de Cloud Shell con las aplicaciones de Kubernetes.
Despliega tus aplicaciones en clústeres de GKE con arquitectura ARM64, AMD64 o mixta.