Interne Passthrough-Network-Load-Balancer sind regionale Load Balancer, mit denen Sie Ihre Dienste hinter einer internen IP-Adresse ausführen und skalieren können, auf die nur Ihre internen VM-Instanzen zugreifen können.
Auf dieser Seite wird die Verwendung mehrerer Weiterleitungsregeln mit derselben IP-Adresse beschrieben. Allgemeine Informationen zu internen Passthrough-Network-Load-Balancern finden Sie in der Übersicht zu internen Passthrough-Network-Load-Balancern.
Mit internen Weiterleitungsregeln können Sie eine freigegebene interne IP-Adresse für bis zu zehn Weiterleitungsregeln verwenden. Sie können TCP
oder UDP
für das Protokoll der Weiterleitungsregel verwenden und der Weiterleitungsregel bis zu fünf Ports zuweisen oder --ports=ALL
angeben, um alle Ports zu verwenden. Wenn Sie das L3_DEFAULT
-Protokoll verwenden möchten, müssen Sie alle Ports mit der Option --ports=ALL
verwenden.
Mit eindeutigen Kombinationen aus Protokoll und Ports können Sie Folgendes tun:
Erstellen Sie mithilfe des Protokolls
TCP
50 eindeutige TCP-Ports mit jeder Weiterleitungsregel.Wenn eine Weiterleitungsregel für die Verwendung des Protokolls
TCP
und aller Ports konfiguriert ist, kann keine andere Weiterleitungsregel mit dem ProtokollTCP
dieselbe freigegebene IP-Adresse verwenden.Erstellen Sie mithilfe des Protokolls
UDP
50 eindeutige UDP-Ports mit jeder Weiterleitungsregel.Wenn eine Weiterleitungsregel für die Verwendung des Protokolls
UDP
und aller Ports konfiguriert ist, kann keine andere Weiterleitungsregel mit dem ProtokollUDP
dieselbe freigegebene IP-Adresse verwenden.Erstellen Sie 50 eindeutige Kombinationen von TCP- und UDP-Ports, wobei jede Weiterleitungsregel entweder das Protokoll
TCP
oderUDP
verwendet.auf einen gemeinsamen Backend-Dienst (einen einzelnen Load Balancer) oder auf mehrere Backend-Dienste (mehrere Load Balancer mit derselben IP-Adresse) verweisen
Verwenden Sie alle Ports, wenn Sie eine Weiterleitungsregel mit dem Protokoll
L3_DEFAULT
konfigurieren. Für eine IP-Adresse kann nur eineL3_DEFAULT
-Weiterleitungsregel vorhanden sein, die gegebenenfalls für andere TCP- und UDP-Weiterleitungsregeln freigegeben werden kann.
Wenn Ihre Weiterleitungsregeln unterschiedliche Protokolle haben, benötigen Sie auch zwei verschiedene Backend-Dienste. Ein einzelner interner Passthrough-Network-Load-Balancer funktioniert entweder für TCP- oder UDP-Traffic, aber nicht für beides, da er einen einzelnen Backend-Dienst hat, der nur eines dieser Protokolle verwendet.
Entscheidungsmatrizen für Weiterleitungsregeln
Verwenden Sie die folgenden Tabellen, um Ihr Deployment zu erstellen.
Einzelner interner Passthrough-Network-Load-Balancer
Ein einzelner Backend-Dienst unterstützt TCP oder UDP, nicht beides.
Wenn Sie mehrere Weiterleitungsregeln benötigen, berechnen Sie die Anzahl der benötigten Weiterleitungsregeln mithilfe der Formel ⌈total number of ports / 5⌉
, wobei ⌈⌉
die CEILING-Funktion (kleinste Ganzzahl) ist (es wird also aufgerundet).
Angenommen, Sie benötigen 26 TCP-Ports für eine IP-Adresse Ihres Load-Balancers. Wenn Sie keine einzelne Weiterleitungsregel mit --ports=ALL
erstellen möchten, müssen Sie wegen 26 / 5 = 5 with a remainder of 1
sechs Weiterleitungsregeln erstellen:
Beabsichtigte Frontend-Konfiguration | Anzahl der erforderlichen Weiterleitungsregeln | Für IP-Adresse erforderliches Flag --purpose=SHARED_LOADBALANCER_VIP |
Portspezifikation der Weiterleitungsregel |
---|---|---|---|
Eine IP-Adresse, Traffic über alle Ports | Eine Weiterleitungsregel | Nein | --ports=ALL |
Eine IP-Adresse, Traffic über bestimmte Ports |
Für maximal fünf Ports: Für sechs oder mehr Ports: |
Für fünf oder weniger Ports: nein Für sechs oder mehr Ports: ja |
Legen Sie --ports auf eine Reihe von bis zu fünf fortlaufenden oder nicht fortlaufenden Portnummern fest. |
Mehrere IP-Adressen, Traffic über alle Ports | Eine Weiterleitungsregel pro IP-Adresse | Nein | --ports=ALL |
Mehrere IP-Adressen, Traffic über bestimmte Ports | Mindestens eine Weiterleitungsregel pro IP-Adresse |
Bei Verwendung von maximal fünf Ports pro IP-Adresse: nein Wenn Sie sechs oder mehr Ports pro IP-Adresse verwenden: ja |
Legen Sie --ports auf eine Reihe von bis zu fünf fortlaufenden oder nicht fortlaufenden Portnummern fest. |
Zwei interne Passthrough-Network-Load-Balancer
Bei zwei internen Passthrough-Network-Load-Balancern können Sie zwei Backend-Dienste nutzen, wobei ein Backend-Dienst für TCP-Traffic und der andere Backend-Dienst für UDP-Traffic vorgesehen ist.
Wenn Sie mehrere Weiterleitungsregeln benötigen, berechnen Sie die Anzahl der benötigten Weiterleitungsregeln mithilfe der folgenden Formel, wobei ⌈⌉
die CEILING-Funktion (kleinste Ganzzahl) ist (es wird also aufgerundet):
⌈total number of TCP ports / 5⌉ ⌈total number of UDP ports / 5⌉
Angenommen, Sie benötigen 26 TCP-Ports und 12 UDP-Ports. Sie müssen neun Weiterleitungsregeln erstellen:
26 / 5 = 5 with a remainder of 1
, Sie benötigen also sechs Weiterleitungsregeln für Ihre TCP-Ports.12 / 5 = 2 with a remainder of 2
, Sie benötigen also drei Weiterleitungsregeln für Ihre UDP-Ports.
Beabsichtigte Frontend-Konfiguration | Anzahl der erforderlichen Weiterleitungsregeln | Für IP-Adresse erforderliches Flag --purpose=SHARED_LOADBALANCER_VIP |
Portspezifikation der Weiterleitungsregel |
---|---|---|---|
Eine IP-Adresse, Traffic über alle Ports | Zwei Weiterleitungsregeln – eine für TCP und eine für UDP | Da die TCP-Weiterleitungsregel und die UDP-Weiterleitungsregel eine einzelne IP-Adresse verwenden müssen: ja | --ports=ALL |
Eine IP-Adresse, Traffic über bestimmte Ports |
Für maximal fünf TCP-Ports und maximal fünf UDP-Ports: zwei Weiterleitungsregeln – eine für TCP und eine für UDP Für sechs oder mehr TCP-Ports oder UDP-Ports: mehrere Weiterleitungsregeln, wobei jede Weiterleitungsregel ein Protokoll und maximal fünf Ports unterstützt |
Ja | Legen Sie --ports auf eine Reihe von bis zu fünf fortlaufenden oder nicht fortlaufenden Portnummern fest. |
Mehrere IP-Adressen, Traffic über alle Ports, entweder TCP oder UDP |
Mindestens zwei Weiterleitungsregeln – eine für TCP mit genau einer IP-Adresse, eine für UDP mit einer anderen IP-Adresse Drei oder mehr Weiterleitungsregeln, wenn Sie mindestens drei IP-Adressen benötigen |
Nein | --ports=ALL |
Mehrere IP-Adressen, Traffic über bestimmte Ports, entweder TCP oder UDP |
Mindestens zwei Weiterleitungsregeln – eine für TCP mit genau einer IP-Adresse, eine für UDP mit einer anderen IP-Adresse Mehr als zwei Weiterleitungsregeln, wenn Sie eines von Folgendem benötigen:
|
Für eine einzelne IP-Adresse mit maximal fünf TCP-Ports und eine einzelne IP-Adresse mit maximal fünf UDP-Ports: nein Für sechs oder mehr TCP-Ports oder UDP-Ports: ja |
Legen Sie --ports auf eine Reihe von bis zu fünf fortlaufenden oder nicht fortlaufenden Portnummern fest. |
Beschränkungen
- Zwei oder mehr Weiterleitungsregeln mit derselben IP-Adresse und demselben Protokoll dürfen keine sich überschneidenden Ports haben. Beispiel:
- Wenn Sie die Weiterleitungsregel mit Protokoll-TCP und Port
80
konfigurieren, können Sie keine weitere Weiterleitungsregel für die Bereitstellung dieses Protokolls und dieses Ports konfigurieren. Sie können beispielsweise keine weitere Weiterleitungsregel für die TCP-Ports80
,81
und90
erstellen. - Wenn Sie die Weiterleitungsregel für TCP und die Ports
80
,8080
und90
konfigurieren, können Sie keine weitere Weiterleitungsregel für TCP konfigurieren, die alle Ports verwendet.
- Wenn Sie die Weiterleitungsregel mit Protokoll-TCP und Port
- Wenn zwei oder mehr Weiterleitungsregeln mithilfe des Flags
--purpose=SHARED_LOADBALANCER_VIP
dieselbe IP-Adresse haben, kann das Protokoll von höchstens einer davon aufL3_DEFAULT
gesetzt sein.
Anwendungsfälle
Es sind viele verschiedene Bereitstellungen möglich. In den folgenden Beispielen wird eine einzelne IP-Adresse verwendet, die Traffic über bestimmte Ports für zwei Load-Balancer akzeptiert.
Beispiel 1
Dieses Beispiel verwendet verschiedene Weiterleitungsregeln mit den folgenden Parametern:
- Dieselbe IP-Adresse (
10.1.1.1
) - Verschiedene Protokolle
- Separate Backend-Dienste, auf die jede Weiterleitungsregel verweist
- Übereinstimmende Protokolle: das Protokoll jedes Backend-Dienstes stimmt mit dem Protokoll der entsprechenden Weiterleitungsregel überein
Beispiel 2
Dieses Beispiel verwendet verschiedene Weiterleitungsregeln mit den folgenden Parametern:
- Dieselbe IPv4-Adresse (
10.1.1.1
) - Dasselbe Protokoll
- Anderer Satz nummerierter Ports für jede Weiterleitungsregel
Konfigurationsschritte
Sie können mehrere interne Weiterleitungsregeln mit derselben IP-Adresse erstellen, wenn Sie die folgenden beiden Schritte ausführen:
- Erstellen Sie eine statische (reservierte) interne IP-Adresse, die von den Weiterleitungsregeln verwendet werden soll.
- Legen Sie das Flag
--purpose
für die gemeinsam genutzte interne IP-Adresse auf den WertSHARED_LOADBALANCER_VIP
fest.
Ein Beispiel für eine Einrichtung finden Sie unter Traffic an mehreren Ports mit zwei Weiterleitungsregeln akzeptieren.