Configurar Pub/Sub en Application Design Center

Pub/Sub es un servicio de mensajería asíncrono y escalable que desacopla los servicios que producen mensajes de los servicios que los procesan. Para obtener más información, consulta ¿Qué es Pub/Sub?

En este documento se describen las conexiones y los parámetros que puedes configurar al usar App Design Center para crear un tema y una suscripción de Pub/Sub. Los parámetros de configuración se basan en el módulo de Terraform terraform-google-pubsub.

Conexiones de componentes

En la siguiente tabla se incluyen los componentes que puede conectar a un tema o una suscripción de Pub/Sub, así como las actualizaciones resultantes de su aplicación y su código de Terraform generado.

Componente conectado

Actualizaciones de aplicaciones

Información general

Plantilla de instancia de Compute Engine

  • Las instancias de Compute Engine pueden publicar y recibir mensajes del tema de Pub/Sub.
  • El ID del tema de Pub/Sub se añade a los metadatos de la plantilla de instancia de Compute Engine.
Plantillas de instancias

Cuenta de servicio

  • La cuenta de servicio puede gestionar temas de Pub/Sub y extraer mensajes de suscripciones.
  • El rol roles/pubsub.editor se añade a la cuenta de servicio.
  • El nombre de la cuenta de servicio y la información del correo se añaden a la suscripción pull de Pub/Sub.
Control de acceso con la gestión de identidades y accesos

BigQuery

  • La suscripción de Pub/Sub puede escribir mensajes en el conjunto de datos de BigQuery.
  • La información del conjunto de datos de BigQuery se añade a los campos de suscripción de BigQuery.
Suscripciones de BigQuery

Cloud Run

  • El servicio de Cloud Run puede recibir mensajes o publicar en el tema de Pub/Sub.
  • El ID del tema de Pub/Sub se añade a las variables de entorno de Cloud Run.
  • Los roles roles/pubsub.publisher y roles/pubsub.subscriber se añaden a la cuenta de servicio de Cloud Run.
  • El servicio de Cloud Run se añade a los campos de suscripción de inserción y extracción de Pub/Sub.
Tutorial para usar Pub/Sub con Cloud Run

Cloud Storage

  • La suscripción de Pub/Sub puede escribir mensajes en el segmento de Cloud Storage.
  • La información del segmento de Cloud Storage se añade a los campos de la suscripción de Pub/Sub.
Suscripciones a Cloud Storage

Parámetros de configuración obligatorios

Si tu plantilla incluye un componente de Pub/Sub, debes configurar los siguientes parámetros antes de implementarla.

Nombre del parámetro

Descripción y restricciones

Información general

ID del proyecto

El proyecto en el que quieres implementar el recurso de Pub/Sub.

Configurar componentes

Tema

name Directrices para asignar nombres a temas, suscripciones, esquemas o capturas

Parámetros de configuración opcionales

Los siguientes parámetros son opcionales. Para mostrar los parámetros avanzados, en el área Configuración, selecciona Mostrar campos avanzados.

Función

Nombre del parámetro

Descripción e información de las restricciones

Información general

Crear tema De forma predeterminada, se crea un tema. Desmarca la casilla si no quieres crear un tema. Crear un tema
Crear suscripciones De forma predeterminada, se crea una suscripción. Desmarca la casilla si no quieres crear una suscripción. Resumen de la suscripción

Etiquetas de temas

Clave labels Crear informes de uso con etiquetas
Valor labels Crear informes de uso con etiquetas

Suscripciones push

Nombre name Directrices para asignar nombres a temas, suscripciones, esquemas o capturas
Ack Deadline Seconds ackDeadlineSeconds Fecha límite de confirmación
Push Endpoint pushEndpoint Endpoints
X-goog-version El formato de la API Pub/Sub del mensaje insertado. Por ejemplo, v1beta1. atributos
Correo de la cuenta de servicio de OIDC serviceAccountEmail Autenticación
Audiencia audiencia Autenticación
Política de caducidad expirationPolicy Periodo de vencimiento
Tema de mensajes fallidos deadLetterTopic Tema de mensajes fallidos
Conservar mensajes confirmados retainAckedMessages Conservar mensajes confirmados
Duración de conservación de mensajes messageRetentionDuration Periodo de retención del mensaje
Intentos de entrega máximos maxDeliveryAttempts Tema de mensajes fallidos
Tiempo de espera máximo maximumBackoff Política de reintentos
Tiempo de espera mínimo minimumBackoff Política de reintentos
Filtro filter Filtro de suscripciones
Habilitar la ordenación de mensajes enableMessageOrdering Ordenación de mensajes

Suscripciones de extracción

Nombre name Directrices para asignar nombres a temas, suscripciones, esquemas o capturas
Ack Deadline Seconds ackDeadlineSeconds Fecha límite de confirmación
Tema de mensajes fallidos deadLetterTopic Tema de mensajes fallidos
Intentos de entrega máximos maxDeliveryAttempts Tema de mensajes fallidos
Conservar mensajes confirmados retainAckedMessages Conservar mensajes confirmados
Duración de conservación de mensajes messageRetentionDuration Periodo de retención del mensaje
Tiempo de espera máximo maximumBackoff Política de reintentos
Tiempo de espera mínimo minimumBackoff Política de reintentos
Filtro filter Filtro de suscripciones
Habilitar la ordenación de mensajes enableMessageOrdering Ordenación de mensajes
Cuenta de servicio
Habilitar la entrega exactamente una vez enableExactlyOnceDelivery Entrega exactamente una vez

Suscripciones de BigQuery

Nombre name Directrices para asignar nombres a temas, suscripciones, esquemas o capturas
Tabla tabla Crear suscripciones de BigQuery
Usar el esquema de temas useTopicSchema Usar la suscripción a temas
Usar el esquema de la tabla useTableSchema Usar el esquema de tabla
Escribir metadatos writeMetadata Escribir metadatos
Eliminar campos desconocidos dropUnknownFields Eliminar campos desconocidos
Ack Deadline Seconds ackDeadlineSeconds Fecha límite de confirmación
Conservar mensajes confirmados retainAckedMessages Conservar mensajes confirmados
Duración de conservación de mensajes messageRetentionDuration Periodo de retención del mensaje
Habilitar la ordenación de mensajes enableMessageOrdering Ordenación de mensajes
Política de caducidad expirationPolicy Periodo de vencimiento
Filtro filter Filtro de suscripciones
Tema de mensajes fallidos deadLetterTopic Tema de mensajes fallidos
Tiempo de espera máximo maximumBackoff Política de reintentos
Tiempo de espera mínimo minimumBackoff Política de reintentos

Suscripciones de Cloud Storage

Nombre name Directrices para asignar nombres a temas, suscripciones, esquemas o capturas
Categoría segmento Nombre del segmento
Prefijo de nombre de archivo filenamePrefix Prefijo, sufijo y fecha y hora del nombre de archivo
Sufijo del nombre de archivo filenameSuffix Prefijo, sufijo y fecha y hora del nombre de archivo
Formato de fecha y hora del nombre de archivo filenameDatetimeFormat Prefijo, sufijo y fecha y hora del nombre de archivo
Duración máxima maxDuration Procesamiento por lotes de archivos
Bytes máx. maxBytes Procesamiento por lotes de archivos
Mensajes máximos maxMessages Procesamiento por lotes de archivos
Formato de salida textConfig o avroConfig Formato de archivo
Escribir metadatos writeMetadata Escribir metadatos
Usar el esquema de temas useTopicSchema Usar el esquema de temas
Ack Deadline Seconds ackDeadlineSeconds Fecha límite de confirmación
Conservar mensajes confirmados Conservar mensajes confirmados
Duración de conservación de mensajes messageRetentionDuration Periodo de retención del mensaje
Habilitar la ordenación de mensajes enableMessageOrdering Ordenación de mensajes
Política de caducidad expirationPolicy Periodo de vencimiento
Filtro filter Filtro de suscripciones
Tema de mensajes fallidos deadLetterTopic Tema de mensajes fallidos
Tiempo de espera máximo maximumBackoff Política de reintentos
Tiempo de espera mínimo minimumBackoff Política de reintentos

Etiquetas de suscripción

Clave labels Crear informes de uso con etiquetas
Valor labels Crear informes de uso con etiquetas
Duración de conservación de mensajes del tema topicMessageRetentionDuration Periodo de retención del mensaje
Nombre de clave KMS del tema kmsKeyName Usar una clave de cifrado gestionada por el cliente (CMEK)
Conceder roles de proyecto de BigQuery De forma predeterminada, los roles Lector de metadatos de BigQuery y Editor de datos de BigQuery se asignan a la cuenta de servicio predeterminada de Pub/Sub. Si no quieres conceder estos roles, desmarca la casilla. Asignar roles de BigQuery a la cuenta de servicio de Pub/Sub
Grant Token Creator De forma predeterminada, el rol Creador de tokens de cuenta de servicio se asigna a la cuenta de servicio de Pub/Sub predeterminada. Si no quieres conceder este rol, desmarca la casilla. Configurar la autenticación de Pub/Sub

Esquema

Nombre name Información importante sobre los esquemas
Tipo type Tipos de esquemas
Definición definición Tipos de esquemas
Codificación codificación Directrices para asociar un esquema a un tema