Documentation de référence de l'API GKE Cloud Service Mesh
Ce document est la documentation de référence de l'API pour Cloud Service Mesh avec la passerelle Kubernetes. API.
TDMesh
Champ | Description |
---|---|
apiVersion |
chaîne
net.gke.io/v1alpha1 |
kind |
chaîne
TDMesh |
metadata |
ObjectMeta de Kubernetes |
spec |
MeshSpec |
status |
MeshStatus |
MeshSpec
Champ | Description |
---|---|
allowedRoutes |
gateway.networking.k8s.io/v1.AllowedRoutes |
gatewayClassName |
chaîne gke-td |
MeshStatus
Champ | Description |
---|---|
conditions |
Le champ des conditions décrit les conditions actuelles du maillage.
Types de conditions connus :
|
GatewayClass
Consultez la documentation de référence sur GatewayClass
.
TDGRPCRoute
TDGRPCRoute
spécifie le comportement de routage des requêtes gRPC d'un écouteur TDMesh
ou Gateway
vers un objet d'API, par exemple Service
.
Champ | Description |
---|---|
apiVersion |
chaîne
net.gke.io/v1alpha1 |
kind |
chaîneTDGRPCRoute |
metadata |
metav1.23ObjectMeta |
spec |
GRPCRouteSpec Définit l'état souhaité de "GRPCRoute". |
Status |
GRPCRouteStatus Identique à HTTPRouteStatus. |
GRPCRouteSpec
La spécification d'un TDGRPCRoute
comprend les valeurs du tableau suivant :
Champ | Description |
---|---|
CommonRouteSpec |
CommonRouteSpec |
Hostnames |
[]Hostname Les noms d'hôte définissent un ensemble de noms d'hôte devant correspondre à l'en-tête gRPC Host pour sélectionner un objet GRPCRoute afin de traiter la requête.Hostname correspond au nom de domaine complet d'un hôte réseau, tel que défini par le document RFC 3986. Notez les écarts suivants par rapport à la partie "hôte" de l'URI, telle que définie dans le document RFC :
TDGRPCRoute . Si aucun nom d'hôte n'est spécifié, le trafic est acheminé en fonction de GRPCRouteRules .Hostname peut être "précis". Il s'agit d'un nom de domaine sans le point d'arrêtd'un hôte réseau (par exemple, butterfly.example.com ) ou wildcard , qui est un nom de domaine précédé d'un seul libellé générique (par exemple, "*.example.com"). Le caractère générique "*" doit apparaître seul comme premier libellé DNS et il ne doit correspondre qu'à un seul libellé. Vous ne pouvez pas utiliser de caractère générique seul (par exemple, Host == "*"). Les requêtes sont mises en correspondance avec le champ "Host" dans l'ordre suivant :
|
Rules |
[]GRPCRouteRule Définit une liste d'actions, de filtres et d'outils de mise en correspondance gRPC. |
GRPCRouteRule
Les règles définissent la sémantique permettant de faire correspondre une requête gRPC en fonction de conditions et, éventuellement de transmettre la requête à un objet d'API. Les règles sont les suivantes :
Champ | Description |
---|---|
Matches |
GRPCRouteMatch Définit les conditions utilisées pour faire correspondre une requête gRPC. Chaque correspondance est indépendante. En d'autres termes, cette règle est mise en correspondance si une seule correspondance est satisfaite. |
BackendRefs |
[]GRPCBackendRef Définit les backends vers lesquels les requêtes correspondantes doivent être envoyées. Si elle n'est pas spécifiée ou n'est pas valide (fait référence à une ressource inexistante ou à un service sans point de terminaison), la règle n'effectue aucun transfert. GRPCBackendRef est identique à HTTPBackendRef . |
GRPCRouteMatch
Les règles définissent la sémantique permettant de faire correspondre une requête gRPC en fonction de conditions et, éventuellement de transmettre la requête à un objet d'API. Les règles sont définies comme suit :
Champ |
Description |
---|---|
Méthode | GRPCMethodMatch Définit une méthode gRPC à mettre en correspondance. |
En-têtes |
[]GRPCHeaderMatch Définit un outil de mise en correspondance des en-têtes de requête gRPC. Plusieurs valeurs de correspondance sont combinées à une opération AND. En d'autre termes, une requête doit correspondre à tous les en-têtes spécifiés pour sélectionner la route. Remarque : La définition de GRPCHeaderMatch est identique à HTTPHeaderMatch . |
GRPCMethodMatch
La configuration GRPCMethodMatch
comprend les éléments suivants :
Champ | Description |
---|---|
Type | MethodMatchType Définit le type spécifiant le nom à mettre en correspondance. Si aucune valeur n'est spécifiée, la valeur par défaut EXACT est utilisée. Vous pouvez choisir EXACT ou RegularExpression . |
Service | chaîne Définit le nom du service avec lequel établir une correspondance. S'il n'est pas spécifié, la correspondance est effectuée avec tous les services. |
Méthode | chaîne Définit la méthode à mettre en correspondance. Si aucune valeur n'est spécifiée, toutes les méthodes sont mises en correspondance. |
GRPCHeaderMatch
La configuration GRPCHeaderMatch
comprend les éléments suivants :
Champ | Description |
---|---|
Type | HeaderMatchType Définit une correspondance avec la valeur de l'en-tête. |
Nom | Chaîne Le nom correspond au nom de l'en-tête gRPC à mettre en correspondance. La mise en correspondance des noms ne doit pas être sensible à la casse. (Consultez la page https://tools.ietf.org/html/rfc7230#section-3.2.) |
Valeur | Chaîne La valeur correspond à la valeur de l'en-tête HTTP à mettre en correspondance. |
GRPCBackendRef
Champ | Description |
---|---|
BackendRef | BackendRef Référence à un backend vers lequel transférer les requêtes correspondantes. |
HTTPRoute
Consultez la documentation de référence de l'API Gateway Open Source pour HTTPRoute.
TCPRoute
Consultez la documentation de référence de l'API Gateway Open Source pour TCPRoute.