Um barramento do Eventarc Advanced permite centralizar, monitorar e rastrear o fluxo de mensagens pelo sistema e atua como um roteador. Ele recebe eventos de uma origem de mensagens ou publicados por um provedor e os avalia de acordo com um registro. Um registro identifica uma assinatura de um barramento específico e define os critérios de correspondência para mensagens, fazendo com que elas sejam roteadas de acordo. 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 projeto.
Funções exigidas
Um papel do Identity and Access Management (IAM) contém um conjunto de permissões que permite realizar ações específicas em recursos do Google Cloud . As seguintes funções e permissões são necessárias ao criar um barramento para rotear mensagens:
- Para receber a permissão necessária para criar um barramento, peça ao administrador para conceder a você o papel do IAM de Administrador do Eventarc (
roles/eventarc.admin
) ou de Administrador do barramento de mensagens do Eventarc (roles/eventarc.messageBusAdmin
) no projeto do barramento. Esses papéis predefinidos contêm a permissãoeventarc.messageBuses.create
, necessária para criar um barramento. - Para receber a permissão necessária para usar um barramento, peça ao administrador para conceder a você o papel do IAM de Usuário do barramento de mensagens do Eventarc (
roles/eventarc.messageBusUser
) no projeto do barramento. Esse papel predefinido contém a permissãoeventarc.buses.use
, que é necessária para usar um barramento. - Para criar um pipeline e uma inscrição, são necessárias outras permissões. Para mais informações, consulte os papéis necessários ao criar uma inscrição.
Para mais informações sobre como conceder papéis, consulte Gerenciar acesso. Essas permissões também podem ser concedidas com papéis personalizados ou outros papéis predefinidos.
Criar barramento
É possível criar um ônibus das seguintes maneiras:
- No console do Google Cloud
- Usando a Google Cloud CLI no terminal ou no Cloud Shell
- Enviando uma solicitação para a API Eventarc
Console
No Google Cloud console, acesse a página Eventarc > Barramento.
Clique em
Criar barramento.Na página Criar um barramento, faça o seguinte:
- Digite um Nome do barramento. Esse é o ID do seu ônibus.
- Opcional: insira um Nome de exibição do barramento, que aparece na página Detalhes do barramento.
- Na lista Região, selecione uma região compatível para implantar seu ônibus.
- Na lista Gravidade do registro, selecione a gravidade mínima dos eventos descritos nas entradas de registro. O padrão é Nenhum. Para mais informações, consulte
LogSeverity
. - Em Criptografia, aceite o padrão Google-managed encryption key ou selecione Chave do Cloud KMS. Para mais informações, consulte Usar chaves de criptografia gerenciadas pelo cliente (CMEK).
Se você selecionar Chave do Cloud KMS, faça o seguinte:
Na lista Tipo de chave, selecione um método para gerenciar suas chaves.
É possível gerenciar as chaves manualmente ou usar a chave automática, que permite gerar keyrings e chaves sob demanda. Se a opção Cloud KMS com Autokey estiver desativada, ela ainda não estará integrada ao tipo de recurso atual.
Em Selecionar uma chave do Cloud KMS, escolha uma chave.
É necessário selecionar uma região antes de visualizar as chaves gerenciadas pelo cliente.
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.
Se solicitado, conceda o papel
cloudkms.cryptoKeyEncrypterDecrypter
ao Agente de serviço do Eventarc.
Opcional: para adicionar uma fonte de mensagem, clique em
Adicionar fonte.- No painel Adicionar origem da mensagem, para o provedor de mensagens da API do Google, aceite o padrão
google-api-source
ou insira um nome de origem diferente. Clique em Criar.
Isso permite a coleta automática de eventos diretamente de fontes do Google.
Somente eventos de recursos no mesmo projeto Google Cloud do barramento são publicados. Para mais informações, consulte Publicar eventos de fontes do Google.
- No painel Adicionar origem da mensagem, para o provedor de mensagens da API do Google, aceite o padrão
Opcional: para adicionar rótulos, clique em O que são rótulos?
Adicionar rótulo. Os rótulos são pares de chave-valor que ajudam você a organizar seus recursos doGoogle Cloud . Para mais informações, consulte
Clique em Criar.
gcloud
Abra um terminal.
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 ônibus.REGION
: um local compatível para o ônibusComo alternativa, é possível definir a propriedade de local da Google Cloud CLI:
gcloud config set eventarc/location REGION
Opcional: você também pode 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, Google-owned and managed keys serão usados.--logging-config
para configurar a gravidade mínima dos eventos descritos nas entradas de registro. Precisa ser uma destas opções:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. O padrão éNONE
. Para mais informações, consulteLogSeverity
.
API REST
Para criar um ônibus, use o método
projects.locations.messageBuses.create
.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
BUS_NAME
: o nome de exibição do seu ônibus, por exemplo,my_bus
.LABEL_KEY
eLABEL_VALUE
: opcional. Um mapa de pares de chave e valor de rótulo que ajudam a organizar seus recursos do Google Cloud . Para mais informações, consulte O que são rótulos?ANNOTATION_KEY
eANNOTATION_VALUE
: opcional. Um mapa de pares de chave e valor de anotação de texto em formato livre. É possível usá-las para anexar informações arbitrárias associadas ao recurso. Para mais informações, consulte Anotações.ENCRYPT_KEY
: opcional. Uma chave do Cloud KMS que o barramento precisa usar para criptografia de dados no formatoprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
. Para mais informações, consulte Usar chaves de criptografia gerenciadas pelo cliente.PROJECT_ID
: o ID do projeto do Google Cloud.LOCATION
: a região em que o barramento será criado, por exemplo,us-central1
.LOG_SEVERITY
: opcional. A gravidade mínima do evento descrito em uma entrada de registro. Uma destas opções:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. O padrão éNONE
. Para mais informações, consulteLogSeverity
.
Corpo JSON da solicitação:
{ "display_name": "BUS_NAME", "labels": {"LABEL_KEY":"LABEL_VALUE"}, "annotations": {"ANNOTATION_KEY":"ANNOTATION_VALUE"}, "cryptoKeyName": "ENCRYPT_KEY", "loggingConfig": {"logSeverity":"LOG_SEVERITY"} }
Para enviar a solicitação, expanda uma destas opções:
Se houver êxito, o corpo da resposta conterá uma instância de Operation
:
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata", "createTime": "2024-01-25T17:17:45.782370139Z", "target": "projects/PROJECT_ID/locations/LOCATION/messageBuses/BUS_NAME", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Excluir um barramento
É possível excluir um ônibus das seguintes maneiras:
- No console do Google Cloud
- Usando a CLI gcloud no terminal ou no Cloud Shell
- Enviando uma solicitação para a API Eventarc
Console
No Google Cloud console, acesse a página Eventarc > Barramento.
A página Detalhes do ônibus é aberta.
Clique em
Excluir.Quando for solicitado a excluir o barramento, marque a caixa de seleção Quer continuar? para confirmar que as origens de mensagem configuradas para usar o barramento não poderão mais fazer isso.
Para confirmar a exclusão, digite
Delete
.Clique em Excluir.
gcloud
Abra um terminal.
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 ônibus.REGION
: o local compatível para o ônibus
API REST
Para excluir um ônibus, use o método
projects.locations.messageBuses.delete
.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
PROJECT_ID
: o ID do projeto do Google Cloud.LOCATION
: a região em que o barramento é criado, por exemplo,us-central1
.BUS_NAME
: o nome do barramento que você quer excluir.
Para enviar a solicitação, expanda uma destas opções:
Se houver êxito, o corpo da resposta conterá uma instância de Operation
:
{ "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata", "createTime": "2024-01-25T17:17:45.782370139Z", "target": "projects/PROJECT_ID/locations/LOCATION/messageBuses/BUS_NAME", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }