Gateway-Routen - AWS App Mesh

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Gateway-Routen

Eine Gateway-Route ist an ein virtuelles Gateway angefügt und leitet den Datenverkehr an einen vorhandenen virtuellen Service weiter. Wenn eine Route mit einer Anforderung übereinstimmt, kann sie den Datenverkehr an einen virtuellen Zieldienst verteilen. Dieses Thema hilft Ihnen keine Gateway-Routen angezeigt werden.

Eine Gateway-Route erstellen

AWS Management Console
So erstellen Sie eine Gateway-Route mit derAWS Management Console
  1. Öffnen Sie die App Mesh Mesh-Konsole unter https://console.aws.amazon.com/appmesh/.

  2. Wählen Sie das Mesh aus, in dem Sie die Gateway-Route erstellen möchten. Alle Netze, die Sie besitzen und die mit Ihnen geteilt wurden, werden aufgelistet.

  3. Wählen Sie in der linken Navigationsleiste Virtuelle Gateways aus.

  4. Wählen Sie das virtuelle Gateway aus, dem Sie eine neue Gateway-Route zuordnen möchten. Wenn keine aufgelistet sind, müssen Sie zuerst eine erstellen. Sie können nur eine Gateway-Route für ein virtuelles Gateway erstellen, für das Ihr Konto als Ressourcenbesitzer aufgeführt ist.

  5. Wählen Sie in der Tabelle Gateway-Routen die Option Gateway-Route erstellen aus.

  6. Geben Sie unter Gateway-Routenname den Namen an, der für Ihre Gateway-Route verwendet werden soll.

  7. Wählen Sie als Gateway-Routentyp entweder http, http2 oder grpc.

  8. Wählen Sie einen vorhandenen Namen für den virtuellen Dienst aus. Wenn keine aufgelistet sind, müssen Sie zuerst eine erstellen.

  9. Wählen Sie den Port, der dem Ziel für den Virtual Service Provider-Port entspricht. Der Port des virtuellen Dienstanbieters ist erforderlich, wenn der Anbieter (Router oder Knoten) des ausgewählten virtuellen Dienstes mehrere Listener hat.

  10. (Optional) Geben Sie unter Priorität die Priorität für diese Gateway-Route an.

  11. Geben Sie für die Match-Konfiguration Folgendes an:

    • Wenn http/http2 der gewählte Typ ist:

      • (Optionale) Methode ‐ Gibt den Methodenheader an, der in den eingehenden http/ http2-Anfragen abgeglichen werden soll.

      • (Optional) Portübereinstimmung ‐ Passen Sie den Port für eingehenden Verkehr an. Eine Portübereinstimmung ist erforderlich, wenn dieses virtuelle Gateway mehrere Listener hat.

      • (Optional) Exact/Suffix-Hostname ‐ Gibt den Hostnamen an, der in der eingehenden Anfrage zur Weiterleitung an den virtuellen Zieldienst abgeglichen werden soll.

      • (Optional) Präfix/Genauer/Regex-Pfad ‐ Die Methode, mit der der Pfad der URL abgeglichen wird.

        • Präfixübereinstimmung ‐ Eine übereinstimmende Anfrage von einer Gateway-Route wird in den Namen des virtuellen Zieldienstes umgeschrieben/, und das passende Präfix wird standardmäßig in umgeschrieben. Je nachdem, wie Sie Ihren virtuellen Dienst konfigurieren, kann er einen virtuellen Router verwenden, um die Anfrage auf der Grundlage bestimmter Präfixe oder Header an verschiedene virtuelle Knoten weiterzuleiten.

          Wichtig
          • Sie können weder/aws-appmesh* oder/aws-app-mesh* als Präfix Match angeben. Diese Präfixe sind für die future interne Verwendung von App Mesh reserviert.

          • Wenn mehrere Gateway-Routen definiert sind, wird eine Anfrage der Route mit dem längsten Präfix zugeordnet. Wenn beispielsweise zwei Gateway-Routen existieren, von denen eine das Präfix von/chapter und eine das Präfix von hat/, dannwww.example.com/chapter/ würde eine Anfrage für der Gateway-Route mit dem/chapter Präfix zugeordnet.

          Anmerkung

          Wenn Sie den auf Pfad und Präfix basierenden Abgleich aktivieren, aktiviert App Mesh die Pfadnormalisierung (normalize_path und merge_slashes), um die Wahrscheinlichkeit von Sicherheitslücken durch Pfadverwirrung zu minimieren.

          Sicherheitslücken durch Pfadverwirrung treten auf, wenn an der Anfrage beteiligte Parteien unterschiedliche Pfaddarstellungen verwenden.

        • Exakte Übereinstimmung — Der exakte Parameter deaktiviert den teilweisen Abgleich für eine Route und stellt sicher, dass die Route nur zurückgegeben wird, wenn der Pfad EXAKT mit der aktuellen URL übereinstimmt.

        • Regex-Match — Wird verwendet, um Muster zu beschreiben, bei denen mehrere URLs tatsächlich eine einzelne Seite auf der Website identifizieren können.

      • (Optional) Abfrageparameter ‐ In diesem Feld können Sie die Abfrageparameter abgleichen.

      • (Optional) Header ‐ Gibt die Header für http und http2 an. Es sollte mit der eingehenden Anfrage übereinstimmen, um an den virtuellen Zieldienst weitergeleitet zu werden..

    • Wenn grpc der gewählte Typ ist:

      • Hostnamen-Übereinstimmungstyp und (optional) Genaue/Suffix-Übereinstimmung ‐ Gibt den Hostnamen an, der bei der eingehenden Anfrage abgeglichen werden soll, um an den virtuellen Zieldienst weitergeleitet zu werden.

      • grpc-Servicename ‐ Der grpc-Service fungiert als API für Ihre Anwendung und ist mit definiert ProtoBuf.

        Wichtig

        Sie können nicht/aws.app-mesh* oderaws.appmesh für den Dienstnamen angeben. Diese Dienstnamen sind für die future interne Verwendung von App Mesh reserviert.

      • (Optional) Metadaten ‐ Gibt die Metadaten für grpc an. Es sollte mit der eingehenden Anfrage übereinstimmen, um an den virtuellen Zieldienst weitergeleitet zu werden.

  12. (Optional) Für die Rewrite-Konfiguration:

    • Wenn http/http2 der gewählte Typ ist:

      • Wenn Präfix der gewählte Match-Typ ist:

        • Automatisches Umschreiben des Hostnamens überschreiben ‐ Standardmäßig wird der Hostname in den Namen des virtuellen Zieldienstes umgeschrieben.

        • Automatisches Umschreiben von Präfix überschreiben ‐ Wenn diese Option aktiviert ist, gibt Prefix rewrite den Wert des umgeschriebenen Präfixes an.

      • Wenn Exact Path der gewählte Match-Typ ist:

        • Überschreibt das automatische Umschreiben des Hostnamens — standardmäßig wird der Hostname in den Namen des virtuellen Zieldienstes umgeschrieben.

        • Path rewrite ‐ Gibt den Wert des umgeschriebenen Pfads an. Kein Standardpfad.

      • Wenn Regex Path der gewählte Match-Typ ist:

        • Überschreibt das automatische Umschreiben des Hostnamens — standardmäßig wird der Hostname in den Namen des virtuellen Zieldienstes umgeschrieben.

        • Path rewrite ‐ Gibt den Wert des umgeschriebenen Pfads an. Kein Standardpfad.

    • Wenn grpc der gewählte Typ ist:

      • Automatisches Umschreiben des Hostnamens überschreiben ‐ Standardmäßig wird der Hostname in den Namen des virtuellen Zieldienstes umgeschrieben.

  13. Wählen Sie zum Abschluss Gateway-Route erstellen.

AWS CLI

Um eine Gateway-Route mit dem zu erstellenAWS CLI.

Erstellen Sie eine Gateway-Route mit dem folgenden Befehl und geben Sie JSON ein (ersetzen Sie die roten Werte durch Ihre eigenen):

  1. aws appmesh create-virtual-gateway \ --mesh-name meshName \ --virtual-gateway-name virtualGatewayName \ --gateway-route-name gatewayRouteName \ --cli-input-json file://create-gateway-route.json
  2. Inhalt des Beispiels create-gateway-route .json:

    { "spec": { "httpRoute" : { "match" : { "prefix" : "/" }, "action" : { "target" : { "virtualService": { "virtualServiceName": "serviceA.svc.cluster.local" } } } } } }
  3. Beispielausgabe:

    { "gatewayRoute": { "gatewayRouteName": "gatewayRouteName", "meshName": "meshName", "metadata": { "arn": "arn:aws:appmesh:us-west-2:210987654321:mesh/meshName/virtualGateway/virtualGatewayName/gatewayRoute/gatewayRouteName", "createdAt": "2022-04-06T11:05:32.100000-05:00", "lastUpdatedAt": "2022-04-06T11:05:32.100000-05:00", "meshOwner": "123456789012", "resourceOwner": "210987654321", "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "httpRoute": { "action": { "target": { "virtualService": { "virtualServiceName": "serviceA.svc.cluster.local" } } }, "match": { "prefix": "/" } } }, "status": { "status": "ACTIVE" }, "virtualGatewayName": "gatewayName" } }

Weitere Informationen zum Erstellen einer Gateway-Route mit demAWS CLI for App Mesh finden Sie im create-gateway-routeBefehl in derAWS CLI Referenz.

Eine Gateway-Route löschen

AWS Management Console
So löschen Sie eine Gateway-Route mit derAWS Management Console
  1. Öffnen Sie die App Mesh Mesh-Konsole unter https://console.aws.amazon.com/appmesh/.

  2. Wählen Sie das Mesh aus, aus dem Sie eine Gateway-Route löschen möchten. Alle Netze, die Sie besitzen und die mit Ihnen geteilt wurden, werden aufgelistet.

  3. Wählen Sie in der linken Navigationsleiste Virtuelle Gateways aus.

  4. Wählen Sie das virtuelle Gateway aus, von dem Sie eine Gateway-Route löschen möchten.

  5. Wählen Sie in der Tabelle Gateway-Routen die Gateway-Route aus, die Sie löschen möchten, und klicken Sie auf Löschen. Sie können eine Gateway-Route nur löschen, wenn Ihr Konto als Ressourcenbesitzer aufgeführt ist.

  6. Geben Sie in das Bestätigungsfeld eindelete und klicken Sie dann auf Löschen.

AWS CLI
So löschen Sie eine Gateway-Route mit derAWS CLI
  1. Verwenden Sie den folgenden Befehl, um Ihre Gateway-Route zu löschen (ersetzen Sie die roten Werte durch Ihre eigenen):

    aws appmesh delete-gateway-route \ --mesh-name meshName \ --virtual-gateway-name virtualGatewayName \ --gateway-route-name gatewayRouteName
  2. Beispielausgabe:

    { "gatewayRoute": { "gatewayRouteName": "gatewayRouteName", "meshName": "meshName", "metadata": { "arn": "arn:aws:appmesh:us-west-2:210987654321:mesh/meshName/virtualGateway/virtualGatewayName/gatewayRoute/gatewayRouteName", "createdAt": "2022-04-06T11:05:32.100000-05:00", "lastUpdatedAt": "2022-04-07T10:36:33.191000-05:00", "meshOwner": "123456789012", "resourceOwner": "210987654321", "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "spec": { "httpRoute": { "action": { "target": { "virtualService": { "virtualServiceName": "serviceA.svc.cluster.local" } } }, "match": { "prefix": "/" } } }, "status": { "status": "DELETED" }, "virtualGatewayName": "virtualGatewayName" } }

Weitere Informationen zum Löschen einer Gateway-Route mit demAWS CLI for App Mesh finden Sie im delete-gateway-routeBefehl in derAWS CLI Referenz.