Criar um barramento para encaminhar mensagens

Um barramento do Eventarc Advanced permite centralizar, monitorar e rastrear o fluxo de mensagens no sistema e atua como um roteador. Ele recebe eventos de uma origem de mensagem ou publicados por um provedor e os avalia de acordo com uma inscrição. Um registro identifica uma assinatura de um barramento específico e define os critérios de correspondência para as mensagens, fazendo com que elas sejam roteadas adequadamente. Para mais informações, consulte Criar uma inscrição para receber eventos.

Um barramento pode ser usado por provedores de eventos e destinos no seu projeto ou em outros projetos. Para mais informações, consulte Layouts de projetos.

Funções exigidas

Uma função do Identity and Access Management (IAM) contém um conjunto de permissões que permite realizar ações específicas nos recursos do Google Cloud. Os seguintes papéis e permissões são necessários ao criar um barramento para encaminhar mensagens:

  • Para receber a permissão necessária para criar um bus, peça ao administrador para conceder a você o papel do IAM de Administrador do Eventarc (roles/eventarc.admin) ou o de Administrador do Eventarc Message Bus (roles/eventarc.messageBusAdmin) no projeto do bus. Esses papéis predefinidos contêm a permissão eventarc.messageBuses.create, que é necessária para criar um barramento.
  • Para receber a permissão necessária para usar um bus, peça ao administrador para conceder a você o papel do IAM de Usuário da bus de mensagens do Eventarc (roles/eventarc.messageBusUser) no projeto da bus. Esse papel predefinido contém a permissão eventarc.buses.use, que é necessária para usar um barramento.
  • Para criar um pipeline e um registro, são necessárias outras permissões. Para mais informações, consulte os papéis necessários para criar uma inscrição.

Para mais informações sobre como conceder papéis, consulte Gerenciar acesso. Também é possível conseguir essas permissões com papéis personalizados ou outros papéis predefinidos.

Criar barramento

É possível criar um barramento no console do Google Cloud ou usando a CLI gcloud.

Console

  1. No console do Google Cloud, acesse a página Eventarc > Bus.

    Acessar "Bus"

  2. Clique em Criar barramento.

  3. Na página Criar um ônibus, faça o seguinte:

    1. Digite um Nome do barramento. Esse é o ID do seu ônibus.
    2. Opcional: insira um Nome de exibição do barramento que será mostrado na página Detalhes do barramento.
    3. Na lista Região, selecione uma região com suporte para implantar o bus.
    4. Em Criptografia, aceite a chave de criptografia gerenciada pelo Google padrão ou selecione Chave do Cloud KMS. Para mais informações, consulte Usar chaves de criptografia gerenciadas pelo cliente (CMEK).
    5. Se você selecionar Chave do Cloud KMS, faça o seguinte:

      1. Na lista Tipo de chave, selecione um método para gerenciar as chaves.

        Você pode gerenciar as chaves manualmente ou usar o Autokey, que permite gerar chaves e chaveiros sob demanda. Se a opção Cloud KMS com Autokey estiver desativada, ela ainda não estará integrada ao tipo de recurso atual.

      2. Em Selecionar uma chave do Cloud KMS, selecione uma chave.

        É necessário selecionar uma região para visualizar as chaves gerenciadas pelo cliente.

      3. Opcional: para inserir manualmente o nome do recurso da chave, na lista Selecionar uma chave gerenciada pelo cliente, clique em Inserir chave manualmente e insira o nome da chave no formato especificado.

      4. Se solicitado, conceda o papel cloudkms.cryptoKeyEncrypterDecrypter ao Agente de serviço do Eventarc.

    6. Opcional: para adicionar uma origem de mensagens, clique em Adicionar origem.

      1. No painel Adicionar origem de mensagem, para o provedor de mensagens da API do Google, aceite o padrão google-api-source ou insira um nome de origem diferente.
      2. Clique em Criar.

        Isso permite a coleta automática de eventos provenientes diretamente de fontes do Google.

        Somente os eventos de recursos no mesmo projeto do Google Cloud que o barramento são publicados. Para mais informações, consulte Publicar eventos de origens do Google.

    7. Opcional: para adicionar rótulos, clique em Adicionar rótulo. Os rótulos são pares de chave-valor que ajudam você a organizar seus recursos do Google Cloud. Para mais informações, consulte O que são rótulos?

  4. Clique em Criar.

gcloud

  1. Abra um terminal.

  2. Crie um barramento usando o comando gcloud beta eventarc message-buses create.

    gcloud beta eventarc message-buses create BUS_NAME \
        --location=REGION
    

    Substitua:

    • BUS_NAME: o ID ou identificador totalmente qualificado do barramento
    • REGION: um local compatível para o bus

      Também é possível definir a propriedade de local da Google Cloud CLI:

      gcloud config set eventarc/location REGION
      

    Opcional: também é possível usar as seguintes flags:

    • --async para retornar do comando imediatamente, sem aguardar a conclusão da operação em andamento.
    • --crypto-key para especificar o nome totalmente qualificado de uma chave de criptografia gerenciada pelo cliente. Se não for especificado, chaves gerenciadas pelo Google serão usadas.
    • --logging-config para configurar o nível de registro, que precisa ser um destes: NONE, DEBUG, INFO, NOTICE, WARNING, ERROR, CRITICAL, ALERT, EMERGENCY.

Excluir um barramento

É possível excluir um barramento no console do Google Cloud ou usando a CLI gcloud.

Console

  1. No console do Google Cloud, acesse a página Eventarc > Bus.

    Acessar "Bus"

  2. Clique no nome do ônibus que você quer excluir.

    A página Detalhes do ônibus é aberta.

  3. Clique em Excluir.

  4. Quando solicitado a exclusão do barramento, para confirmar que as origens de mensagem configuradas para usar o barramento não poderão mais fazer isso, selecione a caixa de seleção Você quer continuar?.

  5. Para confirmar a exclusão, digite Delete.

  6. Clique em Excluir.

gcloud

  1. Abra um terminal.

  2. Exclua um barramento usando o comando gcloud beta eventarc message-buses delete.

    gcloud beta eventarc message-buses delete BUS_NAME \
        --location=REGION
    

    Substitua:

    • BUS_NAME: o ID ou identificador totalmente qualificado do barramento
    • REGION: o local compatível do ônibus

A seguir