Zielproxys für Traffic Director

Beim Konfigurieren von Traffic Director legen Sie neben anderen Ressourcen den Zielproxy fest. Wenn Sie die Google Cloud Console verwenden, wird der Zielproxy im Rahmen der Konfiguration der Routingregelzuordnung implizit eingerichtet.

Im Kontext von Traffic Director haben Zielproxys zwei primäre Funktionen:

  1. Sie ordnen eine Weiterleitungsregel zu, die einen IP:port mit einer URL-Zuordnung bereitstellt, die Routingregeln enthält. Dadurch kann mit dem Service Mesh festgelegt werden, welche Routingregeln bei der Verarbeitung einer bestimmten Anfrage verwendet werden sollen.
  2. Zielproxys haben einen bestimmten Typ: entweder Ziel-HTTP-Proxy oder Ziel-gRPC-Proxy. Der Typ gewährleistet, dass keine Felder konfiguriert werden, die für bestimmte Traffictypen nicht relevant sind. Er bestimmt auch das Verhalten des Zielproxys.
Traffic Director-Weiterleitungsregel hervorgehoben (zum Vergrößern anklicken)
Hervorgehobener Traffic Director-Zielproxy (zum Vergrößern klicken)

Das Diagramm zeigt, wie ein Zielproxy in die Traffic Director-Architektur eingebunden wird.

Ziel-HTTP-Proxy mit dem Ziel-gRPC-Proxy vergleichen

Ein Ziel-HTTP-Proxy sollte verwendet werden, wenn Sie HTTP-basierte Dienste konfigurieren. Ein Ziel-gRPC-Proxy wird für die Konfiguration von gRPC-basierten Diensten genutzt.

Traffic-Verarbeitung bei Verwendung eines Ziel-HTTP-Proxys

Wenn Sie HTTP-basierte Dienste konfigurieren, wird in der Regel für jede Dienstinstanz ein Envoy-Proxy bereitgestellt. Dieser Envoy-Proxy wird von Traffic Director konfiguriert. Er ist Teil Ihrer Service Mesh-Datenebene und verarbeitet die Daten so:

Der Envoy-Proxy empfängt die ausgehende Anfrage und vergleicht die Ziel-IP-Adresse und den Zielport der Anfrage mit der IP-Adresse und mit dem Port, die in jeder Weiterleitungsregel konfiguriert sind, die auf einen Ziel-HTTP-Proxy verweist. Bei Übereinstimmung wertet der Envoy-Proxy die Anfrage gemäß der entsprechenden URL-Zuordnung des Ziel-HTTP-Proxys aus.

Traffic-Verarbeitung bei Verwendung des Ziel-gRPC-Proxys

Wenn Sie gRPC-basierte Dienste konfigurieren, werden für die Dienstinstanzen im Allgemeinen keine Envoy-Proxys bereitgestellt. Die gRPC-Bibliothek wird von Traffic Director konfiguriert. Diese ist Teil Ihrer Service Mesh-Datenebene und verarbeitet die Daten so:

Die gRPC-Bibliothek vergleicht den im URI angegebenen Wert für hostname[:port] mit den Hostregeln in allen URL-Zuordnungen, auf die von einem Ziel-gRPC-Proxy verwiesen wird. Wird eine Übereinstimmung gefunden, wertet die gRPC-Bibliothek die Anfrage gemäß den Pfadregeln für die übereinstimmende Hostregel aus.

Das Abfangen von Traffic für Gateways und mittlere Proxys konfigurieren

Für einen Service Mesh gilt in der Regel Folgendes:

  • Alle Dienstinstanzen haben einen eigenen Envoy-Sidecar-Proxy oder eine gRPC-Bibliothek.
    • Wenn Sie Envoy verwenden, werden die Dienstinstanzen so konfiguriert, dass ausgehende Anfragen abgefangen und an den Envoy-Proxy weitergeleitet werden.
  • Der Envoy-Proxy oder die gRPC-Bibliothek verarbeitet die ausgehenden Anfragen.

Sie können mit Traffic Director aber auch ein Gateway oder einen mittleren Proxy konfigurieren. In dieser Konfiguration ist der Envoy-Proxy von Ihren Dienstinstanzen unabhängig. Er überwacht auf eingehende Anfragen an einem Port und verarbeitet die Anfragen, wenn sie eingehen.

Bei dieser Art der Einrichtung müssen Sie kein Abfangen und keine Weiterleitung konfigurieren. Stattdessen aktivieren Sie einfach das Flag --proxy-bind für den Ziel-HTTP-Proxy. Dadurch wird der eingehende Traffic abgefangen und der Envoy-Proxy überwacht eingehende Anfragen an die IP-Adresse und an den Port, die in der Weiterleitungsregel konfiguriert sind.

Wie bereits erwähnt, verweist die Weiterleitungsregel auf einen Zielproxy. Wenn Sie --proxy-bind also auf einem HTTP-Zielproxy aktivieren, überwacht der Proxy die IP-Adresse und den Port der Weiterleitungsregel, die auf diesen Ziel-HTTP-Proxy verweist.

Wichtige Hinweise:

  • Wenn Sie Traffic Director für ein Service Mesh verwenden, müssen Sie --proxy-bind nicht angeben, da ausgehender Traffic in der Regel von Sidecar-Proxys empfangen und weitergeleitet wird.
  • Das Flag --proxy-bind ist für Ziel-gRPC-Proxys nicht verfügbar.

Zielproxy-Ressourcen

Zum Hinzufügen, Löschen, Auflisten und Abrufen von Informationen zu Zielproxys können Sie die REST API oder das gcloud SDK verwenden.

Wenn Sie mithilfe der Google Cloud Console eine Routingregelzuordnung erstellen, werden die Weiterleitungsregel, der Zielproxy und die URL-Zuordnung automatisch erstellt. Sie müssen Informationen zur Weiterleitungsregel explizit angeben. Da Sie in der Cloud Console den Zielproxy nicht explizit konfigurieren müssen, gibt es keine Seite, auf der Sie Informationen zu einem für Traffic Director konfigurierten Zielproxy abrufen können.

Sie können jedoch die folgenden gcloud-Befehle verwenden, um Informationen zu einem Zielproxy abzurufen:

gcloud compute [target-http-proxies | target-grpc-proxies ] list
gcloud compute [target-http-proxies | target-grpc-proxies ] describe target-proxy-name

APIs

Beschreibungen der Attribute und Methoden, die Sie bei der Arbeit mit Zielproxys über die REST API nutzen können, finden Sie auf den folgenden Seiten:

gcloud SDK

Weitere Informationen zum gcloud-Befehlszeilentool finden Sie auf den folgenden Seiten:

Nächste Schritte

Weitere Informationen