Configure o Pub/Sub no centro de design de aplicações

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

Este documento descreve as associações e os parâmetros que pode configurar quando usa o Centro de design de apps para criar um tópico e uma subscrição do Pub/Sub. Os parâmetros de configuração baseiam-se no módulo do Terraform terraform-google-pubsub.

Ligações de componentes

A tabela seguinte inclui os componentes que pode ligar a um tópico ou uma subscrição do Pub/Sub, e as atualizações resultantes à sua aplicação e ao respetivo código Terraform gerado.

Componente ligado

Atualizações de aplicações

Informações gerais

Modelo de instância do Compute Engine

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

Conta de serviço

  • A conta de serviço pode gerir tópicos do Pub/Sub e obter mensagens de subscrições.
  • A função roles/pubsub.editor é adicionada à conta de serviço.
  • O nome da conta de serviço e as informações de email são adicionados à subscrição de obtenção do Pub/Sub.
Controlo de acesso com o IAM

BigQuery

  • A subscrição do Pub/Sub pode escrever mensagens no conjunto de dados do BigQuery.
  • As informações do conjunto de dados do BigQuery são adicionadas aos campos de subscrição do BigQuery.
Subscrições 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.
  • As funções roles/pubsub.publisher e roles/pubsub.subscriber são adicionadas à conta de serviço do Cloud Run.
  • O serviço do Cloud Run é adicionado aos campos de subscrição push e pull do Pub/Sub.
Use o tutorial do Pub/Sub com o Cloud Run

Cloud Storage

  • A subscrição do Pub/Sub pode escrever mensagens no contentor do Cloud Storage.
  • As informações do contentor do Cloud Storage são adicionadas aos campos da subscrição do Pub/Sub.
Subscrições do Cloud Storage

Parâmetros de configuração obrigatórios

Se o seu modelo incluir um componente do Pub/Sub, tem de configurar os seguintes parâmetros antes da implementação.

Nome do parâmetro

Descrição e restrições

Informações gerais

ID do projeto

O projeto onde quer implementar o recurso do Pub/Sub.

Configure os componentes

Topic

name Diretrizes para atribuir um nome a um tópico, uma subscrição, um esquema ou uma captura instantânea

Parâmetros de configuração opcionais

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

Funcionalidade

Nome do parâmetro

Informações de descrição e restrição

Informações gerais

Criar tópico Por predefinição, é criado um tópico. Desmarque a caixa de verificação se não quiser criar um tópico. Crie um tópico
Crie subscrições Por predefinição, é criada uma subscrição. Desmarque a caixa de verificação se não quiser criar uma subscrição. Vista geral da subscrição

Etiquetas de tópicos

Chave etiquetas Relatórios de utilização com etiquetas
Valor etiquetas Relatórios de utilização com etiquetas

Subscrições de emissão

Nome name Diretrizes para atribuir um nome a um tópico, uma subscrição, um esquema ou uma captura instantânea
Ack Deadline Seconds ackDeadlineSeconds Prazo de confirmação
Push Endpoint pushEndpoint Pontos finais
X-goog-version O formato da API Pub/Sub da mensagem enviada por push. Por exemplo, v1beta1. atributos
Email da conta de serviço do OIDC serviceAccountEmail Autenticação
Público-alvo público-alvo Autenticação
Política de Expiração expirationPolicy Período de validade
Tópico de mensagens não entregues deadLetterTopic Tópico de mensagens não entregues
Retenha mensagens com confirmação retainAckedMessages Mantenha as mensagens reconhecidas
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 não entregues
Recuo máximo maximumBackoff Política de repetição
Minimum Backoff minimumBackoff Política de repetição
Filtro filtro Filtro de subscrição
Ative a ordenação de mensagens enableMessageOrdering Ordenação de mensagens

Subscrições de obtenção

Nome name Diretrizes para atribuir um nome a um tópico, uma subscrição, um esquema ou uma captura instantânea
Ack Deadline Seconds ackDeadlineSeconds Prazo de confirmação
Tópico de mensagens não entregues deadLetterTopic Tópico de mensagens não entregues
Máximo de tentativas de entrega maxDeliveryAttempts Tópico de mensagens não entregues
Retenha mensagens com confirmação retainAckedMessages Mantenha as mensagens reconhecidas
Duração da retenção de mensagens messageRetentionDuration Duração da retenção de mensagens
Recuo máximo maximumBackoff Política de repetição
Minimum Backoff minimumBackoff Política de repetição
Filtro filtro Filtro de subscrição
Ative a ordenação de mensagens enableMessageOrdering Ordenação de mensagens
Conta de serviço
Ative o fornecimento exatamente uma vez enableExactlyOnceDelivery Entrega exatamente uma vez

Subscrições do BigQuery

Nome name Diretrizes para atribuir um nome a um tópico, uma subscrição, um esquema ou uma captura instantânea
Tabela table Crie subscrições do BigQuery
Use o esquema de tópicos useTopicSchema Use a subscrição de tópicos
Use o esquema de tabelas useTableSchema Use o esquema de tabelas
Escreva metadados writeMetadata Escreva metadados
Drop Unknown Fields dropUnknownFields Elimine campos desconhecidos
Ack Deadline Seconds ackDeadlineSeconds Prazo de confirmação
Retenha mensagens com confirmação retainAckedMessages Mantenha as mensagens reconhecidas
Duração da retenção de mensagens messageRetentionDuration Duração da retenção de mensagens
Ative a ordenação de mensagens enableMessageOrdering Ordenação de mensagens
Política de Expiração expirationPolicy Período de validade
Filtro filtro Filtro de subscrição
Tópico de mensagens não entregues deadLetterTopic Tópico de mensagens não entregues
Recuo máximo maximumBackoff Política de repetição
Minimum Backoff minimumBackoff Política de repetição

Subscrições do Cloud Storage

Nome name Diretrizes para atribuir um nome a um tópico, uma subscrição, um esquema ou uma captura instantânea
Segmento segmento Nome do contentor
Prefixo do nome do ficheiro filenamePrefix Prefixo, sufixo e data/hora do nome do ficheiro
Sufixo do nome do ficheiro filenameSuffix Prefixo, sufixo e data/hora do nome do ficheiro
Formato de data/hora do nome do ficheiro filenameDatetimeFormat Prefixo, sufixo e data/hora do nome do ficheiro
Duração máxima maxDuration Criação de lotes de ficheiros
Max Bytes maxBytes Criação de lotes de ficheiros
Máximo de mensagens maxMessages Criação de lotes de ficheiros
Formato de saída textConfig ou avroConfig Formato de ficheiro
Escreva metadados writeMetadata Escreva metadados
Use o esquema de tópicos useTopicSchema Use o esquema de tópicos
Ack Deadline Seconds ackDeadlineSeconds Prazo de confirmação
Retenha mensagens com confirmação Mantenha as mensagens reconhecidas
Duração da retenção de mensagens messageRetentionDuration Duração da retenção de mensagens
Ative a ordenação de mensagens enableMessageOrdering Ordenação de mensagens
Política de Expiração expirationPolicy Período de validade
Filtro filtro Filtro de subscrições
Tópico de mensagens não entregues deadLetterTopic Tópico de mensagens não entregues
Recuo máximo maximumBackoff Política de repetição
Minimum Backoff minimumBackoff Política de repetição

Etiquetas de subscrição

Chave etiquetas Relatórios de utilização com etiquetas
Valor etiquetas Relatórios de utilização com etiquetas
Duração da retenção de mensagens de tópicos topicMessageRetentionDuration Duração da retenção de mensagens
Nome da chave do KMS do tópico kmsKeyName Use uma chave de encriptação gerida pelo cliente (CMEK)
Conceda funções do projeto do BigQuery Por predefinição, as funções Leitor de metadados do BigQuery e Editor de dados do BigQuery são concedidas à conta de serviço do Pub/Sub predefinida. Se não quiser conceder estas funções, desmarque a caixa de verificação. Atribua funções do BigQuery à conta de serviço do Pub/Sub
Grant Token Creator Por predefinição, a função Criador de tokens de contas de serviço é concedida à conta de serviço do Pub/Sub predefinida. Se não quiser conceder esta função, desmarque a caixa de verificação. Configure 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