Risorsa: TcpRoute
TcpRoute è la risorsa che definisce la modalità di instradamento del traffico TCP da parte di una risorsa mesh/gateway.
Rappresentazione JSON |
---|
{
"name": string,
"selfLink": string,
"createTime": string,
"updateTime": string,
"description": string,
"rules": [
{
object ( |
Campi | |
---|---|
name |
Obbligatorio. Nome della risorsa TcpRoute. Corrisponde al pattern |
selfLink |
Solo output. URL definito dal server di questa risorsa |
createTime |
Solo output. Timestamp di creazione della risorsa. Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
updateTime |
Solo output. Il timestamp di aggiornamento della risorsa. Un timestamp in formato "Zulu" RFC3339 UTC, con risoluzione in nanosecondi e fino a nove cifre frazionarie. Esempi: |
description |
Facoltativo. Una descrizione in testo libero della risorsa. Lunghezza massima: 1024 caratteri. |
rules[] |
Obbligatorio. Regole che definiscono le modalità di routing e gestione del traffico. È necessario specificare almeno una RouteRule. Se sono presenti più regole, l'azione intrapresa sarà la prima regola corrispondente. |
meshes[] |
Facoltativo. I mesh definiscono un elenco di mesh a cui è collegato questa TcpRoute come una delle regole di routing per instradare le richieste gestite dal mesh. Ogni riferimento mesh deve corrispondere al pattern: Il mesh collegato deve essere di tipo SIDECAR |
gateways[] |
Facoltativo. Gateway definisce un elenco di gateway a cui è collegata questa TcpRoute come una delle regole di routing per instradare le richieste gestite dal gateway. Ogni riferimento al gateway deve corrispondere al pattern: |
labels |
Facoltativo. Set di tag di etichetta associati alla risorsa TcpRoute. Un oggetto contenente un elenco di |
RouteRule
Specifica come far corrispondere il traffico e come instradarlo in caso di corrispondenza del traffico.
Rappresentazione JSON |
---|
{ "matches": [ { object ( |
Campi | |
---|---|
matches[] |
Facoltativo. RouteMatch definisce il predicato utilizzato per abbinare le richieste a una determinata azione. Più tipi di corrispondenza sono contrassegnati con "OR" per la valutazione. Se non viene specificato alcun campo routeMatch, questa regola corrisponderà in modo incondizionato al traffico. |
action |
Obbligatorio. La regola dettagliata che definisce come indirizzare il traffico corrispondente. |
RouteMatch
RouteMatch definisce il predicato utilizzato per abbinare le richieste a una determinata azione. Più tipi di corrispondenza sono contrassegnati con "OR" per la valutazione. Se non viene specificato alcun campo routeMatch, questa regola corrisponderà in modo incondizionato al traffico.
Rappresentazione JSON |
---|
{ "address": string, "port": string } |
Campi | |
---|---|
address |
Obbligatorio. Deve essere specificato nel formato dell'intervallo CIDR. Un intervallo CIDR è costituito da un indirizzo IP e da un prefisso per costruire la subnet mask. Per impostazione predefinita, la lunghezza del prefisso è 32 (ovvero corrisponde a un singolo indirizzo IP). Sono supportati solo gli indirizzi IPV4. Esempi: "10.0.0.1": corrisponde a questo indirizzo IP esatto. "10.0.0.0/8": corrisponde a qualsiasi indirizzo IP all'interno della subnet 10.0.0.0 e della maschera 255.255.255.0. "0.0.0.0/0" - corrisponde a qualsiasi indirizzo IP'. |
port |
Obbligatorio. Specifica la porta di destinazione da utilizzare per il confronto. |
RouteAction
Le specifiche per il routing del traffico e l'applicazione dei criteri associati.
Rappresentazione JSON |
---|
{
"destinations": [
{
object ( |
Campi | |
---|---|
destinations[] |
Facoltativo. I servizi di destinazione a cui deve essere inoltrato il traffico. È richiesto almeno un servizio di destinazione. Puoi impostare solo una destinazione del percorso o una destinazione originale. |
originalDestination |
Facoltativo. Se il valore è true, il router utilizzerà l'IP di destinazione e la porta della connessione originale come destinazione della richiesta. Il valore predefinito è false. Puoi impostare solo una delle destinazioni del percorso o della destinazione originale. |
idleTimeout |
Facoltativo. Specifica il timeout di inattività per la route selezionata. Per timeout di inattività si intende il periodo in cui non vengono inviati o ricevuti byte sulla connessione upstream o downstream. Se non viene configurato, il timeout di inattività predefinito è 30 secondi. Se impostato su 0s, il timeout verrà disattivato. Una durata in secondi con un massimo di nove cifre frazionarie, che termina con " |
RouteDestination
Descrivi la destinazione a cui indirizzare il traffico.
Rappresentazione JSON |
---|
{ "serviceName": string, "weight": integer } |
Campi | |
---|---|
serviceName |
Obbligatorio. L'URL di un BackendService a cui instradare il traffico. |
weight |
Facoltativo. Specifica la proporzione di richieste inoltrate al backend a cui fa riferimento il campo serviceName. Questo valore viene calcolato come segue: - peso/Somma(ponderazioni in questo elenco di destinazione). Per i valori diversi da zero, potrebbe esserci un po' di epsilon dalla proporzione esatta definita qui a seconda della precisione supportata da un'implementazione. Se viene specificato un solo serviceName e ha una ponderazione maggiore di 0, il 100% del traffico viene inoltrato a quel backend. Se per un nome di servizio vengono specificate le ponderazioni, devono esserlo per tutti i nomi. Se le ponderazioni non sono specificate per tutti i servizi, il traffico viene distribuito in modo uguale tra tutti i servizi. |
Metodi |
|
---|---|
|
Crea un nuovo TcpRoute in un progetto e una località specifici. |
|
Elimina un singolo TcpRoute. |
|
Recupera i dettagli di una singola TcpRoute. |
|
Ottieni il criterio di controllo dell'accesso per una risorsa. |
|
Elenca TcpRoute in un progetto e in una località specifici. |
|
Aggiorna i parametri di un singolo TcpRoute. |
|
Imposta il criterio di controllo dell'accesso sulla risorsa specificata. |
|
Restituisce le autorizzazioni di cui un chiamante dispone per la risorsa specificata. |