すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:Pod の QoS 設定

最終更新日:Dec 13, 2025

オンラインサービスはネットワーク品質の影響を受けやすく、低遅延が求められます。一方、オフラインサービスは大量のネットワーク帯域幅を消費します。これらのサービスが何の制御もなく一緒に実行されると、ネットワークリソースを奪い合う可能性があります。この競合は、サービスの遅延増大や可用性の低下につながる可能性があります。Pod のインバウンドおよびアウトバウンド帯域幅とデータパケットの優先度をカスタマイズすることで、ネットワークリソースをよりきめ細かく制御できます。これにより、サービス間の帯域幅競合による影響を軽減できます。

Pod の帯域幅制限

標準的な Kubernetes の Pod アノテーションを使用して、Pod のインバウンドおよびアウトバウンド帯域幅を制限できます。

アノテーション

説明

kubernetes.io/ingress-bandwidth: 10M

Pod のインバウンド帯域幅制限。値の例は 10 Mbps です。

kubernetes.io/egress-bandwidth: 10M

Pod のアウトバウンド帯域幅制限。値の例は 10 Mbps です。

重要
  • Terway が共有 Elastic Network Interface (ENI) モードで構成され、かつ IPvlan+eBPF ネットワークアクセラレーションモードが有効になっている場合、kubernetes.io/ingress-bandwidth アノテーションはサポートされません。

  • Terway が排他的な ENI モードで構成されている場合、kubernetes.io/ingress-bandwidth アノテーションはサポートされません。

  • DataPathV2 ネットワークアクセラレーションモードでは、Terway v1.13.0 以降が Ingress の帯域幅制限をサポートします。これらの帯域幅制限は、ノードに出入りするトラフィックにのみ適用されます。同一ノード内のトラフィックには適用されません。

  • v1.3.0 より前の Terway バージョンで作成されたクラスターの場合、Terway の構成を変更してこの機能を有効にする必要があります。詳細については、以下の手順をご参照ください。

v1.3.0 より前の Terway で作成されたクラスター

ご利用のクラスターが v1.3.0 より前の Terway バージョンで作成された場合は、Terway の構成を変更してこれらのアノテーションを有効にする必要があります。

Terway の構成を変更する

  1. 次のコマンドを実行して、Terway ConfigMap を編集します。

    kubectl edit cm -n kube-system eni-config
  2. data.10-terway.conf で、capabilities 構成を追加します。

    apiVersion: v1
    data:
      10-terway.conf: |
        {
          "cniVersion": "0.3.1",
          "name": "terway",
          "capabilities": {"bandwidth": true},
          "type": "terway"
        }
  3. 構成を保存して終了します。次に、以下のコマンドを実行して Terway Pod を再起動し、変更を適用します。

    kubectl delete -n kube-system pod -l app=terway-eniip

パケット優先度制御ポリシー

デフォルトでは、ネットワークインターフェースカード (NIC) のキューは、先入れ先出し (FIFO) 方式でパケットを送信します。Terway を使用すると、Pod のパケット優先度制御ポリシーを構成できます。これにより、ピークトラフィック時に優先度の高いサービスのパケットが最初に送受信されるようになり、遅延が短縮されます。

この機能はデフォルトで無効になっています。Terway の構成を変更することで有効にできます。

重要
  • この機能は、DataPathV2 ネットワークアクセラレーションモードが有効になっているクラスターではサポートされていません。

  • この機能は、排他的な ENI モードのノードではサポートされていません。

  • 優先度制御を有効にすると、ENI の NIC キューは mq+prio に置き換えられます。

パケット優先度制御の有効化

  1. 次のコマンドを実行して、Terway ConfigMap を編集します。

    kubectl edit cm -n kube-system eni-config
  2. data.10-terway.conf で、enable_network_priority 構成を追加します。

    apiVersion: v1
    data:
      10-terway.conf: |
        {
          "cniVersion": "0.3.1",
          "name": "terway",
          "enable_network_priority": true,
          "type": "terway"
        }
  3. 構成を保存して終了します。次に、以下のコマンドを実行して Terway Pod を再起動し、変更を適用します。

    kubectl delete -n kube-system pod -l app=terway-eniip

次の Pod アノテーションを使用して、Pod パケットの優先度を指定します。

説明

備考

k8s.aliyun.com/network-priority: "guaranteed"

最高の優先度。遅延の影響を受けやすいサービスに適しています。

k8s.aliyun.com/network-priority: "best-effort"

中程度の優先度。一般的なサービスに適しています。

k8s.aliyun.com/network-priority: "burstable"

最低の優先度。高帯域幅を必要とするものの、遅延の影響を受けにくいサービスに適しています。