Implementa una app de Kubernetes con Cloud Code para IntelliJ
En esta página, se muestra cómo comenzar a usar Cloud Code.
En esta guía de inicio rápido, configurarás una nueva aplicación de Kubernetes con una plantilla de inicio de Hello World, ejecutarás tu app en el clúster que quieras, iniciarás una recompilación continua para desarrollar tu app de manera iterativa, depurarás el código en ejecución y podrás sentarte a ver los registros que se transmiten desde tu aplicación activa.
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.
Como alternativa, puedes usar un clúster alojado en cualquier otra plataforma de Cloud o un clúster de Kubernetes local con herramientas como Minikube y Docker Desktop.
Instala Git para que Cloud Code pueda realizar operaciones de Git, como clonar una muestra.
Instala el complemento
Para instalar el complemento de Cloud Code, haz lo siguiente:
Si aún no lo hiciste, instala el IDE de JetBrains versión 2020.3+ (como IntelliJ Ultimate/Community, PyCharm Professional/Community, WebStorm, GoLand).
Para todas las plataformas en la nube, asegúrate de que el cliente de Docker (autenticado con tu registro de Docker) esté instalado en la
PATH
de tu máquina (su carpeta debe estar visible en un directorio en tuPATH
). Para verificar si ya tienes Docker instalado, ejecutadocker -v
.Cloud Code instala y administra automáticamente las siguientes dependencias en tu IDE: minikube, kubectl, Skaffold y Google Cloud SDK.
Abre IntelliJ IDEA (o cualquier IDE de JetBrains admitido).
Una vez que se abra el IDE, actualiza esta página.
Instala el complemento de Cloud Code:
En el diálogo de instalación que se abre en tu IDE, haz clic en Aceptar para configurar Cloud Code.
Si ejecutas Cloud Code en Silicon de serie M de Apple, se te solicitará que instales Rosetta 2. Esto permite que Cloud Code instale kubectl como una dependencia administrada.
Si prefieres no instalar Rosetta 2, desactiva las dependencias administradas (IntelliJ IDEA >Preferencias >Herramientas >Cloud Code >Dependencias ) y, luego, instala tu propia versión de ARM de kubectl como se describe enVersiones personalizadas de dependencias.
Crea una aplicación
Para crear una aplicación nueva mediante una muestra existente sigue estos pasos:
En tu IDE, abre File (Archivo) New Project (Proyecto nuevo) y selecciona Cloud Code: Kubernetes (Cloud Code: Kubernetes).
Selecciona una plantilla Hello World de la lista de aplicaciones de inicio.
Elige un nombre para el proyecto.
Cuando hagas clic en Finalizar, Cloud Code clonará la plantilla que elegiste y abrirá el proyecto que recién creaste para usarlo.
En el caso de las plantillas de Java, se te pedirá que importes los proyectos de Maven necesarios para sincronizar tu pom.xml. Haz clic en Agregar como proyecto de Maven y, luego, en Importar cambios.
Elige un clúster
Para desarrollar tu aplicación, necesitarás un clúster de Kubernetes asociado (alojado de forma local con Minikube o con una plataforma en la nube, como un clúster de Google Kubernetes Engine).
Clúster local
Si aún no tienes un clúster para esta guía de inicio rápido, puedes ejecutar tu aplicación con un clúster local de Minikube administrado por Cloud Code. Cloud Code inicia un clúster de Minikube para ejecutar la aplicación y lo detiene cuando se detiene la implementación. Si un clúster de Minikube ya se está ejecutando, Cloud Code reutiliza el clúster existente para implementarlo.
Puedes elegir usar este clúster de Minikube administrado por Cloud Code en el paso siguiente, desarrollar tu aplicación si la configuras como tu preferencia de implementación.
Clúster basado en Cloud Platform
Si ya tienes un clúster configurado para trabajar con herramientas de Kubernetes (como kubectl) que puedes usar en esta guía de inicio rápido, Cloud Code lo implementa automáticamente. Puedes continuar con el desarrollo de aplicaciones, en los que puedes confirmar que tu clúster preferido está configurado como tu contexto actual.
De lo contrario, puedes crear una con las instrucciones específicas de la plataforma de nube. En GKE, puedes seguir la guía Crea un clúster.
Desarrolla tu aplicación
Para iniciar el desarrollo de tu aplicación en Kubernetes, sigue estos pasos:
Si ejecutas un clúster alojado en una plataforma de nube, asegúrate de definir dónde se almacenan las imágenes de contenedor para desarrollar en Kubernetes.
Si accediste a Google Cloud en tu IDE y tienes un proyecto predeterminado definido, Cloud Code usa de forma automática el repositorio de imágenes de contenedor predeterminado (gcr.io/{project_id}, en el que {project_id} hace referencia a tu proyecto predeterminado).
Asegúrate de que esté configurado el contexto de Kubernetes preferido. Puedes especificarlo en tu configuración de Desarrollo en Kubernetes (a la que se puede acceder a través de Run, Edit Configurations, Develop on Kubernetes), en la pestaña Run y en la sección Deployment Preferences.
Puedes implementar en un contexto actual (predeterminado), de forma local en un clúster de Minikube o en otro contexto disponible.
De forma predeterminada, tu aplicación de Kubernetes se ejecutará en modo a pedido con la opción A pedido seleccionada. Si lo prefieres, puedes seleccionar la opción Guardar en archivo.
Elige el objetivo de ejecución Develop on Kubernetes (Desarrollar en Kubernetes) en el selector de configuración de ejecución y depuración en la barra de navegación.
Esto garantiza que los cambios de código se compilen, se envíen y se implementen de forma automática en una versión nueva de tu aplicación.
Para comenzar el ciclo de desarrollo en tu clúster de Kubernetes, haz clic en la acción de ejecución de Develop on Kubernetes (Desarrollar en Kubernetes).
En la ventana de salida, en la pestaña Registros, consulta los registros de la aplicación entrantes.
Una vez que se inicie la implementación, verás la lista de puertos redireccionados de la aplicación implementada.
Cuando la implementación se complete de forma correcta, se te notificará que las URL de servicio nuevas están disponibles. Haz clic en la pestaña Service URLs para ver las URL y, luego, haz clic en el vínculo de la URL a fin de abrir tu navegador con la aplicación en ejecución.
Como alternativa, puedes abrir el registro de eventos y, luego, hacer clic en el vínculo para abrir el navegador con la aplicación en ejecución.
Depura tu aplicación
Cloud Code admite la aplicación de cambios durante la depuración.
Para depurar tu aplicación, haz lo siguiente:
Haz clic en la acción de depuración
para Develop on Kubernetes (Desarrollar en Kubernetes) a fin de iniciar el ciclo de desarrollo en modo de depuración en tu clúster de Kubernetes.
Cloud Code adjuntará una sesión de depuración. Cuando se complete correctamente, se abrirá la ventana de la Herramienta de depuración para confirmar la conexión (en la pestaña Console).
Ahora puedes depurar en tu clúster activo de Kubernetes.
Haz clic en el margen en la línea ejecutable del código en el que deseas agregar una interrupción.
Los círculos rellenos de color rojo indican las interrupciones activas, mientras que los círculos vacíos con contornos rojos indican las interrupciones inhabilitadas.
Cada vez que envíes una solicitud nueva a tu aplicación, se detendrá en la línea deseada.
Si deseas finalizar la sesión de depuración, haz clic en el ícono de detención en la configuración de ejecución
Develop on Kubernetes
.
Visualiza los registros
Además de ver una transmisión en vivo de los registros de los Pods en ejecución en la salida de la terminal a medida que desarrollas y ejecutas la aplicación, puedes ver los registros de un Pod específico si navegas a Kubernetes Explorer.
Para ver los registros de un pod específico, sigue estos pasos:
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.
Selecciona el pod del que deseas ver los registros.
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 genera registros en la consola de Kubernetes Explorer.
Realice una limpieza
Para evitar que se apliquen cargos en tu cuenta por los recursos que se usan 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 tu proyecto (y los recursos asociados, que se incluyen los clústeres de GKE), sigue estos pasos:
Ve a la página Proyectos en Cloud Console:
Selecciona el proyecto que creaste para este inicio rápido y bórralo. Para ello, debes hacer clic en el ícono de la papelera que se encuentra al lado.
Con esta acción, se cierra el proyecto y se programa su eliminación.
Realiza una limpieza
Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que se usaron en esta página.
¿Qué sigue?
- Considera importar una aplicación existente, en una aplicación de Kubernetes o App Engine, a tu IDE y a configurar Cloud Code.
- Obtén más información sobre el desarrollo de aplicaciones de Kubernetes:
- Aborda la configuración más avanzada de Google Cloud y Kubernetes con la asistencia de edición de YAML de Cloud Code.
- Para obtener información precisa sobre la administración de tus recursos de Kubernetes, usa Kubernetes Explorer.
- Crea, ejecuta, depura y, luego, implementa una app de App Engine con Cloud Code.
- Administra las API de Cloud y las bibliotecas cliente desde la comodidad de tu IDE.
- Explora el contenido de Cloud Storage dentro de tu IDE.
- Agrega proyectos nuevos y consulta los existentes en Cloud Source Repositories con Cloud Code.
- Adjunta el Depurador de Cloud en tu aplicación para una experiencia de depuración más sólida cuando tu app se ejecute en producción.