Pub/Sub

O conetor do Cloud Pub/Sub permite-lhe realizar operações de inserção, eliminação, atualização e leitura em dados do Google Cloud Pub/Sub.

Antes de começar

Antes de usar o conector do Pub/Sub, conclua as seguintes tarefas:

  • No seu projeto do Google Cloud:
    • Certifique-se de que a conetividade de rede está configurada. Para obter informações sobre padrões de rede, consulte o artigo Conetividade de rede.
    • Conceda a função IAM roles/connectors.admin ao utilizador que está a configurar o conetor.
    • Conceda as seguintes funções de IAM à conta de serviço que quer usar para o conector:
      • roles/pubsub.publisher

      Uma conta de serviço é um tipo especial de Conta Google destinada a representar um utilizador não humano que precisa de autenticação e autorização para aceder a dados nas APIs Google. Se não tiver uma conta de serviço, tem de criar uma. O conector e a conta de serviço têm de pertencer ao mesmo projeto. Para mais informações, consulte Criar uma conta de serviço.

    • Ative os seguintes serviços:
      • secretmanager.googleapis.com (Secret Manager API)
      • connectors.googleapis.com (API Connectors)

      Para saber como ativar serviços, consulte o artigo Ativar serviços.

    Se estes serviços ou autorizações não tiverem sido ativados anteriormente para o seu projeto, é-lhe pedido que os ative quando configurar o conector.

Configure o conetor

Uma associação é específica de uma origem de dados. Isto significa que, se tiver muitas origens de dados, tem de criar uma associação separada para cada origem de dados. Para criar uma associação, faça o seguinte:

  1. Na Cloud Console, aceda à página Integration Connectors > Ligações e, de seguida, selecione ou crie um projeto do Google Cloud.

    Aceda à página Ligações

  2. Clique em + CRIAR NOVO para abrir a página Criar associação.
  3. Na secção Localização, escolha a localização para a ligação.
    1. Região: selecione uma localização na lista pendente.

      Para ver a lista de todas as regiões suportadas, consulte o artigo Localizações.

    2. Clique em SEGUINTE.
  4. Na secção Detalhes da associação, conclua o seguinte:
    1. Conetor: selecione Pub/Sub na lista pendente de conetores disponíveis.
    2. Versão do conetor: selecione a versão do conetor na lista pendente de versões disponíveis.
    3. No campo Nome da ligação, introduza um nome para a instância de ligação.

      Os nomes das associações têm de cumprir os seguintes critérios:

      • Os nomes das associações podem usar letras, números ou hífenes.
      • As letras têm de ser minúsculas.
      • Os nomes das associações têm de começar com uma letra e terminar com uma letra ou um número.
      • Os nomes das associações não podem exceder 49 carateres.
    4. Opcionalmente, introduza uma Descrição para a instância de associação.
    5. Opcionalmente, ative o Registo na nuvem e, em seguida, selecione um nível de registo. Por predefinição, o nível do registo está definido como Error.
    6. Conta de serviço: selecione uma conta de serviço que tenha as funções necessárias.
    7. Opcionalmente, configure as definições do nó de associação:

      • Número mínimo de nós: introduza o número mínimo de nós de ligação.
      • Número máximo de nós: introduza o número máximo de nós de ligação.

      Um nó é uma unidade (ou uma réplica) de uma ligação que processa transações. São necessários mais nós para processar mais transações para uma ligação e, inversamente, são necessários menos nós para processar menos transações. Para compreender como os nós afetam os preços dos conectores, consulte o artigo Preços dos nós de ligação. Se não introduzir valores, por predefinição, os nós mínimos são definidos como 2 (para uma melhor disponibilidade) e os nós máximos são definidos como 50.

    8. ID do projeto: ID do projeto do Google Cloud onde reside a instância do Pub/Sub.
    9. ID do tópico: opcionalmente, introduza o nome do tópico do Pub/Sub onde a mensagem deve ser publicada.

      Se não especificar um nome de tópico aqui, pode especificar o tópico no tempo de execução configurando o parâmetro topic na ação PublishMessage.

    10. Opcionalmente, clique em + ADICIONAR ETIQUETA para adicionar uma etiqueta à associação sob a forma de um par chave/valor.
    11. Clique em SEGUINTE.
  5. Na secção Autenticação, introduza os detalhes de autenticação.
    1. A ligação do Pub/Sub não requer autenticação.
    2. Clique em SEGUINTE.
  6. Rever: reveja os detalhes da ligação e da autenticação.
  7. Clique em Criar.

Entidades, operações e ações

Todos os conetores de integração oferecem uma camada de abstração para os objetos da aplicação ligada. Só pode aceder aos objetos de uma aplicação através desta abstração. A abstração é exposta como entidades, operações e ações.

  • Entidade: pode considerar uma entidade como um objeto ou uma coleção de propriedades na aplicação ou no serviço associado. A definição de uma entidade difere de um conetor para um conetor. Por exemplo, num conetor de base de dados, as tabelas são as entidades. Num conetor de servidor de ficheiros, as pastas são as entidades. Num conetor de sistema de mensagens, as filas são as entidades.

    No entanto, é possível que um conector não suporte ou não tenha entidades, caso em que a lista Entities estará vazia.

  • Operação: uma operação é a atividade que pode realizar numa entidade. Pode realizar qualquer uma das seguintes operações numa entidade:

    Selecionar uma entidade na lista disponível gera uma lista de operações disponíveis para a entidade. Para uma descrição detalhada das operações, consulte as operações de entidades da tarefa de conectores. No entanto, se um conector não suportar nenhuma das operações de entidades, essas operações não suportadas não são apresentadas na lista Operations.

  • Ação: uma ação é uma função de primeira classe que é disponibilizada à integração através da interface do conetor. Uma ação permite-lhe fazer alterações a uma ou mais entidades e varia de conetor para conetor. Normalmente, uma ação tem alguns parâmetros de entrada e um parâmetro de saída. No entanto, é possível que um conector não suporte nenhuma ação, caso em que a lista Actions está vazia.

Limitações do sistema

O conetor do Pub/Sub pode processar um máximo de 27 transações por segundo, por e limita todas as transações que excedam este limite. Por predefinição, os Integration Connectors atribuem 2 nós (para uma melhor disponibilidade) a uma ligação.

Para informações sobre os limites aplicáveis aos Integration Connectors, consulte Limites.

Ações

Esta secção descreve as ações suportadas pelo conetor do Pub/Sub.

Ação PublishMessage

Esta ação publica uma mensagem num tópico Pub/Sub. A tabela seguinte descreve os parâmetros de entrada da ação PublishMessage.

Nome do parâmetro Obrigatória Tipo de dados Descrição
tópico Não String Nome do tópico para o qual quer publicar a mensagem.
mensagem Sim String A mensagem que quer publicar. A mensagem deve ser um JSON em forma de string e o tamanho máximo da mensagem suportado é de 10 MB.
atributos Não String Metadados personalizados (sob a forma de JSON em forma de string) como pares de chave-valor.

Validação do esquema para mensagens

Quando cria um tópico no Pub/Sub, pode optar por atribuir-lhe um esquema novo ou existente. Para mais informações, consulte o artigo Crie e faça a gestão de esquemas no Pub/Sub. Se tiver atribuído um esquema a um tópico, as mensagens publicadas são validadas automaticamente de acordo com o esquema e, se uma mensagem não estiver em conformidade com o esquema, a mensagem não é publicada.

Exemplos

Os exemplos nesta secção descrevem as seguintes operações:

  • Publicar uma mensagem num tópico

A tabela seguinte lista os cenários de exemplo e a configuração correspondente na tarefa Conectores:

Tarefa Configuração
Publicar uma mensagem num tópico
  1. Na caixa de diálogo Configure connector task, clique em Actions.
  2. Selecione a ação PublishMessage e, de seguida, clique em Concluído.
  3. Na secção Entrada da tarefa da tarefa Conectores, clique em connectorInputPayload e, de seguida, introduza um valor semelhante ao seguinte no campo Default Value:
    {"message" : "This is a test message.",
    "topic":"mytopic",
    "attributes":"{\"key1\":\"value1\"}"}
  4. Clique em Guardar.

Este exemplo publica o message especificado no tópico mytopic.

A execução deste exemplo devolve uma resposta semelhante à seguinte na variável de saída da tarefa do conetor:connectorOutputPayload

{"messageIds": [
"7865292560686229"]}

Crie ligações com o Terraform

Pode usar o recurso do Terraform para criar uma nova associação.

Para saber como aplicar ou remover uma configuração do Terraform, consulte os comandos básicos do Terraform.

Para ver um modelo do Terraform de exemplo para a criação de ligações, consulte o modelo de exemplo.

Quando criar esta associação através do Terraform, tem de definir as seguintes variáveis no ficheiro de configuração do Terraform:

Nome do parâmetro Tipo de dados Obrigatória Descrição
project_id STRING True ID do projeto do Google Cloud onde reside a instância do Pub/Sub.
topic_id STRING Falso Nome do tópico Pub/Sub onde a mensagem deve ser publicada.

Use a ligação do Pub/Sub numa integração

Depois de criar a ligação, esta fica disponível no Apigee Integration e no Application Integration. Pode usar a ligação numa integração através da tarefa Conectores.

  • Para compreender como criar e usar a tarefa Connectors no Apigee Integration, consulte o artigo Tarefa Connectors.
  • Para compreender como criar e usar a tarefa Connectors na integração de aplicações, consulte o artigo Tarefa Connectors.

Obtenha ajuda da comunidade do Google Cloud

Pode publicar as suas perguntas e discutir este conector na comunidade do Google Cloud nos Fóruns do Cloud.

O que se segue?