Traffic Director の転送ルール

このドキュメントは、ロード バランシング API を使用する Traffic Director にのみ適用されます。Traffic Director をデプロイするには、サービス ルーティング API または Google Kubernetes Engine Gateway API を使用することを強くおすすめします。

Traffic Director は、転送ルールを使用して、メッシュ内のトラフィックが転送されるターゲット プロキシを決定します。

各転送ルールにより、サービスに対する単一のグローバル IPv4 アドレスが提供されます。そのアドレスは、サービスに対する内部 DNS レコードの作成に使用できます(Cloud DNS マネージド プライベート ゾーンを使用するなど)。転送ルールのメタデータ フィルタは、xDS 準拠のサイドカー プロキシが構成を受け取る条件を指定します。

Traffic Director のコントロール プレーンでは、内部、セルフマネージド、グローバルの各転送ルールが、IP アドレス、ポート、プロトコルでトラフィックをターゲット プロキシにルーティングします。ターゲット プロキシは、トラフィックの宛先を決定するルールを含む URL マップを指します。URL マップは、デフォルトのバックエンド サービスも指定します。このバックエンド サービスはヘルスチェックを指定し、仮想マシン(VM)インスタンスを含むマネージド インスタンス グループ(MIG)やネットワーク エンドポイント グループ(NEG)など、適切なバックエンドを決定します。これには Google Kubernetes Engine(GKE)バックエンド Pod が含まれます。

以下の図は、Traffic Director アーキテクチャにおける転送ルールの位置付けを示しています。

ハイライト表示された Traffic Director の転送ルール。
ハイライト表示された Traffic Director の転送ルール(クリックして拡大)

転送ルールのプロパティ

転送ルールのリソースには、Traffic Director に適用される次のプロパティが含まれています。転送ルールにより、宛先 IP アドレス、プロトコル、ポート番号に一致するトラフィックが処理されます。

転送ルールの 0.0.0.0 IP アドレスは、Traffic Director を使用する場合のオプションの 1 つです。0.0.0.0 の IP アドレスは、任意の IP アドレスを意味します。

  • プロキシ デプロイで、他に特定の一致が見つからない場合、プロキシは 0.0.0.0 IP アドレスで受信トラフィックを照合できます。

  • プロキシレス デプロイでは、0.0.0.0 IP アドレスが IP アドレスが不要であることを指定する方法になります。ターゲット gRPC プロキシで 0.0.0.0 IP アドレスを使用する方法については、後述します。

転送ルールのプロパティの詳細を次の表に示します。

プロパティ 必須 説明
name

転送ルールの名前。

名前はこのプロジェクト内で固有であり、63 文字以内の長さで、正規表現 [a-z]([-a-z0-9]*[a-z0-9])? と一致している必要があります。

先頭文字に小文字を使用し、残りの文字には、ダッシュ、小文字、数字を使用する必要があります。ただし、最後の文字にはダッシュを使用できません。

IPAddress

0.0.0.0127.0.0.1、または RFC 1918 アドレスのいずれかです。

Traffic Director の転送ルールの IP アドレスは、Virtual Private Cloud(VPC)ネットワーク内のサブネットの IP アドレス範囲に対応する必要はありません。特定の VPC ネットワーク、IP アドレス、ポートに対して設定できる内部セルフマネージド転送ルールは 1 つのみです。

たとえば、同じ VPC ネットワークで、0.0.0.0 IP アドレスとポート 80 を使用する転送ルールを 2 つ作成することはできません。

ターゲット gRPC プロキシを使用した IPAddress

validateForProxyless フィールドが TRUE に設定され、その IP アドレスが 0.0.0.0 に設定されたターゲット gRPC プロキシを参照する転送ルール。

xds スキームを使用する gRPC クライアントは、チャネル URI のホスト名を解決するために DNS ルックアップを実行しません。このようなクライアントは、Traffic Director にリスナー ディスカバリ サービス(LDS)リクエストを送信して、ターゲット URI の hostname[:port] を解決します。DNS ルックアップは実行されず、ホスト名の DNS エントリも不要です。

その結果、Traffic Director は、0.0.0.0 の IP アドレスと、URI で指定されたポート(デフォルトは 80)を使用して転送ルールを検索します。次に、Traffic Director は、一致するホストルールを、転送ルールが参照するターゲット プロキシの URL マップの中で探します。

target

この転送ルールがトラフィックを転送するターゲット プロキシ。Traffic Director は target-http-proxytarget-https-proxytarget-grpc-proxy. をサポートしています。

When you use the Google Cloud console to configure the forwarding rule, the target proxy is configured automatically. When you use the Google Cloud CLI or the API, the target proxy must exist before you create your forwarding rule. You can use more than one forwarding rule with a given proxy.

IPProtocol この転送ルールが一致するプロトコルのタイプ。サポートされている値は TCP のみです。
loadBalancingScheme 転送ルールの使用方法を指定します。Traffic Director の有効な値は INTERNAL_SELF_MANAGED です。
portRange

ポートまたはダッシュで結合されたポート範囲。

これらのポートに送信された指定されたプロトコルのパケットは、適切なバックエンドに転送されます。範囲を示す単一の数値(例: 8080-8080)を指定できます。

特定の VPC ネットワーク、IP アドレス、ポートに対して設定できる内部セルフマネージド転送ルールは 1 つのみです。たとえば、同じ VPC ネットワークで、0.0.0.0 IP アドレスとポート 80 を使用する転送ルールを 2 つ作成することはできません。

プロキシレス gRPC サービスでは、転送ルール内のポートは、gRPC アプリケーションがサービスに接続するために使用する URI で指定されたポートに一致します。URI にポートが指定されていない場合は、80 がデフォルトのポートになります。

network

Envoy プロキシを実行している Google Cloud VM が配置されている VPC ネットワークを指定します。

Envoy プロキシは、プロキシがデプロイされている同じネットワークに対して定義した Traffic Director の構成を読み取ります。default という名前の VPC ネットワークまたはカスタム ネットワークを使用できます。

Traffic Director は、Google Cloud ネットワーク内のみのクライアントに対する負荷分散をサポートします。転送ルールでネットワーク名を指定します。VPC ネットワーク ピアリングはサポートされていません。

グローバル転送ルールの追加

Traffic Director の設定全体の中で転送ルールを構成する方法については、次をご覧ください。

次のステップ