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 a nivel de proyecto. También necesitas permisos a nivel de recursos si tus suscripciones y temas se encuentran en proyectos diferentes, como se explica más adelante en esta sección.
Si quieres obtener los permisos que necesitas para crear suscripciones de extracción, pídele a tu administrador que te otorgue el rol de IAM 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.
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
-
Borrar una suscripción:
pubsub.subscriptions.delete
-
Obtener una suscripción:
pubsub.subscriptions.get
-
Muestra una suscripción:
pubsub.subscriptions.list
-
Actualiza una suscripción:
pubsub.subscriptions.update
-
Adjuntar una suscripción a un tema:
pubsub.topics.attachSubscription
-
Obtén la política de IAM de una suscripción:
pubsub.subscriptions.getIamPolicy
-
Configura la política de IAM para una suscripción:
pubsub.subscriptions.setIamPolicy
Es posible que también puedas obtener estos permisos con funciones personalizadas o con otras funciones predefinidas.
Si necesitas crear suscripciones de extracción en un proyecto que estén asociados con un tema de otro proyecto, pídele al administrador de temas que también te otorgue el rol de IAM (roles/pubsub.editor)
del editor de Pub/Sub en el tema.
Propiedades de la suscripción de extracción
Cuando configuras una suscripción de extracción, puedes especificar las siguientes propiedades.
Propiedades comunes
Obtén 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 entrega de extracción mediante 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 la suscripción, ingresa un nombre.
Si quieres obtener información para asignarle un nombre a una suscripción, consulta Lineamientos para asignar el nombre de un tema o una suscripción.
- Elige o crea un tema desde el menú desplegable. La suscripción recibe mensajes del tema.
- Mantén 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 para crear una suscripción.
- En el menú contextual, selecciona Crear suscripción (Create subscription).
Ingresa el ID de suscripción.
Si quieres obtener información para asignarle un nombre a una suscripción, consulta Lineamientos para asignar el nombre de un tema o una suscripción.
- Mantén el Tipo de entrega como Extracción.
- Conserva todos los demás valores predeterminados.
- Haz clic en Crear.
gcloud
-
En la consola de Google Cloud, activa Cloud Shell.
En la parte inferior de la consola de Google Cloud, se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.
-
Para crear una suscripción de extracción, ejecuta el
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 la suscripción de extracción nueva.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 se debe autenticar con un token de acceso en el encabezado Authorization
. A fin de obtener un token de acceso para las credenciales predeterminadas actuales de la aplicación, usa lo siguiente:
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 se encuentran 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 Pub/Sub C++.
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 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 Pub/Sub C#.
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 se encuentran 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 Pub/Sub Go.
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 se encuentran 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 Pub/Sub Java.
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 se encuentran 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 Pub/Sub PHP.
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 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 Pub/Sub Python.
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 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 Pub/Sub Ruby.
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.
¿Qué sigue?
- Crea o modifica una suscripción con los comandos
gcloud
. - Crea o modifica una suscripción con las APIs de REST.