GSP821

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.
Esto es lo que aprenderás:
En este lab, aprenderás a hacer lo siguiente:
- Implementa una aplicación en el clúster de GKE
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, escalado 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:
Ahora que tienes un conocimiento básico de Kubernetes, aprenderás a implementar una aplicación alojada en contenedores con GKE en menos de 15 minutos. Sigue los pasos que se indican a continuación para configurar el entorno de tu lab.
Configuración y requisitos
- Los labs se cronometran y no se pueden pausar. El cronómetro comienza a funcionar cuando haces clic en Comenzar lab.
- La terminal de Cloud incluida está preconfigurada con el SDK de gcloud.
- Usa la terminal para ejecutar comandos y, luego, haz clic en Revisar mi progreso para verificar tu trabajo.
Recurso preconfigurado:
- Tienes un clúster de GKE creado previamente para este lab llamado lab-cluster.
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 terminal de nube, ejecuta los siguientes comandos.
-
Configura la región de procesamiento predeterminada:
gcloud config set compute/region {{{project_0.default_region | "REGION"}}}
Resultado esperado:
Updated property [compute/region].
-
Configura la zona de procesamiento predeterminada:
gcloud config set compute/zone {{{project_0.default_zone | "Zone"}}}
Resultado esperado:
Updated property [compute/zone].
Tarea 2: Obtén las credenciales de autenticación para el clúster
Necesitas credenciales de autenticación para interactuar con el clúster.
-
Usa el siguiente comando de gcloud para recuperar las credenciales del clúster:
gcloud container clusters get-credentials lab-cluster
Resultado esperado:
Fetching cluster endpoint and auth data.
kubeconfig entry generated for lab-cluster.
Este comando se usa para autenticar tu cliente kubectl en un clúster específico de Google Kubernetes Engine (GKE) para que puedas interactuar con el clúster. Este comando recupera las credenciales del clúster y actualiza tu configuración de kubectl con la información necesaria.
Tarea 3: Implementa una aplicación en el clúster de GKE
Ahora puedes implementar una aplicación alojada en contenedores en el clúster. En este lab, implementará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 contenedor hello-app, ejecuta el siguiente comando kubectl 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. En este caso, --image especifica la imagen de contenedor que se desea implementar. 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, ejecuta kubectl 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 puede 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 la EXTERNAL-IP de hello-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
¡Felicitaciones!
Acabas de implementar una aplicación alojada en contenedores en Google Kubernetes Engine. En este lab, implementaste una aplicación alojada en contenedores en el clúster de GKE. Ahora puedes aplicar este conocimiento para implementar tus propias aplicaciones con GKE.
Próximos pasos y más información
Obtén más información sobre Google Kubernetes Engine:
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: 17 de enero de 2025
Prueba más reciente del lab: 19 de noviembre de 2024
Copyright 2025 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.