Crea un bus para enrutar mensajes

Un bus de Eventarc Advanced te permite centralizar, supervisar y hacer un seguimiento del flujo de mensajes a través de tu sistema y actúa como un router. Recibe eventos de una fuente de mensajes o publicados por un proveedor y los evalúa según una inscripción. Una inscripción identifica una suscripción a un bus en particular y define los criterios de coincidencia para los mensajes, lo que hace que se enruten según corresponda. Para obtener más información, consulta Cómo crear una inscripción para recibir eventos.

Los proveedores de eventos y los destinos pueden usar un bus en tu proyecto o en otros proyectos. Para obtener más información, consulta Diseños de proyectos.

Roles obligatorios

Un rol de Identity and Access Management (IAM) contiene un conjunto de permisos que te permite realizar acciones específicas en los recursos de Google Cloud. Se requieren los siguientes roles y permisos cuando se crea un bus para enrutar mensajes:

  • Para obtener el permiso que necesitas para crear un bus, pídele a tu administrador que te otorgue el rol de IAM Administrador de Eventarc (roles/eventarc.admin) o el rol de IAM Administrador de bus de mensajes de Eventarc (roles/eventarc.messageBusAdmin) en tu proyecto de bus. Estos roles predefinidos contienen el permiso eventarc.messageBuses.create, que se requiere para crear un bus.
  • Para obtener el permiso que necesitas para usar un bus, pídele a tu administrador que te otorgue el rol de IAM Usuario de bus de mensajes de Eventarc (roles/eventarc.messageBusUser) en tu proyecto de bus. Este rol predefinido contiene el permiso eventarc.buses.use, que se requiere para usar un bus.
  • Para crear una canalización y una inscripción, se requieren permisos adicionales. Para obtener más información, consulta los roles requeridos cuando se crea una inscripción.

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso. También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.

Crea un bus

Puedes crear un bus en la consola de Google Cloud o con gcloud CLI.

Console

  1. En la consola de Google Cloud, ve a la página Eventarc > Bus.

    Ir a Bus

  2. Haz clic en Crear bus.

  3. En la página Crear un bus, haz lo siguiente:

    1. Ingresa un nombre de bus. Este es el ID de tu autobús.
    2. Opcional: Ingresa un nombre visible del bus que se mostrará en la página Detalles del bus.
    3. En la lista Región, selecciona una región compatible para implementar tu bus.
    4. En Encriptación, acepta la clave de encriptación administrada por Google predeterminada o selecciona la clave de Cloud KMS. Para obtener más información, consulta Usa claves de encriptación administradas por el cliente (CMEK).
    5. Si seleccionas Clave de Cloud KMS, haz lo siguiente:

      1. En la lista Tipo de clave, selecciona un método para administrar tus claves.

        Puedes administrar tus claves de forma manual o usar Autokey, que te permite generar llaveros y claves a pedido. Si la opción Cloud KMS con Autokey está inhabilitada, aún no está integrada en el tipo de recurso actual.

      2. En Selecciona una clave de Cloud KMS, selecciona una clave.

        Ten en cuenta que debes seleccionar una región para poder ver tus claves administradas por el cliente.

      3. Opcional: Para ingresar de forma manual el nombre del recurso de la clave, en la lista Selecciona una clave administrada por el cliente, haz clic en Ingresar clave de forma manual y, luego, escribe el nombre de la clave en el formato especificado.

      4. Si se te solicita, otorga el rol cloudkms.cryptoKeyEncrypterDecrypter al agente de servicio de Eventarc.

    6. Opcional: Para agregar una fuente de mensajes, haz clic en Agregar fuente.

      1. En el panel Agregar fuente de mensajes, para el proveedor de mensajes de la API de Google, acepta el valor predeterminado de google-api-source o ingresa un nombre de fuente diferente.
      2. Haz clic en Crear.

        Esto permite la recopilación automática de eventos que provienen directamente de las fuentes de Google.

        Ten en cuenta que solo se publican los eventos de los recursos que se encuentran en el mismo proyecto de Google Cloud que el bus. Para obtener más información, consulta Cómo publicar eventos desde fuentes de Google.

    7. Opcional: Para agregar etiquetas, haz clic en Agregar etiqueta. Las etiquetas son pares clave-valor que te ayudan a organizar tus recursos de Google Cloud. Para obtener más información, consulta ¿Qué son las etiquetas?

  4. Haz clic en Crear.

gcloud

  1. Abre una terminal.

  2. Crea un bus con el comando gcloud beta eventarc message-buses create.

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

    Reemplaza lo siguiente:

    • BUS_NAME: El ID o el identificador completamente calificado del bus
    • REGION: Una ubicación compatible para el autobús

      Como alternativa, puedes establecer la propiedad de ubicación de Google Cloud CLI:

      gcloud config set eventarc/location REGION
      

    Opcional: También puedes usar las siguientes marcas:

    • --async para mostrar el comando de inmediato, sin esperar a que se complete la operación en curso.
    • --crypto-key para especificar el nombre completamente calificado de una clave de encriptación administrada por el cliente. Si no se especifica, se usan claves administradas por Google.
    • --logging-config para configurar el nivel de registro, que debe ser una de las siguientes opciones: NONE, DEBUG, INFO, NOTICE, WARNING, ERROR, CRITICAL, ALERT, EMERGENCY.

Borra un bus

Puedes borrar un bus en la consola de Google Cloud o con la gcloud CLI.

Console

  1. En la consola de Google Cloud, ve a la página Eventarc > Bus.

    Ir a Bus

  2. Haz clic en el nombre del bus que quieres borrar.

    Se abrirá la página Detalles del autobús.

  3. Haz clic en Borrar.

  4. Cuando se te solicite que borres el bus, selecciona la casilla de verificación ¿Quieres continuar? para confirmar que las fuentes de mensajes configuradas para usar el bus ya no podrán hacerlo.

  5. Para confirmar la eliminación, ingresa Delete.

  6. Haz clic en Borrar.

gcloud

  1. Abre una terminal.

  2. Para borrar un bus, usa el comando gcloud beta eventarc message-buses delete.

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

    Reemplaza lo siguiente:

    • BUS_NAME: El ID o el identificador completamente calificado del bus
    • REGION: La ubicación compatible para el autobús

¿Qué sigue?