Ressource: TcpRoute
TcpRoute est la ressource qui définit la manière dont le trafic TCP doit être acheminé par une ressource Mesh/Gateway.
Représentation JSON |
---|
{
"name": string,
"selfLink": string,
"createTime": string,
"updateTime": string,
"description": string,
"rules": [
{
object ( |
Champs | |
---|---|
name |
Obligatoire. Nom de la ressource TcpRoute. Il correspond au schéma |
selfLink |
Uniquement en sortie. URL de cette ressource définie par le serveur |
createTime |
Uniquement en sortie. Code temporel de la création de la ressource. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
updateTime |
Uniquement en sortie. Code temporel de la mise à jour de la ressource. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
description |
Facultatif. Description libre de la ressource. Longueur maximale : 1 024 caractères. |
rules[] |
Obligatoire. Règles qui définissent la manière dont le trafic est acheminé et géré. Vous devez fournir au moins une règle de routage. Si plusieurs règles sont définies, l'action effectuée correspond à la première règle correspondante. |
meshes[] |
Facultatif. Les maillages définissent une liste de maillages auxquels ce TcpRoute est associé, en tant qu'une des règles de routage pour acheminer les requêtes traitées par le maillage. Chaque référence de maillage doit respecter le format suivant: La structure Mesh associée doit être de type SIDECAR. |
gateways[] |
Facultatif. Gateways définit une liste de passerelles auxquelles ce TcpRoute est associé, en tant qu'une des règles de routage pour acheminer les requêtes traitées par la passerelle. Chaque référence de passerelle doit respecter le format suivant: |
labels |
Facultatif. Ensemble de tags d'étiquette associés à la ressource TcpRoute. Objet contenant une liste de paires |
RouteRule
Indique comment mettre en correspondance le trafic et comment l'acheminer lorsqu'il est mis en correspondance.
Représentation JSON |
---|
{ "matches": [ { object ( |
Champs | |
---|---|
matches[] |
Facultatif. RouteMatch définit le prédicat utilisé pour faire correspondre les requêtes à une action donnée. Plusieurs types de correspondance sont évalués à l'aide de l'opérateur "OU". Si aucun champ routeMatch n'est spécifié, cette règle correspondra inconditionnellement au trafic. |
action |
Obligatoire. Règle détaillée définissant comment acheminer le trafic mis en correspondance. |
RouteMatch
RouteMatch définit le prédicat utilisé pour faire correspondre les requêtes à une action donnée. Plusieurs types de correspondance sont évalués à l'aide de l'opérateur "OU". Si aucun champ routeMatch n'est spécifié, cette règle correspondra inconditionnellement au trafic.
Représentation JSON |
---|
{ "address": string, "port": string } |
Champs | |
---|---|
address |
Obligatoire. Doit être spécifié au format de plage CIDR. Une plage CIDR se compose d'une adresse IP et d'une longueur de préfixe pour créer le masque de sous-réseau. Par défaut, la longueur du préfixe est de 32 (c'est-à-dire qu'elle correspond à une seule adresse IP). Seules les adresses IPv4 sont acceptées. Exemples : "10.0.0.1" : correspond à cette adresse IP exacte. "10.0.0.0/8" : correspond à n'importe quelle adresse IP du sous-réseau 10.0.0.0 et du masque 255.255.255.0. "0.0.0.0/0" : correspond à n'importe quelle adresse IP. |
port |
Obligatoire. Spécifie le port de destination à mettre en correspondance. |
RouteAction
Spécifications pour le routage du trafic et l'application des règles associées.
Représentation JSON |
---|
{
"destinations": [
{
object ( |
Champs | |
---|---|
destinations[] |
Facultatif. Services de destination auxquels le trafic doit être transféré. Vous devez indiquer au moins un service de destination. Vous ne pouvez définir qu'une seule destination de parcours ou destination d'origine. |
originalDestination |
Facultatif. Si la valeur est "true", le routeur utilisera l'adresse IP et le port de destination de la connexion d'origine comme destination de la requête. La valeur par défaut est "false". Vous ne pouvez définir qu'une seule destination de parcours ou destination d'origine. |
idleTimeout |
Facultatif. Indique le délai avant expiration d'inactivité pour la route sélectionnée. Le délai avant expiration d'inactivité est défini comme la période pendant laquelle aucun octet n'est envoyé ni reçu sur la connexion en amont ou en aval. Si elle n'est pas définie, la valeur par défaut du délai avant expiration d'inactivité est de 30 secondes. Si cette valeur est définie sur 0 s, le délai avant expiration est désactivé. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
RouteDestination
Décrivez la destination vers laquelle le trafic doit être acheminé.
Représentation JSON |
---|
{ "serviceName": string, "weight": integer } |
Champs | |
---|---|
serviceName |
Obligatoire. URL d'un BackendService vers lequel acheminer le trafic. |
weight |
Facultatif. Spécifie la proportion de requêtes transférées vers le backend référencé par le champ serviceName. Il est calculé comme suit: - poids/somme des poids de cette liste de destinations. Pour les valeurs non nulles, il peut y avoir un epsilon par rapport à la proportion exacte définie ici, en fonction de la précision prise en charge par une implémentation. Si un seul serviceName est spécifié et qu'il a une pondération supérieure à 0, 100% du trafic est transféré vers ce backend. Si des poids sont spécifiés pour un nom de service, ils doivent l'être pour tous. Si aucune pondération n'est spécifiée pour tous les services, le trafic est réparti à parts égales entre eux. |
Méthodes |
|
---|---|
|
Crée un TcpRoute dans un projet et un emplacement donnés. |
|
Supprime un seul TcpRoute. |
|
Récupère les informations d'un seul TcpRoute. |
|
Répertorie TcpRoute dans un projet et un emplacement donnés. |
|
Met à jour les paramètres d'un seul objet TcpRoute. |