REST Resource: projects.locations.tlsRoutes

Recurso: TlsRoute

TlsRoute define cómo se debe enrutar el tráfico según el SNI y otros atributos L3 coincidentes.

Representación JSON
{
  "name": string,
  "selfLink": string,
  "createTime": string,
  "updateTime": string,
  "description": string,
  "rules": [
    {
      object (RouteRule)
    }
  ],
  "meshes": [
    string
  ],
  "gateways": [
    string
  ],
  "labels": {
    string: string,
    ...
  }
}
Campos
name

string

Obligatorio. Es el nombre del recurso TlsRoute. Coincide con el patrón projects/*/locations/global/tlsRoutes/tls_route_name>.

createTime

string (Timestamp format)

Solo salida. Marca de tiempo cuando se creó el recurso.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Solo salida. Marca de tiempo cuando se actualizó el recurso.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

description

string

Opcional. Es una descripción de texto libre del recurso. Longitud máxima: 1,024 caracteres.

rules[]

object (RouteRule)

Obligatorio. Son reglas que definen cómo se enruta y controla el tráfico. Se debe proporcionar al menos una RouteRule. Si hay varias reglas, la acción realizada será la primera regla que coincidirá.

meshes[]

string

Opcional. Meshes define una lista de mallas a las que se adjunta esta TlsRoute, como una de las reglas de enrutamiento para enrutar las solicitudes que entrega la malla.

Cada referencia de malla debe coincidir con el patrón: projects/*/locations/global/meshes/<mesh_name>

La malla adjunta debe ser de tipo SIDECAR.

gateways[]

string

Opcional. Gateways define una lista de puertas de enlace a las que se adjunta esta TlsRoute, como una de las reglas de enrutamiento para enrutar las solicitudes que entrega la puerta de enlace.

Cada referencia de puerta de enlace debe coincidir con el patrón: projects/*/locations/global/gateways/<gateway_name>

labels

map (key: string, value: string)

Opcional. Es un conjunto de etiquetas asociadas con el recurso TlsRoute.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

RouteRule

Especifica cómo hacer coincidir el tráfico y cómo enrutarlo cuando coincide.

Representación JSON
{
  "matches": [
    {
      object (RouteMatch)
    }
  ],
  "action": {
    object (RouteAction)
  }
}
Campos
matches[]

object (RouteMatch)

Obligatorio. RouteMatch define el predicado que se usa para hacer coincidir las solicitudes con una acción determinada. Cuando hay varios tipos de concordancia, se usa el operador "OR" para su evaluación.

action

object (RouteAction)

Obligatorio. La regla detallada que define cómo enrutar el tráfico coincidente.

RouteMatch

RouteMatch define el predicado que se usa para hacer coincidir las solicitudes con una acción determinada. Los tipos de concordancia múltiples se relacionan con el operador "Y" para la evaluación. Si no se especifica un campo routeMatch, esta regla coincidirá con el tráfico de forma incondicional.

Representación JSON
{
  "sniHost": [
    string
  ],
  "alpn": [
    string
  ]
}
Campos
sniHost[]

string

Opcional. SNI (indicador de nombre del servidor) con el que debe coincidir. El SNI se comparará con todos los dominios de comodín, es decir, www.example.com se comparará primero con www.example.com, luego con *.example.com y, luego, con *.com.. No se admiten comodines parciales, y los valores como *w.example.com no son válidos. Se requiere al menos uno de sniHost y alpn. Se pueden configurar hasta 100 hosts de Sni en todas las coincidencias.

alpn[]

string

Opcional. ALPN (negociación del protocolo de la capa de aplicación) con el que debe coincidir. Ejemplos: “http/1.1”, “h2”. Se requiere al menos uno de los parámetros sniHost o alpn. Se pueden establecer hasta 5 Alpns en todas las coincidencias.

RouteAction

Las especificaciones para enrutar el tráfico y aplicar las políticas asociadas.

Representación JSON
{
  "destinations": [
    {
      object (RouteDestination)
    }
  ],
  "idleTimeout": string
}
Campos
destinations[]

object (RouteDestination)

Obligatorio. Los servicios de destino a los que se debe reenviar el tráfico. Se requiere al menos un servicio de destino.

idleTimeout

string (Duration format)

Opcional. Especifica el tiempo de espera de inactividad para la ruta seleccionada. El tiempo de espera de inactividad se define como el período en el que no se envían ni reciben bytes en la conexión ascendente o descendente. Si no se establece, el tiempo de espera de inactividad predeterminado es de 1 hora. Si se establece en 0 s, se inhabilitará el tiempo de espera.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

RouteDestination

Describe el destino al que se enrutará el tráfico.

Representación JSON
{
  "serviceName": string,
  "weight": integer
}
Campos
serviceName

string

Obligatorio. La URL de un BackendService al que se enrutará el tráfico.

weight

integer

Opcional. Especifica la proporción de solicitudes autenticadas con respecto al backend al que hace referencia el campo serviceName. Esto se calcula de la siguiente manera: - Peso/Suma(pesos en los destinos) No es necesario que los pesos en todos los destinos sumen 100.

Métodos

create

Crea una TlsRoute nueva en una ubicación y proyecto determinados.

delete

Borra una sola TlsRoute.

get

Obtiene detalles de una sola TlsRoute.

list

Muestra una lista de TlsRoute en una ubicación y un proyecto determinados.

patch

Actualiza los parámetros de un solo TlsRoute.