Riferimento API GKE Cloud Service Mesh
Questo documento è il riferimento API per Cloud Service Mesh con l'API Kubernetes Gateway.
TDMesh
Campo | Descrizione |
---|---|
apiVersion |
string
net.gke.io/v1alpha1 |
kind |
stringa
TDMesh |
metadata |
ObjectMeta Kubernetes |
spec |
MeshSpec |
status |
MeshStatus |
MeshSpec
Campo | Descrizione |
---|---|
allowedRoutes |
gateway.networking.k8s.io/v1.AllowedRoutes |
gatewayClassName |
stringa gke-td |
MeshStatus
Campo | Descrizione |
---|---|
conditions |
Il campo delle condizioni descrive le condizioni attuali del mesh.
Tipi di condizioni noti:
|
GatewayClass
Consulta la documentazione di riferimento per GatewayClass
.
TDGRPCRoute
TDGRPCRoute
specifica il comportamento di routing delle richieste gRPC da un listener TDMesh
o Gateway
a un oggetto API, ad esempio Service
.
Campo | Descrizione |
---|---|
apiVersion |
string
net.gke.io/v1alpha1 |
kind |
stringaTDGRPCRoute |
metadata |
metav1.23ObjectMeta |
spec |
GRPCRouteSpec Definisce lo stato preferito di "GRPCRoute". |
Status |
GRPCRouteStatus Uguale a HTTPRouteStatus. |
GRPCRouteSpec
La specifica di un TDGRPCRoute
è costituita dai valori riportati nella seguente tabella:
Campo | Descrizione |
---|---|
CommonRouteSpec |
CommonRouteSpec |
Hostnames |
[]Nome host I nomi host definiscono un insieme di nomi host che devono corrispondere all'intestazione Host gRPC per selezionare un GRPCRoute per elaborare la
richiesta.Hostname è il nome di dominio completo di un host di rete,
come definito dallo standard RFC 3986. Nota le seguenti deviazioni dalla parte "host" dell'URI, come definito nel documento RFC:
TDGRPCRoute . Se non viene specificato alcun nome host, il traffico viene instradato in base a GRPCRouteRules .Hostname può essere "precise", ovvero un nome di dominio senza il puntoterminale di un host di rete (ad esempio, butterfly.example.com ) o
wildcard , ovvero un nome di dominio preceduto da una singola etichetta carattere jolly, ad esempio "*.example.com". Il carattere jolly "*" deve essere visualizzato da solo come prima etichetta DNS e corrisponde solo a una singola etichetta. Non puoi avere di per sé un'etichetta con caratteri jolly (ad esempio Host
== "*"). Le richieste vengono confrontate con il campo "Host" nel
seguente ordine:
|
Rules |
[]GRPCRouteRule Definisce un elenco di matcher, filtri e azioni gRPC. |
GRPCRouteRule
Le regole definiscono la semantica per la corrispondenza di una richiesta gRPC in base alle condizioni e, facoltativamente, inoltrano la richiesta a un oggetto API. Le regole sono costituite da:
Campo | Descrizione |
---|---|
Matches |
GRPCRouteMatch Definisce le condizioni utilizzate per la corrispondenza di una richiesta gRPC. Ogni corrispondenza è indipendente. In altre parole, questa regola ha una corrispondenza se viene soddisfatta anche una sola corrispondenza. |
BackendRefs |
[]GRPCBackendRef Definisce i backend a cui devono essere inviate le richieste corrispondenti. Se non specificato o non valido (fa riferimento a una risorsa inesistente o a un servizio senza endpoint), la regola non esegue alcun forwarding. GRPCBackendRef è uguale a HTTPBackendRef . |
GRPCRouteMatch
Le regole definiscono la semantica per la corrispondenza di una richiesta gRPC in base alle condizioni e, facoltativamente, inoltrano la richiesta a un oggetto API. Le regole sono definite come segue:
Campo |
Descrizione |
---|---|
Metodo | GRPCMethodMatch Definisce un metodo gRPC con cui trovare una corrispondenza. |
Intestazioni |
[]GRPCHeaderMatch Definisce un matcher dell'intestazione della richiesta gRPC. Più valori di corrispondenza sono combinati con un'operazione AND, il che significa che una richiesta deve corrispondere a tutte le intestazioni specificate per selezionare la route. Nota: la definizione di GRPCHeaderMatch è la stessa di "HTTPHeaderMatch ". |
GRPCMethodMatch
GRPCMethodMatch
è costituito da:
Campo | Descrizione |
---|---|
Tipo | MethodMatchType Definisce il tipo che specifica come trovare una corrispondenza con il nome. Se non specificato, viene utilizzato il valore predefinito EXACT . Puoi
scegliere EXACT o RegularExpression . |
Servizio | string Definisce il nome del servizio con cui trovare una corrispondenza. Se non specificato, corrisponderà a tutti i servizi. |
Metodo | string Definisce il metodo con cui creare una corrispondenza. Se non specificato, corrisponderà a tutti i metodi. |
GRPCHeaderMatch
GRPCHeaderMatch
è costituito da:
Campo | Descrizione |
---|---|
Tipo | HeaderMatchType Definisce come trovare una corrispondenza con il valore dell'intestazione. |
Nome | Stringa Il nome è il nome dell'intestazione gRPC da trovare. La corrispondenza dei nomi deve senza distinzione tra maiuscole e minuscole. (vedi https://tools.ietf.org/html/rfc7230#section-3.2). |
Valore | Stringa Il valore è il valore dell'intestazione HTTP con cui trovare una corrispondenza. |
GRPCBackendRef
Campo | Descrizione |
---|---|
BackendRef | BackendRef "BackendRef" è un riferimento a un backend a cui inoltrare le richieste con corrispondenza. |
HTTPRoute
Consulta il riferimento dell'API Gateway open source per HTTPRoute.
TCPRoute
Consulta il riferimento dell'API Gateway open source per TCPRoute.