Traffic Director の上限と制限事項

上限

プロジェクトごとの既存のすべての転送ルール、バックエンド サービス、およびその他の負荷分散の上限と割り当てが、Traffic Director のデプロイに適用されます。

制限事項

  • Traffic Director は、Google Cloud APIs のみをサポートしています。Traffic Director では、Istio API はサポートしていません。
  • HTTP(HTTP/1.1 または HTTP/2)、TCP、gRPC の各リクエスト プロトコルを Traffic Director を使用して構成できます。
  • ターゲット TCP プロキシ リソースを使用して TCP リクエスト プロトコルを構成する場合は、高度なトラフィック管理機能は使用できません。高度なトラフィック管理機能は、HTTP リクエストまたは gRPC リクエストを処理するようにデータプレーンを構成する場合にのみ使用できます。
  • Traffic Director は共有 VPC をサポートしています。次の点にご注意ください。
    • 転送ルールとそれに関連付けられたターゲット プロキシ、URL マップ、バックエンド サービス、バックエンドは、単一のプロジェクト(ホストまたはサービス プロジェクト)に存在する必要があります。複数のサービス プロジェクトがある場合は、各サービス プロジェクトにこれらのリソースの独自のセットを配置できます。
    • デフォルトでは、共有 VPC ネットワークを参照する転送ルールは、ホストとホスト プロジェクトに接続されたサービス プロジェクトに存在するすべての Envoy プロキシに対してアドバタイズされます。ただし、これらのプロキシが、ブートストラップまたは sidecar.env ファイルで共有 VPC ネットワークを指定する必要があります。この動作は、構成フィルタリングを使用して調整できます。
    • Traffic Director にアクセスできるのは、共有 VPC ネットワークに関連付けられた負荷分散スキーム INTERNAL_SELF_MANAGED を持つ転送ルールを少なくとも 1 つ含むプロジェクトのサービス アカウントのみです。
  • Traffic Director は VPC ネットワーク ピアリングをサポートしていません。
  • Knative または Google Cloud のサーバーレス コンピューティングで実行されているサービスでは Traffic Director を使用できません。
  • このドキュメントでは、Envoy プロキシについて説明しますが、Traffic Director では任意のオープン標準 API(xDS)プロキシを使用できます。ただし、Google では Traffic Director のテストは Envoy プロキシでのみ行われたことに注意してください。
  • Traffic Director と連携するには、Envoy がバージョン 1.9.1 以降であることが必要です。
  • 正規表現は、1.12.0 より前の Envoy バージョンではサポートされていません。正規表現を使用するには、バージョン 1.12.0 以降を使用する必要があります。
  • 既知のすべてのセキュリティに関する脆弱性が軽減されていることから、最新の Envoy バージョンを使用することを強くおすすめします。
  • Envoy のセキュリティ アドバイザリについては、Envoy のセキュリティ アドバイザリをご覧ください。
  • ハイブリッド接続ネットワーク エンドポイント グループは、Google Cloud Console ではサポートされていません。ハイブリッド接続 NEG を作成または削除するには、gcloud コマンドライン ツールを使用する必要があります。
  • データプレーンがヘルスチェックを処理するため、Google Cloud Console、API、gcloud を使用してヘルスチェックのステータスを取得することはできません。
  • iptables が正しく設定されていることを確認します。iptables の構成方法の詳細については、Envoy の HTTP フィルタリングの構成に関するメモをご覧ください。
    • Google Cloud Console を使用して VM インスタンスを作成する場合、ipv6 関連モジュールの一部はインストールされず、再起動しなければ使用できません。これは、依存関係がないことによる、iptables.sh の失敗につながります。そのような場合は、VM を再起動し、run.sh スクリプトを再実行します。gcloud コマンドライン ツールを使用して作成した Compute Engine VM では、この問題は発生しません。

高度なトラフィック管理の模倣

  • BackendService.sessionAffinity の値が NONE ではなく、BackendService.localityLbPolicyMAGLEV または RING_HASH 以外の負荷分散ポリシーに設定されている場合、セッション アフィニティの設定は有効になりません。
  • gcloud import コマンドは、バックエンド サービスや URL マップなど、リソースの最上位フィールドを削除しません。たとえば、バックエンド サービスを作成し、circuitBreakers を設定した場合、これらの設定は後続の gcloud import コマンドで更新できます。しかし、これらの設定をバックエンド サービスから削除することはできません。一方、リソースは circuitBreakers を設定しなくても、削除や再作成が可能です。
  • 転送ルールのインポートが正しく機能しません。エクスポートされた YAML ファイルは再インポートできません。これを回避するには、構成ファイルをエクスポートして変更を行い、転送ルールを削除して構成ファイルをインポートします。