Ressource: TcpRoute
TcpRoute ist die Ressource, die definiert, wie TCP-Traffic von einer Mesh-/Gateway-Ressource weitergeleitet werden soll.
JSON-Darstellung |
---|
{
"name": string,
"selfLink": string,
"createTime": string,
"updateTime": string,
"description": string,
"rules": [
{
object ( |
Felder | |
---|---|
name |
Kennung. Name der TcpRoute-Ressource. Sie stimmt mit dem Muster |
selfLink |
Nur Ausgabe. Serverdefinierte URL dieser Ressource |
createTime |
Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource erstellt wurde. Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: |
updateTime |
Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource aktualisiert wurde. Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: |
description |
Optional. Eine Freitextbeschreibung der Ressource. Maximale Länge: 1.024 Zeichen. |
rules[] |
Erforderlich. Regeln, die definieren, wie Traffic weitergeleitet und verarbeitet wird. Es muss mindestens eine RouteRule angegeben werden. Wenn es mehrere Regeln gibt, wird die Aktion der ersten passenden Regel ausgeführt. |
meshes[] |
Optional. „meshes“ definiert eine Liste von Meshes, an die diese „TcpRoute“ angehängt ist, als eine der Routingregeln zum Weiterleiten der Anfragen, die vom Mesh bedient werden. Jede Mesh-Referenz muss dem Muster Das angehängte Mesh sollte vom Typ SIDECAR sein. |
gateways[] |
Optional. „Gateways“ definiert eine Liste von Gateways, an die diese „TcpRoute“ angehängt ist, als eine der Routingregeln zum Weiterleiten der vom Gateway verarbeiteten Anfragen. Jede Gateway-Referenz muss dem Muster |
labels |
Optional. Eine Reihe von Label-Tags, die mit der TcpRoute-Ressource verknüpft sind. Ein Objekt, das eine Liste von |
RouteRule
Gibt an, wie Traffic abgeglichen und weitergeleitet wird, wenn er abgeglichen wird.
JSON-Darstellung |
---|
{ "matches": [ { object ( |
Felder | |
---|---|
matches[] |
Optional. RouteMatch definiert das Prädikat, das verwendet wird, um Anfragen mit einer bestimmten Aktion abzugleichen. Für die Auswertung werden mehrere Übereinstimmungstypen mit „OR“ verknüpft. Wenn kein „routeMatch“-Feld angegeben ist, wird diese Regel immer auf Traffic angewendet. |
action |
Erforderlich. Die detaillierte Regel, die definiert, wie abgeglichener Traffic weitergeleitet wird. |
RouteMatch
RouteMatch definiert das Prädikat, das verwendet wird, um Anfragen mit einer bestimmten Aktion abzugleichen. Für die Auswertung werden mehrere Übereinstimmungstypen mit „OR“ verknüpft. Wenn kein „routeMatch“-Feld angegeben ist, wird diese Regel immer auf Traffic angewendet.
JSON-Darstellung |
---|
{ "address": string, "port": string } |
Felder | |
---|---|
address |
Erforderlich. Muss im CIDR-Bereichsformat angegeben werden. Ein CIDR-Bereich besteht aus einer IP-Adresse und einer Präfixlänge, mit denen die Subnetzmaske erstellt wird. Standardmäßig ist die Präfixlänge 32 (d.h. sie entspricht einer einzelnen IP-Adresse). Es werden nur IPv4-Adressen unterstützt. Beispiele: „10.0.0.1“ – stimmt mit genau dieser IP-Adresse überein. „10.0.0.0/8“ – entspricht jeder IP-Adresse im Subnetz 10.0.0.0 und der Maske 255.255.255.0. „0.0.0.0/0“ – entspricht jeder IP-Adresse. |
port |
Erforderlich. Gibt den Zielport an, mit dem abgeglichen werden soll. |
RouteAction
Die Spezifikationen für das Weiterleiten von Traffic und das Anwenden zugehöriger Richtlinien.
JSON-Darstellung |
---|
{
"destinations": [
{
object ( |
Felder | |
---|---|
destinations[] |
Optional. Die Zieldienste, an die Traffic weitergeleitet werden soll. Mindestens ein Zieldienst ist erforderlich. Es kann nur entweder das Routenziel oder das ursprüngliche Ziel festgelegt werden. |
originalDestination |
Optional. Wenn „true“, verwendet der Router die Ziel-IP-Adresse und den Zielport der ursprünglichen Verbindung als Ziel der Anfrage. Der Standardwert ist "false". Es kann nur eines der beiden Ziele festgelegt werden: das Routenziel oder das ursprüngliche Ziel. |
idleTimeout |
Optional. Gibt das Leerlauf-Zeitlimit für die ausgewählte Route an. Das Leerlauftimeout wird als der Zeitraum definiert, in dem weder in der Upstream- noch in der Downstream-Verbindung Bytes gesendet oder empfangen werden. Wenn kein Wert festgelegt ist, beträgt das Standardzeitlimit für Inaktivität 30 Sekunden. Wenn der Wert auf „0s“ gesetzt ist, wird das Zeitlimit deaktiviert. Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit " |
RouteDestination
Beschreiben Sie das Ziel, zu dem der Traffic weitergeleitet werden soll.
JSON-Darstellung |
---|
{ "serviceName": string, "weight": integer } |
Felder | |
---|---|
serviceName |
Erforderlich. Die URL eines BackendService, an den Traffic weitergeleitet werden soll. |
weight |
Optional. Gibt den Anteil der Anfragen an, die an das Backend weitergeleitet werden, auf das im Feld „serviceName“ verwiesen wird. Der Wert wird so berechnet: - Gewicht/Summe(Gewichte in dieser Zielliste). Bei Werten ungleich null kann es je nach Genauigkeit der Implementierung eine Abweichung vom hier definierten genauen Anteil geben. Wenn nur ein serviceName angegeben ist und dieser ein Gewicht von mehr als 0 hat, wird 100% des Traffics an dieses Backend weitergeleitet. Wenn Gewichte für einen Dienstnamen angegeben werden, müssen sie für alle angegeben werden. Wenn für alle Dienste keine Gewichte angegeben sind, wird der Traffic gleichmäßig auf alle verteilt. |
Methoden |
|
---|---|
|
Erstellt eine neue TcpRoute in einem angegebenen Projekt und an einem angegebenen Ort. |
|
Löscht eine einzelne TcpRoute. |
|
Ruft Details zu einer einzelnen TcpRoute ab. |
|
Listet TcpRoute in einem angegebenen Projekt und an einem angegebenen Standort auf. |
|
Aktualisiert die Parameter einer einzelnen TcpRoute. |