Un bus Eventarc Advanced consente di centralizzare, monitorare e tracciare il flusso di messaggi all'interno del sistema e funge da router. Riceve eventi da un'origine messaggio o pubblicati da un provider e li valuta in base a una registrazione. Una registrazione identifica un abbonamento a un determinato bus e definisce i criteri di corrispondenza per i messaggi, in modo che vengano instradati di conseguenza. Per ulteriori informazioni, consulta Creare una registrazione per ricevere eventi.
Un bus può essere utilizzato dai provider di eventi e dalle destinazioni nel tuo progetto o in altri progetti. Per scoprire di più, consulta la pagina Layout dei progetti.
Ruoli obbligatori
Un ruolo Identity and Access Management (IAM) contiene un insieme di autorizzazioni che ti consente di eseguire azioni specifiche sulle risorse. Google Cloud I seguenti ruoli e le seguenti autorizzazioni sono obbligatori quando crei un bus per instradare i messaggi:
- Per ottenere l'autorizzazione necessaria per creare un bus, chiedi all'amministratore di concederti il ruolo IAM Amministratore Eventarc (
roles/eventarc.admin
) o Amministratore Eventarc Message Bus (roles/eventarc.messageBusAdmin
) nel progetto del bus. Questi ruoli predefiniti contengono l'autorizzazioneeventarc.messageBuses.create
, obbligatoria per creare un bus. - Per ottenere l'autorizzazione necessaria per utilizzare un bus, chiedi all'amministratore di concederti il ruolo IAM Utente Eventarc Message Bus (
roles/eventarc.messageBusUser
) nel progetto del bus. Questo ruolo predefinito contiene l'autorizzazioneeventarc.buses.use
, obbligatoria per utilizzare un bus. - Per creare una pipeline e una registrazione, sono necessarie autorizzazioni aggiuntive. Per ulteriori informazioni, consulta i ruoli richiesti per la creazione di una registrazione.
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso. Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Crea un bus
Puoi creare un bus nei seguenti modi:
- Nella console Google Cloud
- Utilizzando Google Cloud CLI nel terminale o in Cloud Shell
- Inviando una richiesta all'API Eventarc
Console
Nella console Google Cloud, vai alla pagina Eventarc > Bus.
Fai clic su
Crea bus.Nella pagina Crea un bus, segui questi passaggi:
- Inserisci un nome del bus. Questo è l'ID del tuo autobus.
- (Facoltativo) Inserisci un nome visualizzato del bus che viene visualizzato nella pagina Dettagli del bus.
- Nell'elenco Regione, seleziona una regione supportata in cui eseguire il deployment del bus.
- Nell'elenco Gravità del log, seleziona la gravità minima per gli eventi descritti nelle voci di log. Il valore predefinito è Nessuno. Per ulteriori informazioni, consulta
LogSeverity
. - Per Crittografia, accetta il valore predefinito Google-managed encryption key o seleziona Chiave Cloud KMS. Per saperne di più, consulta Utilizzare le chiavi di crittografia gestite dal cliente (CMEK).
Se selezioni Chiave Cloud KMS, segui questi passaggi:
Nell'elenco Tipo di chiave, seleziona un metodo per gestire le chiavi.
Puoi gestire le tue chiavi manualmente o utilizzare Autokey, che ti consente di generare chiavi e chiavi automatizzate on demand. Se l'opzione Cloud KMS con Autokey è disabilitata, significa che non è ancora integrata nel tipo di risorsa attuale.
In Seleziona una chiave Cloud KMS, seleziona una chiave.
Tieni presente che devi selezionare una regione prima di poter visualizzare le chiavi gestite dal cliente.
(Facoltativo) Per inserire manualmente il nome della risorsa della chiave, nell'elenco Seleziona una chiave gestita dal cliente, fai clic su Inserisci chiave manualmente e inserisci il nome della chiave nel formato specificato.
Se richiesto, concedi il ruolo
cloudkms.cryptoKeyEncrypterDecrypter
all'agente di servizio Eventarc.
(Facoltativo) Per aggiungere una sorgente del messaggio, fai clic su
Aggiungi sorgente.- Nel riquadro Aggiungi origine messaggio, per il fornitore di messaggi dell'API Google, accetta il valore predefinito
google-api-source
o inserisci un nome di origine diverso. Fai clic su Crea.
In questo modo viene attivata la raccolta automatica degli eventi provenienti direttamente dalle origini Google.
Tieni presente che vengono pubblicati solo gli eventi delle risorse nello stesso Google Cloud progetto del bus. Per ulteriori informazioni, consulta Pubblicare eventi dalle origini Google.
- Nel riquadro Aggiungi origine messaggio, per il fornitore di messaggi dell'API Google, accetta il valore predefinito
(Facoltativo) Per aggiungere etichette, fai clic su Che cosa sono le etichette?
Aggiungi etichetta. Le etichette sono coppie chiave/valore che ti aiutano a organizzare le tue Google Cloud risorse. Per saperne di più, vedi
Fai clic su Crea.
gcloud
Apri un terminale.
Crea un bus utilizzando il comando
gcloud beta eventarc message-buses create
.gcloud beta eventarc message-buses create BUS_NAME \ --location=REGION
Sostituisci quanto segue:
BUS_NAME
: l'ID o l'identificatore completo del busREGION
: un'area supportata per il busIn alternativa, puoi impostare la proprietà della posizione di Google Cloud CLI:
gcloud config set eventarc/location REGION
(Facoltativo) Puoi anche utilizzare i seguenti flag:
--async
per uscire immediatamente dal comando, senza attendere il completamento dell'operazione in corso.--crypto-key
per specificare il nome completo di una chiave di crittografia gestita dal cliente. Se non specificato, Google-owned and managed keys vengono utilizzati.--logging-config
per configurare la gravità minima per gli eventi descritti nelle voci del log. Deve essere uno dei seguenti:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. Il valore predefinito èNONE
. Per ulteriori informazioni, consultaLogSeverity
.
API REST
Per creare un bus, utilizza il metodo
projects.locations.messageBuses.create
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
BUS_NAME
: il nome visualizzato del tuo bus, ad esempiomy_bus
.LABEL_KEY
eLABEL_VALUE
: facoltativi. Una mappa di coppie chiave-valore delle etichette che ti aiutano a organizzare le tue Google Cloud risorse. Per ulteriori informazioni, consulta Che cosa sono le etichette?ANNOTATION_KEY
eANNOTATION_VALUE
: facoltativi. Una mappa di coppie chiave-valore di annotazioni di testo in formato libero. Puoi utilizzarli per associare informazioni arbitrarie alla risorsa. Per ulteriori informazioni, consulta la sezione Annotazioni.ENCRYPT_KEY
: facoltativo. Una chiave Cloud KMS che il bus deve utilizzare per la crittografia dei dati nel formatoprojects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME
. Per saperne di più, vedi Utilizzare le chiavi di crittografia gestite dal cliente.PROJECT_ID
: il tuo Google Cloud ID progetto.LOCATION
: la regione in cui creare il bus, ad esempious-central1
.LOG_SEVERITY
: facoltativo. La gravità minima dell'evento descritto in una voce di log. Uno dei seguenti:NONE
,DEBUG
,INFO
,NOTICE
,WARNING
,ERROR
,CRITICAL
,ALERT
,EMERGENCY
. Il valore predefinito èNONE
. Per ulteriori informazioni, consultaLogSeverity
.
Corpo JSON della richiesta:
{ "display_name": "BUS_NAME", "labels": {"LABEL_KEY":"LABEL_VALUE"}, "annotations": {"ANNOTATION_KEY":"ANNOTATION_VALUE"}, "cryptoKeyName": "ENCRYPT_KEY", "loggingConfig": {"logSeverity":"LOG_SEVERITY"} }
Per inviare la richiesta, espandi una di queste opzioni:
In caso di esito positivo, il corpo della risposta contiene un'istanza appena creata di
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 }
Eliminare un bus
Puoi eliminare un bus nei seguenti modi:
- Nella console Google Cloud
- Utilizzando l'interfaccia a riga di comando gcloud nel terminale o in Cloud Shell
- Inviando una richiesta all'API Eventarc
Console
Nella console Google Cloud, vai alla pagina Eventarc > Bus.
Fai clic sul nome del bus che vuoi eliminare.
Viene visualizzata la pagina Dettagli autobus.
Fai clic su
Elimina.Quando ti viene chiesto di eliminare il bus, per confermare che le origini dei messaggi configurate per utilizzarlo non potranno più farlo, seleziona la casella di controllo Vuoi procedere?.
Per confermare l'eliminazione, inserisci
Delete
.Fai clic su Elimina.
gcloud
Apri un terminale.
Elimina un bus utilizzando il comando
gcloud beta eventarc message-buses delete
.gcloud beta eventarc message-buses delete BUS_NAME \ --location=REGION
Sostituisci quanto segue:
BUS_NAME
: l'ID o l'identificatore completo del busREGION
: la posizione supportata per l'autobus
API REST
Per eliminare un autobus, utilizza il metodo
projects.locations.messageBuses.delete
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_ID
: il tuo Google Cloud ID progetto.LOCATION
: la regione in cui viene creato il bus, ad esempious-central1
.BUS_NAME
: il nome del bus che vuoi eliminare.
Per inviare la richiesta, espandi una di queste opzioni:
In caso di esito positivo, il corpo della risposta contiene un'istanza appena creata di
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 }