REST Resource: projects.locations.tlsRoutes

Ressource : TlsRoute

TlsRoute définit la manière dont le trafic doit être acheminé en fonction du SNI et d'autres attributs L3 correspondants.

Représentation JSON
{
  "name": string,
  "selfLink": string,
  "createTime": string,
  "updateTime": string,
  "description": string,
  "rules": [
    {
      object (RouteRule)
    }
  ],
  "meshes": [
    string
  ],
  "gateways": [
    string
  ],
  "labels": {
    string: string,
    ...
  }
}
Champs
name

string

Obligatoire. Nom de la ressource TlsRoute. Il correspond au modèle projects/*/locations/global/tlsRoutes/tls_route_name>.

createTime

string (Timestamp format)

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 : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

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 : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

description

string

Facultatif. Description en texte libre de la ressource. Longueur maximale : 1 024 caractères.

rules[]

object (RouteRule)

Obligatoire. Règles qui définissent la manière dont le trafic est acheminé et géré. Vous devez indiquer au moins un RouteRule. Si plusieurs règles sont définies, l'action effectuée correspond à la première règle correspondante.

meshes[]

string

Facultatif. Les maillages définissent une liste de réseaux maillés auxquels ce TlsRoute est associé. Il s'agit de l'une des règles de routage permettant d'acheminer les requêtes diffusées par le maillage.

Chaque référence au maillage doit correspondre au format suivant: projects/*/locations/global/meshes/<mesh_name>

Le maillage connecté doit être de type SIDECAR

gateways[]

string

Facultatif. Les passerelles définissent une liste de passerelles auxquelles ce TlsRoute est associé, car il s'agit de l'une des règles de routage permettant d'acheminer les requêtes diffusées par la passerelle.

Chaque référence de passerelle doit correspondre au format suivant: projects/*/locations/global/gateways/<gateway_name>

labels

map (key: string, value: string)

Facultatif. Ensemble de tags d'étiquettes associés à la ressource TlsRoute.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

RouteRule

Spécifie comment mettre en correspondance le trafic et comment l'acheminer lorsqu'il correspond.

Représentation JSON
{
  "matches": [
    {
      object (RouteMatch)
    }
  ],
  "action": {
    object (RouteAction)
  }
}
Champs
matches[]

object (RouteMatch)

Obligatoire. RouteMatch définit le prédicat utilisé pour faire correspondre les requêtes à une action donnée. Plusieurs types de correspondance sont associés à l'opérateur "OU" pour l'évaluation.

action

object (RouteAction)

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 associés à l'opérateur "AND" pour l'évaluation. Si aucun champ routeMatch n'est spécifié, la règle mettra en correspondance le trafic sans condition.

Représentation JSON
{
  "sniHost": [
    string
  ],
  "alpn": [
    string
  ]
}
Champs
sniHost[]

string

Facultatif. SNI (indication du nom du serveur) à comparer. Le SNI sera mis en correspondance avec tous les domaines avec caractères génériques, c'est-à-dire que www.example.com sera d'abord mis en correspondance avec www.example.com, puis avec *.example.com, puis avec *.com.. Les caractères génériques partiels ne sont pas acceptés, et les valeurs telles que *w.example.com ne sont pas valides. Vous devez indiquer au moins l'un des champs sniHost et alpn. Vous pouvez définir jusqu'à 100 hôtes SNI pour tous les matchs.

alpn[]

string

Facultatif. ALPN (Application-Layer Protocol Negotiation) à mettre en correspondance. Exemples : "http/1.1", "h2". Vous devez indiquer au moins l'un des champs sniHost et alpn. Vous pouvez définir jusqu'à cinq algorithmes pour l'ensemble des correspondances.

RouteAction

Spécifications pour le routage du trafic et l'application des règles associées.

Représentation JSON
{
  "destinations": [
    {
      object (RouteDestination)
    }
  ],
  "idleTimeout": string
}
Champs
destinations[]

object (RouteDestination)

Obligatoire. Services de destination auxquels le trafic doit être transféré. Veuillez indiquer au moins un service de destination.

idleTimeout

string (Duration format)

Facultatif. Indique le délai avant expiration d'inactivité pour la route sélectionnée. Le délai d'inactivité est défini comme la période au cours de laquelle aucun octet n'est envoyé ni reçu sur la connexion en amont ou en aval. Si cette règle n'est pas configurée, le délai d'inactivité par défaut est d'une heure. S'il est défini 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 "s". Exemple : "3.5s"

RouteDestination

Décrivez la destination vers laquelle le trafic doit être acheminé.

Représentation JSON
{
  "serviceName": string,
  "weight": integer
}
Champs
serviceName

string

Obligatoire. URL d'un BackendService vers lequel acheminer le trafic.

weight

integer

Facultatif. Spécifie la proportion de requêtes transférées au backend référencé par le champ serviceName. Le calcul est le suivant : - weight/Somme(pondérations dans les destinations) : la somme des pondérations de toutes les destinations n'a pas besoin d'être égale à 100.

Méthodes

create

Crée un TlsRoute dans un projet et un emplacement donnés.

delete

Supprime un seul TlsRoute.

get

Récupère les informations d'un seul TlsRoute.

list

Répertorie les TlsRoute dans un projet et un emplacement donnés.

patch

Met à jour les paramètres d'un seul TlsRoute.