Configurar o Pub/Sub no App Design Center

O Pub/Sub é um serviço de mensagens assíncrono e escalonável que separa os serviços que produzem mensagens dos serviços que processam essas mensagens. Para mais informações, consulte O que é o Pub/Sub?

Este documento descreve as conexões e os parâmetros que podem ser configurados ao usar o App Design Center para criar um tópico e uma assinatura do Pub/Sub. Os parâmetros de configuração são baseados no módulo do Terraform terraform-google-pubsub.

Conexões de componentes

A tabela a seguir inclui os componentes que podem ser conectados a um tópico ou assinatura do Pub/Sub, além das atualizações resultantes no aplicativo e no código do Terraform gerado.

Componente conectado

Atualizações de aplicativos

Informações prévias

Modelo de instância do Compute Engine

  • As instâncias do Compute Engine podem publicar e receber mensagens do tópico do Pub/Sub.
  • O ID do tópico do Pub/Sub é adicionado aos metadados do modelo de instância do Compute Engine.
Modelos de instância

Conta de serviço

  • A conta de serviço pode gerenciar tópicos do Pub/Sub e extrair mensagens de assinaturas.
  • O papel roles/pubsub.editor é adicionado à conta de serviço.
  • O nome da conta de serviço e as informações de e-mail são adicionados à assinatura por pull do Pub/Sub.
Controle de acesso com o IAM

BigQuery

  • A assinatura do Pub/Sub pode gravar mensagens no conjunto de dados do BigQuery.
  • As informações do conjunto de dados do BigQuery são adicionadas aos campos de assinatura do BigQuery.
Assinaturas do BigQuery

Cloud Run

  • O serviço do Cloud Run pode receber mensagens ou publicar no tópico do Pub/Sub.
  • O ID do tópico do Pub/Sub é adicionado às variáveis de ambiente do Cloud Run.
  • Os papéis roles/pubsub.publisher e roles/pubsub.subscriber são adicionados à conta de serviço do Cloud Run.
  • O serviço do Cloud Run é adicionado aos campos de assinatura push e por pull do Pub/Sub.
Tutorial Usar o Pub/Sub com o Cloud Run

Cloud Storage

  • A assinatura do Pub/Sub pode gravar mensagens no bucket do Cloud Storage.
  • As informações do bucket do Cloud Storage são adicionadas aos campos de assinatura do Pub/Sub.
Assinaturas do Cloud Storage

Parâmetros de configuração obrigatórios

Se o modelo incluir um componente do Pub/Sub, configure os parâmetros a seguir antes da implantação.

Nome do parâmetro

Descrição e restrições

Informações prévias

ID do projeto

O projeto em que você quer implantar o recurso do Pub/Sub.

Configurar componentes

Tópico

name Diretrizes para nomear um tópico, uma assinatura, um esquema ou um snapshot

Parâmetros de configuração opcionais

Os seguintes parâmetros são opcionais. Para mostrar parâmetros avançados, na área Configuração, selecione Mostrar campos avançados.

Recurso

Nome do parâmetro

Descrição e informações de restrição

Informações prévias

Criar tópico Por padrão, um tópico é criado. Desmarque a caixa de seleção se não quiser criar um tópico. Criar um tópico
Criar assinaturas Por padrão, uma assinatura é criada. Desmarque a caixa de seleção se não quiser criar uma assinatura. Visão geral das assinaturas

Marcadores de tema

Key labels Como gerar relatórios de uso com rótulos.
Valor labels Como gerar relatórios de uso com rótulos.

Assinaturas por push

Nome name Diretrizes para nomear um tópico, uma assinatura, um esquema ou um snapshot
Segundos do prazo de confirmação ackDeadlineSeconds Prazo de confirmação
Endpoint de push pushEndpoint Endpoints
X-goog-version O formato da API Pub/Sub da mensagem enviada por push. Por exemplo, v1beta1. atributos
E-mail da conta de serviço do OIDC serviceAccountEmail Authentication
Público-alvo público Authentication
Política de validade expirationPolicy Período de validade
Tópico de mensagens inativas deadLetterTopic Tópico de mensagens inativas
Manter mensagens confirmadas retainAckedMessages Reter mensagens confirmadas
Duração da retenção de mensagens messageRetentionDuration Duração da retenção de mensagens
Máximo de tentativas de entrega maxDeliveryAttempts Tópico de mensagens inativas
Espera máxima maximumBackoff Política de repetição
Espera mínima minimumBackoff Política de repetição
Filtrar filter Filtro de assinatura
Ativar a ordem das mensagens enableMessageOrdering Ordem das mensagens

Assinaturas por pull

Nome name Diretrizes para nomear um tópico, uma assinatura, um esquema ou um snapshot
Segundos do prazo de confirmação ackDeadlineSeconds Prazo de confirmação
Tópico de mensagens inativas deadLetterTopic Tópico de mensagens inativas
Máximo de tentativas de entrega maxDeliveryAttempts Tópico de mensagens inativas
Manter mensagens confirmadas retainAckedMessages Reter mensagens confirmadas
Duração da retenção de mensagens messageRetentionDuration Duração da retenção de mensagens
Espera máxima maximumBackoff Política de repetição
Espera mínima minimumBackoff Política de repetição
Filtrar filter Filtro de assinatura
Ativar a ordem das mensagens enableMessageOrdering Ordem das mensagens
Conta de serviço
Ativar a entrega exatamente uma vez enableExactlyOnceDelivery Entrega exatamente uma vez

Assinaturas do BigQuery

Nome name Diretrizes para nomear um tópico, uma assinatura, um esquema ou um snapshot
Tabela table Criar assinaturas do BigQuery
Usar esquema de tópicos useTopicSchema Usar a assinatura de tópico
Usar esquema de tabela useTableSchema Usar esquema de tabela
Gravar metadados writeMetadata Gravar metadados
Remover campos desconhecidos dropUnknownFields Remover campos desconhecidos
Segundos do prazo de confirmação ackDeadlineSeconds Prazo de confirmação
Manter mensagens confirmadas retainAckedMessages Reter mensagens confirmadas
Duração da retenção de mensagens messageRetentionDuration Duração da retenção de mensagens
Ativar a ordem das mensagens enableMessageOrdering Ordem das mensagens
Política de validade expirationPolicy Período de validade
Filtrar filter Filtro de assinatura
Tópico de mensagens inativas deadLetterTopic Tópico de mensagens inativas
Espera máxima maximumBackoff Política de repetição
Espera mínima minimumBackoff Política de repetição

Assinaturas do Cloud Storage

Nome name Diretrizes para nomear um tópico, uma assinatura, um esquema ou um snapshot
Bucket bucket Nome do bucket
Prefixo do nome de arquivo filenamePrefix Prefixo, sufixo e data/hora do nome de arquivo
Sufixo do nome de arquivo filenameSuffix Prefixo, sufixo e data/hora do nome de arquivo
Formato de data/hora do nome do arquivo filenameDatetimeFormat Prefixo, sufixo e data/hora do nome de arquivo
Duração máxima maxDuration Lote de arquivos
Bytes máximos maxBytes Lote de arquivos
Máximo de mensagens maxMessages Lote de arquivos
Formato de saída textConfig ou avroConfig Formato do arquivo
Gravar metadados writeMetadata Gravar metadados
Usar esquema de tópicos useTopicSchema Usar esquema de tópicos
Segundos do prazo de confirmação ackDeadlineSeconds Prazo de confirmação
Manter mensagens confirmadas Reter mensagens confirmadas
Duração da retenção de mensagens messageRetentionDuration Duração da retenção de mensagens
Ativar a ordem das mensagens enableMessageOrdering Ordem das mensagens
Política de validade expirationPolicy Período de validade
Filtrar filter Filtro de assinatura
Tópico de mensagens inativas deadLetterTopic Tópico de mensagens inativas
Espera máxima maximumBackoff Política de repetição
Espera mínima minimumBackoff Política de repetição

Rótulos de assinatura

Key labels Como gerar relatórios de uso com rótulos.
Valor labels Como gerar relatórios de uso com rótulos.
Duração da retenção da mensagem de tópico topicMessageRetentionDuration Duração da retenção de mensagens
Nome da chave do KMS do tópico kmsKeyName Usar uma chave de criptografia gerenciada pelo cliente (CMEK)
Conceder papéis do projeto do BigQuery Por padrão, as funções Leitor de metadados do BigQuery e Editor de dados do BigQuery são concedidas à conta de serviço padrão do Pub/Sub. Se não quiser conceder essas funções, desmarque a caixa de seleção. Atribuir papéis do BigQuery à conta de serviço do Pub/Sub
Criador de token de benefício Por padrão, o papel Criador de token da conta de serviço é concedido à conta de serviço padrão do Pub/Sub. Se não quiser conceder essa função, desmarque a caixa de seleção. Configurar a autenticação para o Pub/Sub

Esquema

Nome name Informações importantes sobre esquemas
Tipo type Tipos de esquemas
Definição definição Tipos de esquemas
Codificação codificação Diretrizes para associar um esquema a um tópico