Referência da API GKE do Cloud Service Mesh
Este documento é a referência da API para o Cloud Service Mesh com a API Kubernetes Gateway.
TDMesh
Campo | Descrição |
---|---|
apiVersion |
string
net.gke.io/v1alpha1 |
kind |
string
TDMesh |
metadata |
Kubernetes ObjectMeta |
spec |
MeshSpec (link em inglês) |
status |
MeshStatus |
MeshSpec
Field | Descrição |
---|---|
allowedRoutes |
gateway.networking.k8s.io/v1.AllowedRoutes |
gatewayClassName |
string gke-td |
MeshStatus
Field | Descrição |
---|---|
conditions |
O campo Condições descreve as condições atuais da malha.
Tipos de condição conhecidos:
|
GatewayClass
Consulte a
documentação de referência para o GatewayClass
.
TDGRPCRoute
TDGRPCRoute
especifica o comportamento de roteamento de solicitações gRPC de um listener TDMesh
ou
Gateway
para um objeto de API; por exemplo, Service
.
Field | Descrição |
---|---|
apiVersion |
string
net.gke.io/v1alpha1 |
kind |
stringTDGRPCRoute |
metadata |
metav1.23ObjectMeta |
spec |
GRPCRouteSpec Define o estado preferido de "GRPCRoute". |
Status |
GRPCRouteStatus É o mesmo que HTTPRouteStatus. |
GRPCRouteSpec
A especificação de um TDGRPCRoute
consiste nos valores da tabela a seguir:
Field | Descrição |
---|---|
CommonRouteSpec |
CommonRouteSpec (em inglês) |
Hostnames |
[]Nome do host Os nomes do host definem um conjunto de nomes do host que precisam corresponder ao cabeçalho Host do gRPC para selecionar uma GRPCRoute para processar o
pedido.Hostname é o nome de domínio totalmente qualificado de um host de rede,
conforme definido pela RFC 3986. Observe os seguintes desvios da parte "host" do URI, conforme definido no RFC:
TDGRPCRoute . Se nenhum nome do host for especificado, o tráfego será roteado
com base no GRPCRouteRules .Hostname pode ser "exata", que é um nome de domínio sem o
ponto de encerramentode um host de rede (por exemplo, butterfly.example.com ) ou
wildcard , que é um nome de domínio prefixado com um único rótulo
de caractere curinga; por exemplo, "*.example.com". O caractere curinga "*" precisa aparecer sozinho como o primeiro rótulo de DNS e corresponder a apenas um rótulo. Não é possível ter um rótulo curinga sozinho (por exemplo, Host
== "*"). As solicitações correspondem ao campo "Host" na
seguinte ordem:
|
Rules |
[]GRPCRouteRule Define uma lista de correspondências, filtros e ações do gRPC. |
GRPCRouteRule
As regras definem a semântica para corresponder uma solicitação gRPC com base nas condições e, opcionalmente, encaminhar a solicitação para um objeto de API. As regras são as seguintes:
Field | Descrição |
---|---|
Matches |
GRPCRouteMatch Define as condições usadas para corresponder uma solicitação gRPC. Cada correspondência é independente. Em outras palavras, essa regra será correspondida se alguma correspondência individual for atendida. |
BackendRefs |
[]GRPCBackendRef Define os back-ends para onde as solicitações correspondentes devem ser enviadas. Se não for especificada ou for inválida (refere-se a um recurso inexistente ou a um Serviço sem endpoints), a regra não realizará o encaminhamento. GRPCBackendRef é igual a HTTPBackendRef . |
GRPCRouteMatch
As regras definem a semântica para corresponder uma solicitação gRPC com base nas condições e, opcionalmente, encaminhar a solicitação para um objeto de API. As regras são definidas da seguinte maneira:
Campo |
Descrição |
---|---|
Método | GRPCMethodMatch Define um método gRPC para correspondência. |
Cabeçalhos |
[]GRPCHeaderMatch Define um matcher de cabeçalho de solicitação gRPC. Vários valores de correspondência são combinados com uma operação AND, o que significa que uma solicitação precisa corresponder a todos os cabeçalhos especificados para selecionar a rota. Observação: a definição de GRPCHeaderMatch é igual a "HTTPHeaderMatch ". |
GRPCMethodMatch
O GRPCMethodMatch
consiste no seguinte:
Field | Descrição |
---|---|
Tipo | MethodMatchType Define o tipo que especifica como fazer a correspondência com o nome. Se não for especificado, um valor padrão de EXACT será usado. É possível
escolher EXACT ou RegularExpression . |
Serviço | string Define o nome do serviço para correspondência. Se não for especificado, corresponderá a todos os serviços. |
Método | string Define o método de correspondência. Se não for especificada, ela corresponderá a todos os métodos. |
GRPCHeaderMatch
O GRPCHeaderMatch
consiste no seguinte:
Field | Descrição |
---|---|
Tipo | HeaderMatchType Define como corresponder ao valor do cabeçalho. |
Nome | String Nome é o nome do cabeçalho gRPC a ser correspondido. A correspondência de nome não diferencia maiúsculas de minúsculas. (Consulte https://tools.ietf.org/html/rfc7230#section-3.2). |
Valor | String Valor é o valor corresponde ao valor do cabeçalho HTTP a ser correspondido. |
GRPCBackendRef
Field | Descrição |
---|---|
BackendRef | BackendRef "BackRef" é uma referência a um back-end para encaminhar solicitações correspondentes. |
HTTPRoute
Consulte a referência de API de gateway de código aberto para HTTPRoute.
TCPRoute
Consulte a referência de API de gateway de código aberto para TCPRoute.