Instrada gli eventi a un endpoint HTTP interno in una rete VPC

Un trigger Eventarc dichiara il tuo interesse per un determinato evento o insieme di eventi. Puoi configurare il routing degli eventi specificando i filtri per il trigger, tra cui l'origine evento e la destinazione di destinazione.

Eventarc consegna gli eventi al ricevitore di eventi in un formato CloudEvents tramite una richiesta HTTP.

Queste istruzioni mostrano come configurare il routing degli eventi per tutti i tipi di eventi su un endpoint HTTP interno in una rete Virtual Private Cloud (VPC). Per configurare il trigger, devi fornire anche un ID collegamento di rete.

  • I tipi di eventi supportati sono:

    • Eventi diretti: attivati da un evento non mediato come l'aggiornamento di un oggetto in un bucket Cloud Storage o un messaggio pubblicato in un argomento Pub/Sub.

    • Eventi Cloud Audit Logs: si attivano quando un log viene generato tramite Cloud Audit Logs.

    • Eventi di terze parti: attivati dagli eventi di un provider non Google che offre un'origine Eventarc.

  • L'endpoint HTTP interno può essere un indirizzo IP interno o un nome DNS completo (FQDN) per qualsiasi endpoint HTTP nella rete Virtual Private Cloud. Di seguito sono riportati due esempi di possibili destinazioni di eventi:

    • Un'istanza di macchina virtuale (VM) Compute Engine: le istanze di Compute Engine possono eseguire le immagini pubbliche per Linux e Windows Server fornite da Google, nonché le immagini personalizzate private che puoi creare o importare dai sistemi esistenti. Per ulteriori informazioni, consulta Istanze di macchine virtuali.
    • Un bilanciatore del carico interno: un Application Load Balancer interno di Google Cloud è un bilanciatore del carico di livello 7 a livello di regione basato su proxy che consente di eseguire e scalare i servizi dietro un indirizzo IP interno. Gli Application Load Balancer interni distribuiscono il traffico HTTP e HTTPS su backend ospitati su Compute Engine, Google Kubernetes Engine (GKE) e Cloud Run. Per ulteriori informazioni, consulta la panoramica dell'Application Load Balancer interno.
  • Una rete VPC è una versione virtuale di una rete fisica implementata all'interno della rete di produzione di Google.

  • Un collegamento di rete è una risorsa di regione che consente di autorizzare esplicitamente un producer a connettersi a una rete VPC consumer. Per pubblicare eventi, Eventarc utilizza il collegamento di rete per stabilire una connessione all'endpoint HTTP interno ospitato in una rete VPC.

Prima di iniziare

Prima di creare un trigger Eventarc per il routing degli eventi a un endpoint HTTP interno in una rete VPC, devi creare un collegamento di rete che accetti connessioni nella stessa rete e nella stessa regione contenenti il servizio di destinazione HTTP.

Queste istruzioni presuppongono che tu abbia già creato una rete e una subnet VPC e che tu abbia eseguito il deployment del servizio di destinazione HTTP.

Per ulteriori informazioni, consulta Ricevere eventi Pub/Sub su un endpoint HTTP interno in una rete VPC che illustra come eseguire il deployment di un endpoint HTTP interno in una rete VPC e instradare gli eventi Pub/Sub all'endpoint.

Limitazioni note

Di seguito sono riportate le limitazioni note per il routing degli eventi a un endpoint HTTP interno in una rete VPC:

  • Non puoi creare più di un trigger Eventarc per lo stesso nome DNS.

  • Esiste un limite di 100 trigger Eventarc per gli endpoint HTTP interni per progetto.

  • Sono supportate solo le seguenti località trigger Eventarc:

    • asia-east1
    • europe-north1
    • europe-west1
    • us-central1
    • us-east1

Prepararsi a creare un trigger

Prima di creare un trigger, completa questi prerequisiti:

Console

  1. Nella console Google Cloud, nella pagina del selettore dei progetti, seleziona o crea un progetto Google Cloud.

    Vai al selettore di progetti

  2. Abilitare le API Cloud Logging ed Eventarc.

    Abilita le API

  3. Se applicabile, abilita l'API relativa agli eventi diretti. Ad esempio, per gli eventi di Cloud Functions, abilita cloudfunctions.googleapis.com.

  4. Se non ne hai già uno, crea un account di servizio gestito dall'utente, quindi concedigli i ruoli e le autorizzazioni necessari in modo che Eventarc possa gestire gli eventi per il tuo servizio di destinazione.

    1. Nella console Google Cloud, vai alla pagina Crea account di servizio.

      Vai a Crea account di servizio

    2. Seleziona il progetto.

    3. Inserisci un nome nel campo Nome account di servizio. La console Google Cloud compila il campo ID account di servizio in base a questo nome.

      Nel campo Descrizione account di servizio, inserisci una descrizione. Ad esempio, Service account for event trigger.

    4. Fai clic su Crea e continua.

    5. Per fornire l'accesso appropriato, nell'elenco Seleziona un ruolo seleziona i ruoli Identity and Access Management (IAM) richiesti da concedere al tuo account di servizio. Per ulteriori informazioni, consulta Ruoli e autorizzazioni per un endpoint HTTP interno in una rete VPC.

      Per ulteriori ruoli, fai clic su Aggiungi un altro ruolo e aggiungi ogni altro ruolo.

    6. Fai clic su Continua.

    7. Per completare la creazione dell'account, fai clic su Fine.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Abilitare le API Cloud Logging, Eventarc ed Eventarc Publishing.

    gcloud services enable logging.googleapis.com \
      eventarc.googleapis.com \
      eventarcpublishing.googleapis.com
    
  3. Se applicabile, abilita l'API relativa agli eventi. Ad esempio, abilita cloudfunctions.googleapis.com per gli eventi di Cloud Functions.

  4. Se non ne hai già uno, crea un account di servizio gestito dall'utente e concedigli i ruoli e le autorizzazioni necessari in modo che Eventarc possa gestire gli eventi per il tuo servizio di destinazione.

    1. Crea l'account di servizio:

      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
      

      Sostituisci SERVICE_ACCOUNT_NAME con il nome dell'account di servizio. Deve essere compreso tra 6 e 30 caratteri e può contenere caratteri alfanumerici minuscoli e trattini. Dopo aver creato un account di servizio, non puoi modificarne il nome.

    2. Concedi le autorizzazioni o i ruoli Identity and Access Management (IAM) richiesti. Per ulteriori informazioni, consulta Ruoli e autorizzazioni per un endpoint HTTP interno in una rete VPC.

Crea un trigger

Puoi creare un trigger Eventarc utilizzando Google Cloud CLI o la console Google Cloud.

Console

  1. Nella console Google Cloud, vai alla pagina Trigger di Eventarc.

    Vai ai trigger

  2. Fai clic su Crea trigger.
  3. Digita un Nome trigger.

    Si tratta dell'ID dell'attivatore e deve iniziare con una lettera. Può contenere fino a 63 lettere minuscole, numeri o trattini.

  4. Per il Tipo di attivatore, seleziona Origini Google o Di terze parti.
  5. Seleziona un Fornitore di eventi.

    Questo è il servizio che dà origine agli eventi. Per un'origine Google, l'operazione può essere eseguita direttamente o tramite i relativi audit log.

  6. A seconda del tipo di evento di routing, esegui una delle seguenti operazioni:
    1. Eventi diretti: nell'elenco Evento, seleziona un evento per il tipo di evento Diretto.
      1. Per gli eventi Cloud Pub/Sub diretti, nell'elenco Seleziona un argomento Cloud Pub/Sub seleziona un argomento o accetta il valore predefinito Nessuno, in modo che venga creato un nuovo argomento per te.
      2. Per eventi Cloud Storage diretti, specifica o sfoglia per trovare l'identificatore univoco globale del bucket di Cloud Storage.
    2. Eventi degli audit log: nell'elenco Eventi, seleziona un evento dal tipo di evento tramite Cloud Audit Logs, quindi seleziona una delle seguenti opzioni:
      • Qualsiasi risorsa: questa è l'impostazione predefinita e include risorse create dinamicamente con identificatori generati al momento della creazione.
      • Risorsa specifica: devi fornire il nome completo della risorsa.
      • Pattern del percorso: puoi filtrare le risorse utilizzando un pattern del percorso. Ad esempio, digita projects/_/buckets/eventarc-bucket/objects/random.txt o projects/_/buckets/**/r*.txt.
    3. Eventi di terze parti: nell'elenco Canale, seleziona un canale e poi un evento nell'elenco Evento.

      Per maggiori informazioni, consulta la pagina Creare un canale e recuperarne i dettagli.

  7. Se applicabile al tipo di evento, nell'elenco Tipo di contenuto dei dati eventi, seleziona application/json o application/protobuf per specificare la codifica del payload dell'evento.

    Tieni presente che un payload di evento in formato JSON è più grande di uno formattato in Protobuf. Questo potrebbe influire sull'affidabilità a seconda della destinazione e dei limiti delle dimensioni dell'evento. Per ulteriori informazioni, consulta la pagina Problemi noti.

  8. Se applicabile al provider di eventi, fai clic su Aggiungi filtro e specifica quanto segue:
    1. Nel campo Attributo 1, a seconda dell'evento diretto che hai scelto, seleziona un ID risorsa che possa fungere da filtro di eventi.
    2. Seleziona un operatore:
    3. Nel campo Valore attributo 1, a seconda dell'operatore che hai scelto, digita il valore esatto o applica un pattern del percorso.
    4. Se è applicabile un campo Attributo 2, specifica i valori appropriati.
  9. Nell'elenco Regione, seleziona una località.

    Per evitare problemi di prestazioni e localizzazione dei dati, la località deve corrispondere a quella del servizio Google Cloud che sta generando eventi.

    Tieni presente che per questa destinazione evento sono supportate solo le seguenti località:

    • asia-east1
    • europe-north1
    • europe-west1
    • us-east1

    Per ulteriori informazioni, consulta le località Eventarc.

  10. Seleziona l'account di servizio che richiama il servizio.

    In alternativa, puoi creare un nuovo account di servizio.

    Specifica l'indirizzo email dell'account di servizio IAM associato al trigger e a cui hai precedentemente concesso i ruoli specifici richiesti da Eventarc.

  11. Nell'elenco Destinazione evento, seleziona Endpoint HTTP (interno).
    1. Specifica l'URI di destinazione. Questo è l'URI dell'endpoint HTTP interno nella rete VPC che riceve gli eventi per il trigger. L'URI può essere un indirizzo IP interno statico nella rete VPC indirizzato dal collegamento di rete o il nome DNS interno di un servizio risolvibile da Cloud DNS.

      Se l'endpoint HTTP utilizza un nome DNS interno, Eventarc crea automaticamente zone di peering DNS e inoltra le richieste DNS alle zone DNS nella rete VPC di destinazione. Il peering DNS consente di inviare richieste di record che provengono dallo spazio dei nomi di una zona a un'altra rete VPC. Per saperne di più, consulta Zone di peering e Creare una zona di peering.

      Tieni presente che non puoi creare più di un trigger per lo stesso nome DNS.

    2. Nell'elenco Collegamento di rete, seleziona un identificatore per la risorsa del collegamento di rete. Questo identificatore viene generato dopo la creazione di un collegamento di rete. Per ulteriori informazioni, consulta la sezione Creare collegamenti di rete.

      I collegamenti di rete consentono alle reti VPC dei producer di servizi di avviare connessioni a reti VPC consumer. Eventarc utilizza il collegamento di rete per stabilire una connessione all'endpoint HTTP interno ospitato nella rete VPC del consumer e pubblicare gli eventi.

      Quando crei un collegamento di rete, puoi autorizzare esplicitamente una connessione tramite gli elenchi di accettazione e rifiuto dei producer; in ogni caso, Eventarc può aggiornare l'elenco di accettazione di un collegamento di rete con l'ID progetto appropriato e senza alcun intervento da parte tua.

  12. Fai clic su Crea.
  13. Una volta creato un attivatore, i filtri dell'origine evento non possono essere modificati. Crea invece un nuovo trigger ed elimina quello precedente. Per ulteriori informazioni, consulta Gestire i trigger.

gcloud

Puoi creare un trigger eseguendo un comando gcloud eventarc triggers create insieme a flag obbligatori e facoltativi.

Eventi diretti

gcloud eventarc triggers create TRIGGER \
    --location=LOCATION \
    --destination-http-endpoint-uri=ENDPOINT_URI \
    --network-attachment=NETWORK_ATTACHMENT_ID \
    --event-filters="type=EVENT_FILTER_TYPE" \
    --event-filters="COLLECTION_ID=RESOURCE_ID" \
    --event-filters-path-pattern="COLLECTION_ID=PATH_PATTERN" \
    --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com"

Sostituisci quanto segue:

  • TRIGGER: l'ID del trigger o un identificatore completo.
  • LOCATION: la località del trigger Eventarc. In alternativa, puoi impostare la proprietà eventarc/location, ad esempio gcloud config set eventarc/location us-central1.

    Per evitare problemi di prestazioni e localizzazione dei dati, la località deve corrispondere a quella del servizio Google Cloud che genera gli eventi.

    Tieni presente che per questa destinazione evento sono supportate solo le seguenti località:

    • asia-east1
    • europe-north1
    • europe-west1
    • us-central1
    • us-east1

    Per ulteriori informazioni, consulta le località Eventarc.

  • ENDPOINT_URI: l'URI dell'endpoint HTTP interno nella rete VPC che riceve gli eventi per il trigger. L'URI può essere un indirizzo IP interno statico nella rete VPC indirizzato dal collegamento di rete o il nome DNS interno di un servizio risolvibile da Cloud DNS.

    Se l'endpoint HTTP utilizza un nome DNS interno, Eventarc crea automaticamente zone di peering DNS e inoltra le richieste DNS alle zone DNS nella rete VPC di destinazione. Il peering DNS consente di inviare richieste di record che provengono dallo spazio dei nomi di una zona a un'altra rete VPC. Per ulteriori informazioni, consulta Zone di peering e Creare una zona di peering.

    Tieni presente che non puoi creare più di un trigger per lo stesso nome DNS.

  • NETWORK_ATTACHMENT_ID: identificatore univoco per la risorsa di collegamento di rete. L'identificatore viene generato dopo la creazione di un collegamento di rete. Per ulteriori informazioni, consulta la sezione Creare collegamenti di rete.

    I collegamenti di rete consentono alle reti VPC dei producer di servizi di avviare connessioni alle reti VPC consumer. Eventarc utilizza il collegamento di rete per stabilire una connessione all'endpoint HTTP interno ospitato nella rete VPC del consumer e pubblicare gli eventi.

    Quando crei un collegamento di rete, puoi autorizzare esplicitamente una connessione tramite gli elenchi di accettazione e rifiuto dei producer; in ogni caso, Eventarc può aggiornare l'elenco di accettazione di un collegamento di rete con l'ID progetto appropriato e senza alcun intervento da parte tua.

  • EVENT_FILTER_TYPE: l'identificatore dell'evento. Quando una chiamata API per il metodo ha esito positivo, viene generato un evento. Per le operazioni a lunga esecuzione, l'evento viene generato solo al termine dell'operazione e solo se l'azione viene eseguita correttamente. Consulta l'elenco dei tipi di eventi diretti supportati.

  • COLLECTION_ID (facoltativo): il componente resource che può fungere da filtro di eventi; ad esempio, per Cloud Functions, è function.

  • RESOURCE_ID: l'identificatore della risorsa utilizzata come valore di filtro per la raccolta associata. Per ulteriori informazioni, consulta ID risorsa.

  • PATH_PATTERN: il pattern del percorso da applicare quando filtri la risorsa.

  • SERVICE_ACCOUNT_NAME: il nome del tuo account di servizio gestito dall'utente.

  • PROJECT_ID: il tuo ID progetto Google Cloud.

Note:

  • Il flag --event-filters="type=EVENT_FILTER_TYPE" è obbligatorio. Se non è impostato nessun altro filtro di eventi, vengono abbinati gli eventi per tutte le risorse.
  • EVENT_FILTER_TYPE non può essere modificato dopo la creazione. Per modificare EVENT_FILTER_TYPE, crea un nuovo trigger ed elimina quello precedente.
  • Ogni attivatore può avere più filtri di eventi, delimitati da virgole in un flag --event-filters=[ATTRIBUTE=VALUE,...] oppure ripetere il flag per aggiungere altri filtri. Solo gli eventi che corrispondono a tutti i filtri vengono inviati alla destinazione. I caratteri jolly e le espressioni regolari non sono supportati; tuttavia, quando utilizzi il flag --event-filters-path-pattern, puoi definire un pattern del percorso della risorsa.
  • Il flag --service-account viene utilizzato per specificare l'indirizzo email dell'account di servizio IAM associato al trigger.

Esempio:

gcloud eventarc triggers create helloworld-trigger \
    --location=us-central1 \
    --destination-http-endpoint-uri=http://my-vm.us-central1-a.c.my-project.internal \
    --network-attachment="projects/my-project/regions/us-central1/networkAttachments/my-attachment-name" \
    --event-filters="type=google.cloud.pubsub.topic.v1.messagePublished" \
    --service-account=my-service-account@my-project.iam.gserviceaccount.com

Eventi dei log di controllo

gcloud eventarc triggers create TRIGGER \
    --location=LOCATION \
    --destination-http-endpoint-uri=ENDPOINT_URI \
    --network-attachment=NETWORK_ATTACHMENT_ID \
    --event-filters="type=google.cloud.audit.log.v1.written" \
    --event-filters="serviceName=SERVICE_NAME" \
    --event-filters="methodName=METHOD_NAME" \
    --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com"

Sostituisci quanto segue:

  • TRIGGER: l'ID del trigger o un identificatore completo.
  • LOCATION: la posizione del trigger Eventarc. In alternativa, puoi impostare la proprietà eventarc/location, ad esempio gcloud config set eventarc/location us-central1.

    Per evitare problemi di prestazioni e localizzazione dei dati, la località deve corrispondere a quella del servizio Google Cloud che genera gli eventi. Sono supportate le seguenti località:

    • asia-east1
    • europe-north1
    • europe-west1
    • us-central1
    • us-east1

    Per ulteriori informazioni, consulta le località Eventarc.

  • ENDPOINT_URI: l'URI dell'endpoint HTTP interno nella rete VPC che riceve gli eventi per il trigger. L'URI può essere un indirizzo IP interno statico nella rete VPC indirizzato dal collegamento di rete o il nome DNS interno di un servizio risolvibile da Cloud DNS.

    Se l'endpoint HTTP utilizza un nome DNS interno, Eventarc crea automaticamente zone di peering DNS e inoltra le richieste DNS alle zone DNS nella rete VPC di destinazione. Il peering DNS consente di inviare richieste di record che provengono dallo spazio dei nomi di una zona a un'altra rete VPC. Per ulteriori informazioni, consulta Zone di peering e Creare una zona di peering.

    Tieni presente che non puoi creare più di un trigger per lo stesso nome DNS.

  • NETWORK_ATTACHMENT_ID: identificatore univoco per la risorsa di collegamento di rete. L'identificatore viene generato dopo la creazione di un collegamento di rete. Per ulteriori informazioni, consulta la sezione Creare collegamenti di rete.

    I collegamenti di rete consentono alle reti VPC dei producer di servizi di avviare connessioni alle reti VPC consumer. Eventarc utilizza il collegamento di rete per stabilire una connessione all'endpoint HTTP interno ospitato nella rete VPC del consumer e pubblicare gli eventi.

    Quando crei un collegamento di rete, puoi autorizzare esplicitamente una connessione tramite gli elenchi di accettazione e rifiuto dei producer; in ogni caso, Eventarc può aggiornare l'elenco di accettazione di un collegamento di rete con l'ID progetto appropriato e senza alcun intervento da parte tua.

  • SERVICE_NAME: l'identificatore del servizio Google Cloud. Consulta l'elenco dei tipi di eventi degli audit log supportati.

  • METHOD_NAME: l'identificatore dell'operazione. Consulta l'elenco dei tipi di eventi degli audit log supportati.

  • SERVICE_ACCOUNT_NAME: il nome del tuo account di servizio gestito dall'utente.

  • PROJECT_ID: il tuo ID progetto Google Cloud.

Note:

  • Questi flag sono obbligatori:
    • --event-filters="type=google.cloud.audit.log.v1.written"
    • --event-filters="serviceName=VALUE"
    • --event-filters="methodName=VALUE"
  • Facoltativamente, filtra gli eventi per una risorsa specifica utilizzando il flag --event-filters="resourceName=VALUE" e specificando il percorso completo della risorsa. Ometti il flag per le risorse create dinamicamente con identificatori generati al momento della creazione. In alternativa, filtra gli eventi per un insieme di risorse utilizzando il flag --event-filters-path-pattern="resourceName=VALUE" e specificando il pattern del percorso delle risorse.
  • Ogni attivatore può avere più filtri di eventi, delimitati da virgole in un flag --event-filters=[ATTRIBUTE=VALUE,...] oppure ripetere il flag per aggiungere altri filtri. Solo gli eventi che corrispondono a tutti i filtri vengono inviati alla destinazione. I caratteri jolly e le espressioni regolari non sono supportati; tuttavia, quando utilizzi il flag --event-filters-path-pattern, puoi definire un pattern del percorso della risorsa.
  • Una volta creato un attivatore, il tipo di filtro per eventi non può essere modificato. Per un tipo di evento diverso, devi creare un nuovo attivatore.
  • Il flag --service-account viene utilizzato per specificare l'indirizzo email dell'account di servizio IAM associato al trigger.

Esempio:

gcloud eventarc triggers create helloworld-trigger \
    --location=us-central1 \
    --destination-http-endpoint-uri=http://10.10.10.2 \
    --network-attachment="projects/my-project/regions/us-central1/networkAttachments/my-attachment" \
    --event-filters="type=google.cloud.audit.log.v1.written" \
    --event-filters="serviceName=eventarc.googleapis.com" \
    --event-filters="methodName=google.cloud.eventarc.v1.Eventarc.GetTrigger" \
    --event-filters="resourceName=projects/my-project/locations/us-central1/triggers/my-trigger" \
    --service-account=my-service-account@my-project.iam.gserviceaccount.com

Eventi di terze parti

gcloud eventarc triggers create TRIGGER \
    --location=LOCATION \
    --destination-http-endpoint-uri=ENDPOINT_URI \
    --network-attachment=NETWORK_ATTACHMENT_ID \
    --event-filters="type=EVENT_FILTER_TYPE" \
    --channel=CHANNEL_NAME \
    --project=PROJECT_ID \
    --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com"

Sostituisci quanto segue:

  • TRIGGER: l'ID del trigger o un identificatore completo.
  • LOCATION: la località del trigger Eventarc. In alternativa, puoi impostare la proprietà eventarc/location, ad esempio gcloud config set eventarc/location us-central1.

    Per evitare problemi di prestazioni e localizzazione dei dati, la località deve corrispondere a quella del servizio Google Cloud che genera gli eventi.

    Tieni presente che per questa destinazione evento sono supportate solo le seguenti località:

    • asia-east1
    • europe-north1
    • europe-west1
    • us-central1
    • us-east1

    Per ulteriori informazioni, consulta le località Eventarc.

  • ENDPOINT_URI: l'URI dell'endpoint HTTP interno nella rete VPC che riceve gli eventi per il trigger. L'URI può essere un indirizzo IP interno statico nella rete VPC indirizzato dal collegamento di rete o il nome DNS interno di un servizio risolvibile da Cloud DNS.

    Se l'endpoint HTTP utilizza un nome DNS interno, Eventarc crea automaticamente zone di peering DNS e inoltra le richieste DNS alle zone DNS nella rete VPC di destinazione. Il peering DNS consente di inviare richieste di record che provengono dallo spazio dei nomi di una zona a un'altra rete VPC. Per ulteriori informazioni, consulta Zone di peering e Creare una zona di peering.

    Tieni presente che non puoi creare più di un trigger per lo stesso nome DNS.

  • NETWORK_ATTACHMENT_ID: identificatore univoco per la risorsa di collegamento di rete. L'identificatore viene generato dopo la creazione di un collegamento di rete. Per ulteriori informazioni, consulta la sezione Creare collegamenti di rete.

    I collegamenti di rete consentono alle reti VPC dei producer di servizi di avviare connessioni alle reti VPC consumer. Eventarc utilizza il collegamento di rete per stabilire una connessione all'endpoint HTTP interno ospitato nella rete VPC del consumer e pubblicare gli eventi.

    Quando crei un collegamento di rete, puoi autorizzare esplicitamente una connessione tramite gli elenchi di accettazione e rifiuto dei producer; in ogni caso, Eventarc può aggiornare l'elenco di accettazione di un collegamento di rete con l'ID progetto appropriato e senza alcun intervento da parte tua.

  • EVENT_FILTER_TYPE: il tipo di evento supportato dal provider. Consulta l'elenco dei tipi di eventi di terze parti supportati.

  • CHANNEL_NAME: un nome per il canale. Per ulteriori informazioni, consulta l'articolo Creare un canale e recuperarne i dettagli.

  • PROJECT_ID: il tuo ID progetto Google Cloud.

  • SERVICE_ACCOUNT_NAME: il nome del tuo account di servizio gestito dall'utente.

Note:

  • Il flag --event-filters="type=EVENT_FILTER_TYPE" è obbligatorio. Se non è impostato nessun altro filtro di eventi, vengono abbinati gli eventi per tutte le risorse.
  • EVENT_FILTER_TYPE non può essere modificato dopo la creazione. Per modificare EVENT_FILTER_TYPE, crea un nuovo trigger ed elimina quello precedente.
  • Ogni attivatore può avere più filtri di eventi, delimitati da virgole in un flag --event-filters=[ATTRIBUTE=VALUE,...] oppure ripetere il flag per aggiungere altri filtri. Solo gli eventi che corrispondono a tutti i filtri vengono inviati alla destinazione. I caratteri jolly e le espressioni regolari non sono supportati.
  • Il flag --service-account viene utilizzato per specificare l'indirizzo email dell'account di servizio IAM associato al trigger.

Esempio:

gcloud eventarc triggers create helloworld-trigger \
    --location=us-central1 \
    --destination-http-endpoint-uri=http://my-vm.us-central1-a.c.my-project.internal \
    --network-attachment="projects/my-project/regions/us-central1/networkAttachments/my-attachment-name" \
    --event-filters="type=third-party-event-type" \
    --channel=my-channel \
    --project=my-project-ID \
    --service-account=my-service-account@my-project.iam.gserviceaccount.com

Elenca un trigger

Puoi confermare la creazione di un trigger elencando i trigger Eventarc utilizzando Google Cloud CLI o la console Google Cloud.

Console

  1. Nella console Google Cloud, vai alla pagina Trigger di Eventarc.

    Vai ai trigger

    Questa pagina elenca i tuoi trigger in tutte le località e include dettagli come nomi, regioni, fornitori di eventi, destinazioni e altro ancora.

  2. Per filtrare gli attivatori:

    1. Fai clic su Filtro o sul campo Attivatori filtro.
    2. Nell'elenco Proprietà, seleziona un'opzione per filtrare gli attivatori.

    Puoi selezionare una singola proprietà o utilizzare l'operatore logico OR per aggiungerne altre.

  3. Per ordinare gli attivatori, accanto a qualsiasi intestazione di colonna supportata, fai clic su Ordina.

gcloud

Esegui questo comando per elencare i trigger:

gcloud eventarc triggers list --location=-

Questo comando elenca i trigger in tutte le località e include dettagli come nomi, tipi, destinazioni e stati.

Passaggi successivi