MQ Rabbit
Il connettore Rabbit MQ fornisce connettività a Rabbit MQ.
Prima di iniziare
Prima di utilizzare il connettore Rabbit MQ, esegui queste attività:
- Nel tuo progetto Google Cloud:
- Concedi il ruolo IAM roles/connectors.admin all'utente che configura il connettore.
- Concedi i seguenti ruoli IAM all'account di servizio che vuoi utilizzare per il connettore:
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
Un account di servizio è un tipo speciale di Account Google destinato a rappresentare un utente non umano che deve autenticarsi ed essere autorizzato ad accedere ai dati nelle API di Google. Se non hai un account di servizio, devi crearne uno. Per maggiori informazioni, consulta la pagina Creazione di un account di servizio.
- Abilita i seguenti servizi:
secretmanager.googleapis.com
(API Secret Manager)connectors.googleapis.com
(API Connectors)
Per informazioni su come abilitare i servizi, vedi Attivazione dei servizi.
Se questi servizi o autorizzazioni non sono stati abilitati in precedenza per il tuo progetto, ti viene richiesto di abilitarli durante la configurazione del connettore.
Configura il connettore
Per configurare il connettore è necessario creare una connessione all'origine dati (sistema di backend). Una connessione è specifica per un'origine dati. Se disponi di molte origini dati, devi creare una connessione separata per ciascuna. Per creare una connessione:
- Nella console Cloud, vai alla pagina Connettori di integrazione > Connessioni, quindi seleziona o crea un progetto Google Cloud.
- Fai clic su + CREA NUOVO per aprire la pagina Crea connessione.
- Nella sezione Posizione, scegli la località per la connessione.
- Regione: seleziona una località dall'elenco a discesa.
Per l'elenco di tutte le aree geografiche supportate, consulta la sezione Località.
- Fai clic su Avanti.
- Regione: seleziona una località dall'elenco a discesa.
- Nella sezione Dettagli connessione, completa quanto segue:
- Connettore: seleziona RabbitMQ dall'elenco a discesa dei connettori disponibili.
- Versione connettore: seleziona la versione del connettore dall'elenco a discesa delle versioni disponibili.
- Nel campo Nome connessione, inserisci un nome per l'istanza di connessione.
I nomi delle connessioni devono soddisfare i seguenti criteri:
- I nomi delle connessioni possono contenere lettere, numeri o trattini.
- Le lettere devono essere minuscole.
- I nomi delle connessioni devono iniziare con una lettera e terminare con una lettera o un numero.
- I nomi delle connessioni non possono contenere più di 63 caratteri.
- Facoltativamente, inserisci una descrizione per l'istanza di connessione.
- Account di servizio: seleziona un account di servizio con i ruoli richiesti.
- Per utilizzare la connessione per le iscrizioni agli eventi, seleziona Attiva la sottoscrizione agli eventi. Se selezioni questa opzione, viene abilitata la sottoscrizione all'evento con azioni.
- Facoltativamente, configura le impostazioni del nodo di connessione:
- Numero minimo di nodi: inserisci il numero minimo di nodi di connessione.
- Numero massimo di nodi: inserisci il numero massimo di nodi di connessione.
Un nodo è un'unità (o una replica) di una connessione che elabora le transazioni. Sono necessari più nodi per elaborare più transazioni per una connessione e, al contrario, sono necessari meno nodi per elaborare un numero inferiore di transazioni. Per capire in che modo i nodi influiscono sui prezzi del connettore, consulta Prezzi dei nodi di connessione. Se non inserisci alcun valore, per impostazione predefinita il numero minimo di nodi viene impostato su 2 (per una migliore disponibilità) e il numero massimo di nodi viene impostato su 50.
- Nome coda predefinito: il nome della coda predefinita che può essere sostituito durante l'esecuzione dell'azione.
- Host virtuale: l'host virtuale per RabbitMQ.
- Facoltativamente, fai clic su + Aggiungi etichetta per aggiungere un'etichetta alla connessione sotto forma di coppia chiave/valore.
- Facoltativamente, se vuoi utilizzare SSL, seleziona Abilita SSL. Vengono visualizzati i dettagli della configurazione SSL.
- Seleziona un tipo di archivio attendibilità. Può essere Pubblico, Privato o Connessione non sicura.
- Seleziona i certificati come visualizzati in base alla selezione dell'archivio di attendibilità.
- Se utilizzi mTLS, seleziona i certificati dell'archivio chiavi nella sezione Archivio chiavi.
- Facoltativamente, seleziona la versione TLS.
- Inserisci il pacchetto di crittografia supportato. Inserisci più suite di crittografia, come valori separati da virgole. Per ulteriori informazioni, consulta la sezione Suite di crittografia supportate.
- Fai clic su Avanti.
- Nella sezione Destinazioni, inserisci i dettagli dell'host remoto (sistema di backend) a cui vuoi connetterti.
- Tipo di destinazione: seleziona un Tipo di destinazione.
- Seleziona Indirizzo host dall'elenco per specificare il nome host o l'indirizzo IP della destinazione.
- Se vuoi stabilire una connessione privata ai tuoi sistemi di backend, seleziona Collegamento endpoint dall'elenco, quindi seleziona il collegamento dell'endpoint richiesto dall'elenco Collegamento endpoint.
Se vuoi stabilire una connessione pubblica ai tuoi sistemi di backend con maggiore sicurezza, puoi considerare di configurare indirizzi IP in uscita statici per le tue connessioni e quindi configurare le regole del firewall in modo da inserire nella lista consentita solo gli indirizzi IP statici specifici.
- Fai clic su Avanti.
- Tipo di destinazione: seleziona un Tipo di destinazione.
-
Nella sezione Autenticazione, inserisci i dettagli di autenticazione.
- Seleziona un Tipo di autenticazione e inserisci i dettagli pertinenti.
La connessione RabbitMQ supporta i seguenti tipi di autenticazione:
- Anonimo
- Nome utente e password
- Fai clic su Avanti.
Per informazioni su come configurare questi tipi di autenticazione, consulta l'articolo Configurare l'autenticazione.
- Seleziona un Tipo di autenticazione e inserisci i dettagli pertinenti.
- Nella sezione Dettagli abbonamento all'evento, configura i dettagli relativi all'evento.
- Inserisci la configurazione dei messaggi non recapitabili. Se configuri i messaggi non recapitabili, la connessione scrive
gli eventi non elaborati nell'argomento Pub/Sub specificato. Inserisci i seguenti dettagli:
- ID progetto messaggi non recapitabili: l'ID progetto Google Cloud in cui hai configurato l'argomento Pub/Sub messaggi non recapitabili.
- Argomento messaggi non recapitabili : l'argomento Pub/Sub in cui vuoi scrivere i dettagli dell'evento non elaborato.
- Inserisci la configurazione dei messaggi non recapitabili. Se configuri i messaggi non recapitabili, la connessione scrive
gli eventi non elaborati nell'argomento Pub/Sub specificato. Inserisci i seguenti dettagli:
- Verifica: controlla i dettagli della connessione e dell'autenticazione.
- Fai clic su Crea.
Configura autenticazione
Inserisci i dettagli in base all'autenticazione che vuoi utilizzare.
-
Anonimo
Se vuoi utilizzare l'accesso anonimo, seleziona Non disponibile.
-
Nome utente e password
- Nome utente: il nome utente RabbitMQ da utilizzare per la connessione.
- Password: il secret di Secret Manager contenente la password associata al nome utente RabbitMQ.
Entità, operazioni e azioni
Tutti i connettori di integrazione forniscono un livello di astrazione per gli oggetti dell'applicazione connessa. Puoi accedere agli oggetti di un'applicazione solo tramite questa astrazione. L'astrazione ti viene esposta sotto forma di entità, operazioni e azioni.
- Entità: un'entità può essere considerata come un oggetto o una raccolta di proprietà nell'applicazione o nel servizio collegato. La definizione di un'entità è diversa da un connettore a un connettore. Ad esempio, in un connettore di database le tabelle sono le entità, in un connettore file server le cartelle sono le entità, mentre in un connettore di sistema di messaggistica le code sono le entità.
Tuttavia, è possibile che un connettore non supporti o non abbia entità. In questo caso, l'elenco
Entities
sarà vuoto. - Operazione: un'operazione è l'attività che è possibile eseguire su un'entità. Su un'entità puoi eseguire una qualsiasi delle seguenti operazioni:
Selezionando un'entità dall'elenco disponibile, viene generato un elenco di operazioni disponibili per l'entità. Per una descrizione dettagliata delle operazioni, consulta le operazioni sull'entità dell'attività Connectors. Tuttavia, se un connettore non supporta nessuna delle operazioni relative alle entità, le operazioni non supportate non saranno elencate nell'elenco
Operations
. - Azione: un'azione è una funzione di prima classe resa disponibile per l'integrazione tramite l'interfaccia del connettore. Un'azione consente di apportare modifiche a una o più entità e variare da connettore a connettore. Normalmente, un'azione avrà alcuni parametri di input e un parametro di output. Tuttavia, è possibile che un connettore non supporti alcuna azione, nel qual caso l'elenco
Actions
sarà vuoto.
Limitazioni di sistema
Il connettore Rabbit MQ può elaborare il seguente numero di transazioni al secondo per nodo e limita qualsiasi transazione oltre questo limite:
- Massimo 9 transazioni se utilizzi prevalentemente l'azione
sendMessage
. - 1 transazione, se usi prevalentemente l'azione
requestReply
.
Per impostazione predefinita, Integration Connectors alloca due nodi (per una migliore disponibilità) per una connessione.
Per informazioni sui limiti applicabili a Integration Connectors, vedi Limiti.
Azioni
La connessione Rabbit MQ supporta le seguenti azioni:
- sendMessage: invia un messaggio in una coda.
- requestReply: invia un messaggio a una coda e specifica anche la coda in cui l'autore della risposta deve scrivere la risposta.
azione sendMessage
Le seguenti tabelle descrivono i parametri di input e output dell'azione sendMessage.
Parametri di input dell'azione sendMessage
Nome parametro | Obbligatorio | Tipo di dati | Descrizione |
---|---|---|---|
messaggio | Sì | String | Messaggio da inviare alla coda Rabbit MQ. Attualmente, la dimensione massima supportata per i messaggi è 10 MB. |
queueName | No | String | Nome della coda MQ Rabbit. Se non specifichi un nome coda, viene utilizzato il nome predefinito della coda specificato durante la creazione della connessione. |
messageContentType | Sì | String | Tipo di contenuto del messaggio che puoi specificare come
Text o Bytes . Devi impostare il tipo su Bytes se stai inviando dati binari.
Per inviare un messaggio in formato binario, devi eseguire le seguenti attività:
|
messageType | Sì | String | Tipo di messaggio che puoi specificare come Datagram
o Reply . |
topicName | No | String | Nome dell'argomento MQ Rabbit. Se non specifichi un nome di argomento, viene utilizzato il nome predefinito della coda specificato durante la creazione della connessione. |
Parametri di output dell'azione sendMessage
Nome parametro | Tipo di dati | Descrizione |
---|---|---|
messageId | String | ID del messaggio inviato. |
azione requestRispondi
Le seguenti tabelle descrivono i parametri di input e di output dell'azione requestRispondi.
Parametri di input dell'azione requestResponse
Nome parametro | Obbligatorio | Tipo di dati | Descrizione |
---|---|---|---|
messaggio | Sì | String | Messaggio da inviare alla coda Rabbit MQ. Le dimensioni massime supportate per i messaggi sono pari a 10 MB. |
queueName | No | String | Nome della coda MQ Rabbit. Se non specifichi un nome coda, viene utilizzato il nome predefinito della coda specificato durante la creazione della connessione. |
messageContentType | Sì | String | Tipo di contenuto del messaggio che puoi specificare come
Text o Bytes . Devi impostare il tipo su Bytes se stai inviando dati binari.
Per inviare un messaggio in formato binario, devi eseguire le seguenti attività:
|
replyToQueue | Sì | String | Coda in cui l'autore della risposta deve scrivere la risposta. |
replyTimeout | Sì | String | Tempo (in millisecondi) fino al quale il connettore attende la risposta nella coda di risposte.
Il valore massimo supportato è 180000 millisecondi (3 minuti).
Se la coda di risposte riceve un messaggio dopo il periodo di timeout, il messaggio non viene elaborato dal connettore. Tuttavia, puoi visualizzare i dettagli dei messaggi di timeout nei log di esecuzione dell'integrazione. |
Parametri di output dell'azione requestResponse
Nome parametro | Tipo di dati | Descrizione |
---|---|---|
replyMessage | String | Messaggio di risposta dell'autore della risposta. |
Utilizzare Terraform per creare connessioni
Puoi utilizzare la risorsa Terraform per creare una nuova connessione.Per scoprire come applicare o rimuovere una configurazione Terraform, vedi Comandi Terraform di base.
Per visualizzare un modello Terraform di esempio per la creazione di connessioni, vedi il modello di esempio.
Quando crei questa connessione utilizzando Terraform, devi impostare le seguenti variabili nel file di configurazione di Terraform:
Nome parametro | Tipo di dati | Obbligatorio | Descrizione |
---|---|---|---|
default_queue_name | STRING | False | Il nome della coda predefinita, può essere sostituito durante l'esecuzione dell'azione. |
default_topic_name | STRING | False | Il nome dell'argomento predefinito, può essere sostituito durante l'esecuzione dell'azione. |
virtual_host | STRING | True | L'host virtuale per Rabbit MQ. |
Utilizza la connessione Rabbit MQ in un'integrazione
Dopo aver creato la connessione, la connessione diventa disponibile sia in Apigee Integration che in Application Integration. Puoi usare la connessione in un'integrazione tramite l'attività Connettori.
- Per capire come creare e utilizzare l'attività Connectors in Apigee Integration, vedi Attività connettori.
- Per capire come creare e utilizzare l'attività Connettori in Application Integration, vedi Attività connettori.