En este documento, se describe cómo crear una suscripción de extracción. Puedes usar la consola de Google Cloud, Google Cloud CLI, la biblioteca cliente o la API de Pub/Sub para crear una suscripción de extracción.
Antes de comenzar
- Obtén más información sobre las suscripciones.
- Evalúa si tu empresa requiere una suscripción de extracción.
- Comprende cómo funcionan las suscripciones de extracción.
Roles y permisos requeridos
Para crear una suscripción, debes configurar el control de acceso en a nivel de proyecto. También necesitas permisos a nivel de recursos si tus suscripciones y los temas están en proyectos diferentes, como lo analizamos más adelante en esta sección.
Para obtener los permisos que necesitas para crear suscripciones de extracción,
pídele a tu administrador que te otorgue el rol de IAM de
Editor de Pub/Sub (roles/pubsub.editor
) en el proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para crear suscripciones de extracción. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para crear suscripciones de extracción:
-
Extraer de una suscripción:
pubsub.subscriptions.consume
-
Crea una suscripción:
pubsub.subscriptions.create
-
Borra una suscripción:
pubsub.subscriptions.delete
-
Obtén una suscripción:
pubsub.subscriptions.get
-
Muestra una suscripción:
pubsub.subscriptions.list
-
Actualizar una suscripción:
pubsub.subscriptions.update
-
Adjunta una suscripción a un tema:
pubsub.topics.attachSubscription
-
Obtén la política de IAM para una suscripción:
pubsub.subscriptions.getIamPolicy
-
Configura la política de IAM para una suscripción:
pubsub.subscriptions.setIamPolicy
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Si necesitas crear recursos de
suscripciones en un proyecto que están asociadas con un tema de otro
solicita a tu administrador de temas que también te otorgue el Editor de Pub/Sub
(roles/pubsub.editor)
rol de IAM en el tema.
Extrae propiedades de suscripción
Cuando configuras una suscripción de extracción, puedes especificar las siguientes propiedades.
Propiedades comunes
Obtén más información sobre las propiedades de suscripción comunes que puedes configurar en todas las suscripciones.
Entrega “exactamente una vez”
Entrega exactamente una vez. Si se configura, Pub/Sub entrega garantías de entrega exactamente una vez. Si no se especifica, la suscripción admite la entrega al menos una vez para cada mensaje.
Crea una suscripción de extracción
En los siguientes ejemplos, se muestra cómo crear una suscripción con extracción con la configuración predeterminada proporcionada.
Console
Para crear una suscripción de extracción, completa los siguientes pasos.
En la consola de Google Cloud, ve a la página Suscripciones.
- Haz clic en Crear suscripción.
En el campo ID de suscripción, ingresa un nombre.
Para obtener información sobre cómo asignar un nombre a una suscripción, consulta los Lineamientos para asignar un nombre a un tema o una suscripción.
- Elige o crea un tema desde el menú desplegable. La suscripción recibe mensajes del tema.
- Conserva el Tipo de entrega como Extracción.
- Conserva todos los demás valores predeterminados.
- Haz clic en Crear.
Desde la sección Temas también puedes crear una suscripción. Este acceso directo es útil para asociar temas a suscripciones.
En la consola de Google Cloud, ve a la página Temas.
- Haz clic en more_vert junto al tema en el que deseas crear una suscripción.
- En el menú contextual, selecciona Crear suscripción (Create subscription).
Ingresa el ID de suscripción.
Para obtener información sobre cómo asignarle un nombre a una suscripción, consulta Lineamientos para asignar un nombre a un tema o una suscripción
- Conserva el Tipo de entrega como Extracción.
- Conserva todos los demás valores predeterminados.
- Haz clic en Crear.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Para crear una suscripción de extracción, ejecuta el siguiente comando:
Comando
gcloud pubsub subscriptions create
.gcloud pubsub subscriptions create SUBSCRIPTION_ID --topic=TOPIC_ID
Reemplaza lo siguiente:
SUBSCRIPTION_ID
: Es el nombre o el ID de tu nueva suscripción de extracción.TOPIC_ID
: Es el nombre o el ID de tu tema.
REST
Para crear una suscripción de extracción, usa el método projects.subscriptions.create
:
Solicitud:
La solicitud debe autenticarse con un token de acceso en la
Encabezado Authorization
. Para obtener un token de acceso para las credenciales predeterminadas actuales de la aplicación, usa el siguiente comando: gcloud auth application-default print-access-token
.
PUT https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID Authorization: Bearer ACCESS_TOKEN
Cuerpo de la solicitud:
{ "topic": "projects/PROJECT_ID/topics/TOPIC_ID" }
Aquí:
Respuesta:
{ "name": "projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID", "topic": "projects/PROJECT_ID/topics/TOPIC_ID", "pushConfig": {}, "ackDeadlineSeconds": 10, "messageRetentionDuration": "604800s", "expirationPolicy": { "ttl": "2678400s" } }
C++
Antes de probar esta muestra, sigue las instrucciones de configuración de C++ que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de C++ de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
C#
Antes de probar esta muestra, sigue las instrucciones de configuración de C# que se encuentran en el Guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de C# de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Go
Antes de probar esta muestra, sigue las instrucciones de configuración de Go que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Go de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Java
Antes de probar esta muestra, sigue las instrucciones de configuración de Java que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Para obtener más información, consulta la API de Java de Pub/Sub documentación de referencia.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Node.js
Node.js
PHP
Antes de probar esta muestra, sigue las instrucciones de configuración de PHP que encontrarás en la guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de PHP de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Python
Antes de probar esta muestra, sigue las instrucciones de configuración de Python que se encuentran en el Guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Python de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Ruby
Antes de probar esta muestra, sigue las instrucciones de configuración de Ruby que se encuentran en el Guía de inicio rápido de Pub/Sub con bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Ruby de Pub/Sub.
Para autenticarte en Pub/Sub, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para bibliotecas cliente.
Supervisa las suscripciones de extracción
Cloud Monitoring proporciona una serie de métricas para supervisar las suscripciones.
Para obtener una lista de todas las métricas disponibles relacionadas con Pub/Sub y sus descripciones, consulta la documentación de supervisión de Pub/Sub.
También puedes supervisar las suscripciones desde dentro de Pub/Sub.
¿Qué sigue?
- Crear o modificar una suscripción con los comandos de
gcloud
- Crea o modifica una suscripción con las APIs de REST.