arrow_back

Google Cloud Pub/Sub: Qwik Start - Línea de comandos

Unirse Acceder
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Google Cloud Pub/Sub: Qwik Start - Línea de comandos

Lab 40 minutos universal_currency_alt No cost show_chart Introductorio
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP095

Labs de autoaprendizaje de Google Cloud

Resumen

Google Cloud Pub/Sub es un servicio de mensajería para intercambiar datos de eventos entre aplicaciones y servicios. La separación de emisores y receptores permite una comunicación segura y de alta disponibilidad entre las aplicaciones escritas de forma independiente. Google Cloud Pub/Sub ofrece una mensajería duradera y de baja latencia, que los desarrolladores suelen usar para implementar flujos de trabajo asíncronos, distribuir notificaciones de eventos y transmitir datos desde varios procesos o dispositivos.

Qué aprenderás

En este lab, harás lo siguiente:

  • Aprenderás los conceptos básicos de Pub/Sub.
  • Crearás, borrarás y mostrarás una lista de temas de Pub/Sub.
  • Crearás, borrarás y mostrarás una lista de suscripciones de Pub/Sub.
  • Publicarás mensajes en un tema.
  • Usarás un suscriptor de extracción para mostrar mensajes individuales de temas.
  • Usarás un suscriptor de extracción con una marca para mostrar varios mensajes.

Requisitos previos

Este es un lab de nivel introductorio. Eso quiere decir que se da por hecho que tienes poca o ninguna experiencia con Pub/Sub. Se te enseñarán los conceptos básicos de la configuración y el uso de este servicio de Google Cloud.

Antes de realizar este lab, ten en cuenta tu nivel de competencia en Pub/Sub. A continuación, te mostramos una lista de labs más avanzados que te permitirán aplicar tus conocimientos de Pub/Sub a diferentes casos de uso y servicios de nube:

Cuando esté todo listo, desplázate hacia abajo y sigue los pasos para configurar el entorno de 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)
Nota: Usa una ventana de navegador privada o de Incógnito para ejecutar este lab. Así evitarás cualquier conflicto entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
  • Tiempo para completar el lab: Recuerda que, una vez que comienzas un lab, no puedes pausarlo.
Nota: Si ya tienes un proyecto o una cuenta personal de Google Cloud, no los uses en este lab para evitar cargos adicionales en tu cuenta.

Ahora que comenzó tu lab, accederás a la consola de Google Cloud Shell y, luego, iniciarás la herramienta de línea de comandos.

Cómo iniciar su lab y acceder a la consola de Google Cloud

  1. 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
    • Tiempo restante
    • Las credenciales temporales que debe usar para el lab
    • Otra información para completar el lab, si es necesaria
  2. Haga clic en Abrir la consola de Google. 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 ve el diálogo Elegir una cuenta, haga clic en Usar otra cuenta.
  3. Si es necesario, copie el nombre de usuario del panel Detalles del lab y péguelo en el cuadro de diálogo Acceder. Haga clic en Siguiente.

  4. Copie la contraseña del panel Detalles del lab y péguela en el cuadro de diálogo de bienvenida. Haga clic en Siguiente.

    Importante: Debe usar las credenciales del panel de la izquierda. No use sus credenciales de Google Cloud Skills Boost. Nota: Usar su propia Cuenta de Google podría generar cargos adicionales.
  5. Haga clic para avanzar por las páginas siguientes:

    • Acepte los términos y condiciones.
    • No agregue opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
    • No se registre para obtener pruebas gratuitas.

Después de un momento, se abrirá la consola de Cloud en esta pestaña.

Nota: Para ver el menú con una lista de los productos y servicios de Google Cloud, haga clic en el Menú de navegación que se encuentra en la parte superior izquierda de la pantalla. Ícono del menú de navegación

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.

  1. Haz clic en Activar Cloud Shell Ícono de 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:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

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.

  1. Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
gcloud auth list
  1. Haz clic en Autorizar.

  2. Ahora, el resultado debería verse de la siguiente manera:

Resultado:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. Puedes solicitar el ID del proyecto con este comando (opcional):
gcloud config list project

Resultado:

[core] project = <project_ID>

Resultado de ejemplo:

[core] project = qwiklabs-gcp-44776a13dea667a6 Nota: Para obtener toda la documentación de gcloud, consulta la guía con la descripción general de gcloud CLI en Google Cloud.

Conceptos básicos de Pub/Sub

Como se mencionó anteriormente, Google Cloud Pub/Sub es un servicio de mensajería global asíncrono. Hay tres términos que aparecen a menudo en Pub/Sub: temas, publicar y suscribirse.

  • Un tema es una string compartida que permite a las aplicaciones conectarse entre sí mediante un subproceso común.

  • Los publicadores envían (o publican) un mensaje a un tema de Cloud Pub/Sub.

  • Los suscriptores se “suscriben” a un tema del que extraen mensajes de la suscripción o configuran webhooks para suscripciones de envío. Los suscriptores deben confirmar la recepción de cada mensaje en el transcurso de un período configurable.

En resumen, un productor publica mensajes a un tema y un consumidor crea una suscripción a un tema para recibir mensajes de él.

Tarea 1: Temas de Pub/Sub

Pub/Sub viene preinstalado en Google Cloud Shell, por lo que no es necesario realizar instalaciones o configuraciones para comenzar a usar este servicio.

  1. Ejecuta el siguiente comando para crear un tema llamado myTopic:
gcloud pubsub topics create myTopic

Prueba la tarea completada

Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.

Crea un tema de Pub/Sub.
  1. Por si acaso, crea dos temas más, uno llamado Test1 y otro llamado Test2:
gcloud pubsub topics create Test1 gcloud pubsub topics create Test2
  1. Para ver los temas que acabas de crear, ejecuta el siguiente comando:
gcloud pubsub topics list

El resultado debería ser similar al siguiente:

name: projects/qwiklabs-gcp-3450558d2b043890/topics/myTopic --- name: projects/qwiklabs-gcp-3450558d2b043890/topics/Test2 --- name: projects/qwiklabs-gcp-3450558d2b043890/topics/Test1
  1. Es hora de limpiar. Borra Test1 y Test2. Para ello, ejecuta los siguientes comandos:
gcloud pubsub topics delete Test1 gcloud pubsub topics delete Test2
  1. Ejecuta el comando gcloud pubsub topics list una vez más para verificar que se borraron los temas:
gcloud pubsub topics list

Deberías obtener el siguiente resultado:

--- name: projects/qwiklabs-gcp-3450558d2b043890/topics/myTopic

Tarea 2: Suscripciones Pub/Sub

Ahora que estás al tanto de la creación, la visualización y el borrado de temas, es hora de trabajar con suscripciones.

  1. Ejecuta el siguiente comando para crear una suscripción que se llame mySubscription al tema myTopic:
gcloud pubsub subscriptions create --topic myTopic mySubscription

Prueba la tarea completada

Haz clic en Revisar mi progreso para verificar la tarea realizada. Si la completaste correctamente, se te otorgará una puntuación de evaluación.

Crear una suscripción de Pub/Sub
  1. Agrega otras dos suscripciones a myTopic. Ejecuta los siguientes comandos para crear las suscripciones Test1 y Test2:
gcloud pubsub subscriptions create --topic myTopic Test1 gcloud pubsub subscriptions create --topic myTopic Test2
  1. Ejecuta el siguiente comando para mostrar las suscripciones a myTopic:
gcloud pubsub topics list-subscriptions myTopic

El resultado debería ser similar al siguiente:

--- projects/qwiklabs-gcp-3450558d2b043890/subscriptions/Test2 --- projects/qwiklabs-gcp-3450558d2b043890/subscriptions/Test1 --- projects/qwiklabs-gcp-3450558d2b043890/subscriptions/mySubscription

Pon a prueba tus conocimientos

A continuación, se presentan algunas preguntas de opción múltiple para reforzar tus conocimientos de los conceptos de este lab. Trata de responderlas lo mejor posible.

  1. Ahora, borra las suscripciones Test1 y Test2. Ejecuta los siguientes comandos:
gcloud pubsub subscriptions delete Test1 gcloud pubsub subscriptions delete Test2
  1. Verifica que se borraron las suscripciones Test1 y Test2. Ejecuta el comando list-subscriptions una vez más:
gcloud pubsub topics list-subscriptions myTopic

Deberías obtener el siguiente resultado:

--- projects/qwiklabs-gcp-3450558d2b043890/subscriptions/mySubscription

Tarea 3: Cómo publicar y extraer un solo mensaje con Pub/Sub

A continuación, aprenderás a publicar un mensaje en un tema de Pub/Sub.

  1. Ejecuta el siguiente comando para publicar el mensaje "hello" en el tema que creaste con anterioridad (myTopic):
gcloud pubsub topics publish myTopic --message "Hello"
  1. Publica algunos mensajes más en myTopic. Para ello, ejecuta los siguientes comandos (reemplaza <YOUR NAME> por tu nombre y <FOOD> por un platillo que te guste):
gcloud pubsub topics publish myTopic --message "Publisher's name is <YOUR NAME>" gcloud pubsub topics publish myTopic --message "Publisher likes to eat <FOOD>" gcloud pubsub topics publish myTopic --message "Publisher thinks Pub/Sub is awesome"

A continuación, usa el comando pull para obtener los mensajes desde tu tema. El comando pull se basa en suscripciones, por lo que debería funcionar porque configuraste la suscripción llamada mySubscription al tema myTopic previamente.

  1. Usa el siguiente comando para extraer los mensajes que acabas de publicar del tema de Pub/Sub:
gcloud pubsub subscriptions pull mySubscription --auto-ack

El resultado debería ser similar al siguiente:

Tabla de tres columnas con encabezados: Data, Message_ID y Attributes. La columna Data contiene lo siguiente: Publisher likes to eat <FOOD>.

¿Qué sucede aquí? Publicaste 4 mensajes en tu tema, pero solo se muestra 1.

En este punto es importante tener en cuenta un par de funciones del comando pull que a menudo confunden a los desarrolladores:

  • Si se usa el comando pull sin marcas, solo se mostrará un mensaje, incluso si está suscrito a un tema que tiene más mensajes.
  • Una vez que se muestra un mensaje individual desde un comando pull basado en una suscripción, no podrás acceder a ese mensaje nuevamente con este comando.
  1. Para comprender mejor a qué se refiere el segundo punto, ejecuta el último comando tres veces más. Verás que se mostrarán los otros mensajes que publicaste antes.

  2. Ahora, ejecuta el comando por cuarta vez. Obtendrás el siguiente resultado (ya que no había nada más para mostrar):

gcpstaging20394_student@cloudshell:~ (qwiklabs-gcp-3450558d2b043890)$ gcloud pubsub subscriptions pull mySubscription --auto-ack Listed 0 items.

En la última sección, aprenderás cómo extraer varios mensajes desde un tema con una marca o flag.

Tarea 4: Cómo extraer todos los mensajes desde las suscripciones con Pub/Sub

Ya que extrajiste todos los mensajes desde tu tema en el último ejemplo, propaga contenido en myTopic con unos cuantos mensajes más.

  1. Ejecuta los siguientes comandos:
gcloud pubsub topics publish myTopic --message "Publisher is starting to get the hang of Pub/Sub" gcloud pubsub topics publish myTopic --message "Publisher wonders if all messages will be pulled" gcloud pubsub topics publish myTopic --message "Publisher will have to test to find out"
  1. Agrega una marca al comando para que puedas obtener los tres mensajes en una sola solicitud.

Es posible que no lo hayas notado, pero estuviste usando una marca en los ejemplos anteriores: --auto-ack, que es parte del comando pull. Esta marca da formato a tus mensajes extraídos para que se muestren en el cuadro que ves.

limit es otra marca que configura un límite superior para la cantidad de mensajes que vas a extraer.

  1. Espera un minuto para que se creen los temas. Ejecuta el comando pull con la marca limit:
gcloud pubsub subscriptions pull mySubscription --auto-ack --limit=3

El resultado debería ser similar al siguiente:

Tabla de tres columnas con los siguientes encabezados: Data, Message_ID y Attributes. La columna Data contiene tres líneas de datos.

Ahora ya sabes cómo agregar marcas a un comando de Pub/Sub para obtener un grupo más grande de mensajes. Estás en buen camino para convertirte en un experto en Pub/Sub.

Felicitaciones

En este lab, aprendiste los conceptos básicos de los temas y las suscripciones de Pub/Sub, además del comando pull y las marcas.

Finaliza la Quest

Este lab de autoaprendizaje forma parte de la Quest Baseline: Infrastructure. Una Quest es una serie de labs relacionados que forman una ruta de aprendizaje. Si completas esta Quest, obtendrás una insignia como reconocimiento por tu logro. Puedes hacer públicas tus insignias y agregar vínculos a ellas en tu currículum en línea o en tus cuentas de redes sociales. Inscríbete en esta Quest y obtén un crédito inmediato de realización. Consulta el catálogo de Google Cloud Skills Boost para ver todas las Quests disponibles.

Completa el próximo lab

Este lab forma parte de una serie llamada Qwik Starts. Estos labs están diseñados para ofrecerte una visión general de las numerosas funciones disponibles en Google Cloud. Busca “Qwik Starts” en el catálogo de labs para elegir el siguiente lab en el que desees 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: 25 de mayo de 2023

Prueba más reciente del lab: 25 de mayo de 2023

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.