Recurso: TcpRoute
TcpRoute é o recurso que define como o tráfego TCP deve ser encaminhado por um recurso de malha/gateway.
Representação JSON |
---|
{
"name": string,
"selfLink": string,
"createTime": string,
"updateTime": string,
"description": string,
"rules": [
{
object ( |
Campos | |
---|---|
name |
Identificador. Nome do recurso TcpRoute. Corresponde ao padrão |
selfLink |
Apenas saída. URL definido pelo servidor deste recurso |
createTime |
Apenas saída. A data/hora em que o recurso foi criado. Usa RFC 3339, em que o resultado gerado é sempre normalizado em Z e usa 0, 3, 6 ou 9 dígitos fracionários. Também são aceites desvios diferentes de "Z". Exemplos: |
updateTime |
Apenas saída. A data/hora em que o recurso foi atualizado. Usa RFC 3339, em que o resultado gerado é sempre normalizado em Z e usa 0, 3, 6 ou 9 dígitos fracionários. Também são aceites desvios diferentes de "Z". Exemplos: |
description |
Opcional. Uma descrição de texto livre do recurso. Comprimento máximo de 1024 carateres. |
rules[] |
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[] |
Opcional. Meshes define uma lista de malhas às quais esta TcpRoute está associada, como uma das regras de encaminhamento para encaminhar os pedidos apresentados pela malha. Cada referência de malha deve corresponder ao padrão: O Mesh anexado deve ser do tipo SIDECAR |
gateways[] |
Opcional. Gateways define uma lista de gateways aos quais este TcpRoute está associado, como uma das regras de encaminhamento para encaminhar os pedidos processados pelo gateway. Cada referência de gateway deve corresponder ao padrão: |
labels |
Opcional. Conjunto de etiquetas associadas ao recurso TcpRoute. Um objeto que contém uma lista de pares |
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 ( |
Campos | |
---|---|
matches[] |
Opcional. 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. Se não for especificado nenhum campo routeMatch, esta regra vai corresponder incondicionalmente ao tráfego. |
action |
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. Os vários tipos de correspondência são combinados com "OU" para avaliação. Se não for especificado nenhum campo routeMatch, esta regra vai corresponder incondicionalmente ao tráfego.
Representação JSON |
---|
{ "address": string, "port": string } |
Campos | |
---|---|
address |
Obrigatório. Tem de ser especificado no formato de intervalo CIDR. Um intervalo CIDR consiste num endereço IP e num comprimento do prefixo para construir a máscara de sub-rede. Por predefinição, o comprimento do prefixo é 32 (ou seja, corresponde a um único endereço IP). Apenas são suportados endereços IPV4. Exemplos: "10.0.0.1" – corresponde a este endereço IP exato. "10.0.0.0/8": corresponde a qualquer endereço IP na sub-rede 10.0.0.0 e na máscara 255.255.255.0. "0.0.0.0/0" – corresponde a qualquer endereço IP. |
port |
Obrigatório. Especifica a porta de destino com a qual estabelecer correspondência. |
RouteAction
As especificações para encaminhar o tráfego e aplicar as políticas associadas.
Representação JSON |
---|
{
"destinations": [
{
object ( |
Campos | |
---|---|
destinations[] |
Opcional. Os serviços de destino para os quais o tráfego deve ser encaminhado. É necessário, pelo menos, um serviço de destino. Só é possível definir um destino do trajeto ou um destino original. |
originalDestination |
Opcional. Se for verdadeiro, o Router usa o IP e a porta de destino da ligação original como o destino do pedido. O valor predefinido é False. Só é possível definir um dos destinos do trajeto ou o destino original. |
idleTimeout |
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 30 segundos. 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 " |
RouteDestination
Descreva o destino para o qual o tráfego deve ser encaminhado.
Representação JSON |
---|
{ "serviceName": string, "weight": integer } |
Campos | |
---|---|
serviceName |
Obrigatório. O URL de um BackendService para o qual encaminhar o tráfego. |
weight |
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 nesta lista de destinos). Para valores diferentes de zero, pode haver algum épsilon da proporção exata definida aqui, consoante a precisão suportada por uma implementação. Se for especificado apenas um serviceName e tiver um peso superior a 0, 100% do tráfego é encaminhado para esse back-end. Se forem especificados pesos para qualquer nome de serviço, têm de ser especificados para todos. Se os pesos não forem especificados para todos os serviços, o tráfego é distribuído em proporções iguais por todos eles. |
Métodos |
|
---|---|
|
Cria um novo TcpRoute num determinado projeto e localização. |
|
Elimina um único TcpRoute. |
|
Obtém detalhes de um único TcpRoute. |
|
Lista TcpRoute num determinado projeto e localização. |
|
Atualiza os parâmetros de um único TcpRoute. |
|
Define a política de controlo de acesso no recurso especificado. |
|
Devolve as autorizações que um autor da chamada tem no recurso especificado. |