Puntos de control
Creating a Kubernetes Engine cluster
/ 25
Create a new Deployment - hello-server
/ 25
Create a Kubernetes Service
/ 25
Clean up: Delete the cluster
/ 25
Google Kubernetes Engine: Qwik Start
- GSP100
- Descripción general
- Objetivos
- Configuración y requisitos
- Tarea 1: Configura una zona de procesamiento predeterminada
- Tarea 2: Crea un clúster de GKE
- Tarea 3: Obtén las credenciales de autenticación para el clúster
- Tarea 4. Implementa una aplicación en el clúster
- Tarea 5: Borra el clúster
- ¡Felicitaciones!
GSP100
Descripción general
Google Kubernetes Engine (GKE) proporciona un entorno administrado para implementar, administrar y escalar tus aplicaciones alojadas en contenedores con la infraestructura de Google. El entorno de GKE consta de varias máquinas (en particular, instancias de Compute Engine) que se agrupan para formar un clúster de contenedores.
En este lab, adquirirás experiencia práctica en la creación de contenedores y la implementación de aplicaciones con GKE.
Objetivos
En este lab, aprenderás a hacer lo siguiente:
- Crear un clúster de GKE
- Implementar una aplicación en el clúster
- Borrar el clúster
Organización de clústeres con Google Kubernetes Engine
Los clústeres de Google Kubernetes Engine (GKE) funcionan con el sistema de administración de clúster de código abierto de Kubernetes. Este proporciona los mecanismos a través de los cuales interactúas con tu clúster de contenedores. Los comandos y recursos de Kubernetes se usan para implementar y administrar aplicaciones, realizar tareas administrativas, establecer políticas y supervisar el estado de las cargas de trabajo implementadas.
Kubernetes se basa en los mismos principios de diseño que se utilizan para ejecutar algunos servicios populares de Google y ofrece los mismos beneficios: administración automática, supervisión y sondeos de estado en funcionamiento de los contenedores de aplicaciones, ajuste de escala automático, actualizaciones progresivas y mucho más. Cuando ejecutas tus aplicaciones en un clúster de contenedores, estás utilizando tecnología basada en la experiencia de más de 10 años que Google tiene ejecutando cargas de trabajo de producción en contenedores.
Kubernetes en Google Cloud
Cuando ejecutas un clúster de GKE, también obtienes los beneficios de las funciones avanzadas de administración de clústeres que proporciona Google Cloud. Estos incluyen los siguientes:
- Balanceo de cargas para instancias de Compute Engine
- Grupos de nodos para designar subconjuntos de nodos dentro de un clúster y así obtener flexibilidad adicional
- Ajuste de escala automático del recuento de instancias de nodos del clúster
- Actualizaciones automáticas para el software de nodo del clúster
- Reparación automática de los nodos para mantenerlos disponibles y en buen estado
- Registros y supervisión con Cloud Monitoring para obtener una mayor visibilidad del clúster
Ahora que tienes un conocimiento básico de Kubernetes, aprenderás a implementar una aplicación alojada en contenedores con GKE en menos de 30 minutos. Sigue los pasos que se indican a continuación para configurar el entorno de tu lab.
Configuración y requisitos
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
- Acceso a un navegador de Internet estándar (se recomienda el navegador Chrome)
- Tiempo para completar el lab: Recuerda que, una vez que comienzas un lab, no puedes pausarlo.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
-
Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su forma de pago. A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
- El botón Abrir la consola de Google Cloud
- El tiempo restante
- Las credenciales temporales que debe usar para el lab
- Otra información para completar el lab, si es necesaria
-
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordene las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta. -
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}} También puedes encontrar el nombre de usuario en el panel Detalles del lab.
-
Haz clic en Siguiente.
-
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}} También puedes encontrar la contraseña en el panel Detalles del lab.
-
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud. Nota: Usar tu propia Cuenta de Google podría generar cargos adicionales. -
Haga clic para avanzar por las páginas siguientes:
- Acepta los Términos y Condiciones.
- No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
- No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Activa Cloud Shell
Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.
- Haz clic en Activar Cloud Shell en la parte superior de la consola de Google Cloud.
Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. El resultado contiene una línea que declara el PROJECT_ID para esta sesión:
gcloud
es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.
- Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
-
Haz clic en Autorizar.
-
Ahora, el resultado debería verse de la siguiente manera:
Resultado:
- Puedes solicitar el ID del proyecto con este comando (opcional):
Resultado:
Resultado de ejemplo:
gcloud
, consulta la guía con la descripción general de gcloud CLI en Google Cloud.
Tarea 1: Configura una zona de procesamiento predeterminada
Una zona de procesamiento es una ubicación regional aproximada en la que residen tus clústeres y sus respectivos recursos. Por ejemplo, us-central1-a
es una zona de la región us-central1
.
En tu sesión de Cloud Shell, ejecuta los siguientes comandos:
-
Configura la región de procesamiento predeterminada:
gcloud config set compute/region {{{project_0.startup_script.project_region|"REGION"}}} Resultado esperado:
Updated property [compute/region]. -
Configura la zona de procesamiento predeterminada:
gcloud config set compute/zone {{{project_0.startup_script.project_zone|"ZONE"}}} Resultado esperado:
Updated property [compute/zone].
Tarea 2: Crea un clúster de GKE
Un clúster consta de, al menos, una máquina de instancia principal del clúster y varias máquinas trabajadoras, llamadas nodos. Los nodos son instancias de máquinas virtuales (VM) de Compute Engine que ejecutan los procesos de Kubernetes necesarios para que sean parte del clúster.
Ejecuta el siguiente comando:
-
Crea un clúster:
gcloud container clusters create --machine-type=e2-medium --zone={{{project_0.startup_script.project_zone|ZONE}}} lab-cluster
Puedes ignorar cualquier advertencia en el resultado. La creación del clúster podría demorar varios minutos.
Resultado esperado:
Haz clic en Revisar mi progreso para verificar el objetivo.
Tarea 3: Obtén las credenciales de autenticación para el clúster
Después de crear tu clúster, necesitas credenciales de autenticación para interactuar con él.
-
Autentica con el clúster:
gcloud container clusters get-credentials lab-cluster Resultado esperado:
Fetching cluster endpoint and auth data. kubeconfig entry generated for my-cluster.
Tarea 4. Implementa una aplicación en el clúster
Ahora puedes implementar una aplicación alojada en contenedores en el clúster. En este lab, ejecutarás hello-app
en tu clúster.
GKE utiliza los objetos de Kubernetes para crear y administrar los recursos de tus clústeres. Kubernetes proporciona el objeto Deployment para implementar aplicaciones sin estado como servidores web. Los objetos Service definen las reglas y el balanceo de cargas para acceder a tu aplicación desde Internet.
-
Para crear un nuevo objeto Deployment
hello-server
a partir de la imagen del contenedorhello-app
, ejecuta el siguiente comandokubectl create
:kubectl create deployment hello-server --image=gcr.io/google-samples/hello-app:1.0 Resultado esperado:
deployment.apps/hello-server created Este comando de Kubernetes crea un objeto Deployment que representa
hello-server
. In this case,--image
specifies a container image to deploy. El comando obtiene la imagen de ejemplo desde un bucket de Container Registry.gcr.io/google-samples/hello-app:1.0
indica la versión específica de la imagen que se desea obtener. Si no se especifica una versión, se usará la más reciente.Haz clic en Revisar mi progreso para verificar el objetivo.
Crear un nuevo objeto Deployment: hello-server -
Para crear un objeto Service, que es un recurso de Kubernetes que te permite exponer tu aplicación al tráfico externo, ejecuta el siguiente comando
kubectl expose
:kubectl expose deployment hello-server --type=LoadBalancer --port 8080 Este comando incluye lo siguiente:
-
--port
especifica el puerto que expone el contenedor. -
type="LoadBalancer"
crea un balanceador de cargas de Compute Engine para tu contenedor.
Resultado esperado:
service/hello-server exposed -
-
Para inspeccionar el objeto Service
hello-server
, ejecutakubectl get
:kubectl get service Resultado esperado:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE hello-server loadBalancer 10.39.244.36 35.202.234.26 8080:31991/TCP 65s kubernetes ClusterIP 10.39.240.1 433/TCP 5m13s Nota: Generar una dirección IP externa podría tardar un minuto. Ejecuta el comando anterior de nuevo si el estado de la columna EXTERNAL-IP
es pending. -
Para ver la aplicación desde tu navegador web, abre una pestaña nueva y escribe la siguiente dirección, pero reemplaza
[EXTERNAL IP]
por laEXTERNAL-IP
dehello-server
.http://[EXTERNAL-IP]:8080 Resultado esperado: En la pestaña del navegador, se muestra el mensaje Hello world, así como la versión y el nombre de host.
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear un objeto Service de Kubernetes
Tarea 5: Borra el clúster
-
Para borrar el clúster, ejecuta el siguiente comando:
gcloud container clusters delete lab-cluster -
Cuando se te indique, escribe Y para confirmar.
Borrar el clúster puede llevar unos minutos. Para obtener más información sobre la eliminación de clústeres de Google Kubernetes Engine (GKE), consulta el artículo Borra un clúster.
Haz clic en Revisar mi progreso para verificar el objetivo.
Borrar el clúster
¡Felicitaciones!
Acabas de implementar una aplicación alojada en contenedores en Google Kubernetes Engine. En este lab, creaste un clúster de GKE, implementaste una aplicación alojada en contenedores en el clúster y lo borraste. Ahora puedes aplicar este conocimiento para implementar tus propias aplicaciones con GKE.
Próximos pasos y más información
Este lab forma parte de una serie llamada Qwik Starts. Estos labs están diseñados para brindarte un poco de experiencia usando las distintas funciones disponibles en Google Cloud. Busca “Qwik Starts” en el catálogo de Google Cloud Skills Boost para elegir el siguiente lab en el que quieras participar.
Capacitación y certificación de Google Cloud
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Última actualización del manual: 13 de febrero de 2024
Prueba más reciente del lab: 26 de enero de 2024
Copyright 2024 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.