REST Resource: projects.locations.tlsRoutes

Recurso: TlsRoute

TlsRoute define como o tráfego deve ser encaminhado com base no SNI e noutros atributos L3 correspondentes.

Representação JSON
{
  "name": string,
  "selfLink": string,
  "createTime": string,
  "updateTime": string,
  "description": string,
  "rules": [
    {
      object (RouteRule)
    }
  ],
  "meshes": [
    string
  ],
  "gateways": [
    string
  ],
  "labels": {
    string: string,
    ...
  }
}
Campos
name

string

Obrigatório. Nome do recurso TlsRoute. Corresponde ao padrão projects/*/locations/global/tlsRoutes/tls_route_name>.

createTime

string (Timestamp format)

Apenas saída. A data/hora em que o recurso foi criado.

Uma data/hora no formato "Zulu" UTC RFC3339, com resolução de nanosegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Apenas saída. A data/hora em que o recurso foi atualizado.

Uma data/hora no formato "Zulu" UTC RFC3339, com resolução de nanosegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

description

string

Opcional. Uma descrição de texto livre do recurso. Comprimento máximo de 1024 carateres.

rules[]

object (RouteRule)

Obrigatório. Regras que definem como o tráfego é encaminhado e processado. Tem de fornecer, pelo menos, uma RouteRule. Se existirem várias regras, a ação tomada será a da primeira regra que corresponder.

meshes[]

string

Opcional. Meshes define uma lista de malhas às quais esta TlsRoute está associada, como uma das regras de encaminhamento para encaminhar os pedidos processados pela malha.

Cada referência de malha deve corresponder ao padrão: projects/*/locations/global/meshes/<mesh_name>

O Mesh anexado deve ser do tipo SIDECAR

gateways[]

string

Opcional. Gateways define uma lista de gateways aos quais esta TlsRoute está anexada, como uma das regras de encaminhamento para encaminhar os pedidos processados pelo gateway.

Cada referência de gateway deve corresponder ao padrão: projects/*/locations/global/gateways/<gateway_name>

labels

map (key: string, value: string)

Opcional. Conjunto de etiquetas associadas ao recurso TlsRoute.

Um objeto que contém uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

RouteRule

Especifica como fazer a correspondência do tráfego e como encaminhar o tráfego quando é feita a correspondência.

Representação JSON
{
  "matches": [
    {
      object (RouteMatch)
    }
  ],
  "action": {
    object (RouteAction)
  }
}
Campos
matches[]

object (RouteMatch)

Obrigatório. RouteMatch define o predicado usado para fazer corresponder pedidos a uma determinada ação. Os vários tipos de correspondência são combinados com "OU" para avaliação.

action

object (RouteAction)

Obrigatório. A regra detalhada que define como encaminhar o tráfego correspondente.

RouteMatch

RouteMatch define o predicado usado para fazer corresponder pedidos a uma determinada ação. Vários tipos de correspondência são unidos por "AND" para avaliação. Se não for especificado nenhum campo routeMatch, esta regra vai corresponder incondicionalmente ao tráfego.

Representação JSON
{
  "sniHost": [
    string
  ],
  "alpn": [
    string
  ]
}
Campos
sniHost[]

string

Opcional. SNI (indicador do nome do servidor) para fazer a correspondência. O SNI é comparado com todos os domínios com carateres universais, ou seja, www.example.com é primeiro comparado com www.example.com, depois com *.example.com e, em seguida, com *.com.. Os carateres universais parciais não são suportados e os valores como *w.example.com são inválidos. É necessário, pelo menos, um dos elementos sniHost e alpn. Pode definir até 100 anfitriões SNI em todas as correspondências.

alpn[]

string

Opcional. ALPN (Application-Layer Protocol Negotiation) para fazer a correspondência. Exemplos: "http/1.1", "h2". É necessário, pelo menos, um dos elementos sniHost e alpn. Podem ser definidos até 5 ALPNs em todas as correspondências.

RouteAction

As especificações para encaminhar o tráfego e aplicar as políticas associadas.

Representação JSON
{
  "destinations": [
    {
      object (RouteDestination)
    }
  ],
  "idleTimeout": string
}
Campos
destinations[]

object (RouteDestination)

Obrigatório. Os serviços de destino para os quais o tráfego deve ser encaminhado. É necessário, pelo menos, um serviço de destino.

idleTimeout

string (Duration format)

Opcional. Especifica o limite de tempo de inatividade para o trajeto selecionado. O limite de tempo de inatividade é definido como o período em que não são enviados nem recebidos bytes na ligação a montante ou a jusante. Se não estiver definido, o tempo limite de inatividade predefinido é de 1 hora. Se for definido como 0 s, o limite de tempo é desativado.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

RouteDestination

Descreva o destino para o qual o tráfego deve ser encaminhado.

Representação JSON
{
  "serviceName": string,
  "weight": integer
}
Campos
serviceName

string

Obrigatório. O URL de um BackendService para o qual encaminhar o tráfego.

weight

integer

Opcional. Especifica a proporção de pedidos encaminhados para o back-end referenciado pelo campo serviceName. Este valor é calculado da seguinte forma: - peso/soma(pesos nos destinos). A soma dos pesos em todos os destinos não tem de perfazer 100.

Métodos

create

Cria uma nova TlsRoute num determinado projeto e localização.

delete

Elimina um único TlsRoute.

get

Obtém detalhes de uma única TlsRoute.

getIamPolicy

Obtém a política de controlo de acesso para um recurso.

list

Apresenta TlsRoute num determinado projeto e localização.

patch

Atualiza os parâmetros de uma única TlsRoute.

setIamPolicy

Define a política de controlo de acesso no recurso especificado.

testIamPermissions

Devolve as autorizações que um autor da chamada tem no recurso especificado.