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

Container Service for Kubernetes:Terway パラメーターのカスタマイズ

最終更新日:May 15, 2026

デフォルトの Terway 設定は、ほとんどのシナリオに対応しています。Terway の設定変更は、Terway コンポーネントの停止などのエラーを引き起こす可能性がある高リスクの操作です。IP アドレスリソースプールのサイズを拡大して Pod の IP 割り当てを高速化するなど、特定の要件がある場合は、本トピックの説明に従って設定パラメーターをカスタマイズできます。

制限事項

  • 本トピックでは、各パラメーターの機能について説明します。すべてのパラメーターの組み合わせが、すべてのシナリオで機能するわけではありません。設定を適用する前に、十分にテストを実施してください。

  • 一部のパラメーターはコンソールで設定できます。パラメーターがコンソールで利用できない場合、現在のコンポーネントバージョンではサポートされていません。パラメーターを設定するには、Terway コンポーネントをアップグレードする必要があります。

Terway 設定例

次のコードは、クラスター内の Terway コンポーネントの ConfigMap ファイルの形式を示しています。

apiVersion: v1
data:
  10-terway.conf: |     # Terway CNI 設定ファイルのパラメーター。この設定は変換され、/etc/cni/net.d/ に書き込まれます。変更しないでください。
    {
      "cniVersion": "0.4.0",
      "name": "terway",
      "capabilities": {"bandwidth": true},
      "eniip_virtual_type": "datapathv2",
      "host_stack_cidrs": ["169.254.20.10/32"],
      "cilium_args": "",
      "type": "terway"
    }
  disable_network_policy: "false"    # NetworkPolicy 機能を無効にするかどうかを指定します。
  eni_conf: |                        # vSwitch やセキュリティグループなど、Terway のコア設定パラメーター。
    {
      "version": "1",
      "max_pool_size": 5,
      "min_pool_size": 0,
      "credential_path": "/var/addon/token-config",
      "enable_eni_trunking": true,
      "vswitches": {"cn-hangzhou-j":["vsw-foo"],"cn-hangzhou-k":["vsw-foo"]},
      "eni_tags": {"ack.aliyun.com":"c7c3cfoo"},
      "service_cidr": "192.168.0.0/16",
      "security_group": "sg-foo",
      "ip_stack": "ipv4",
      "vswitch_selection_policy": "ordered"
    }
  in_cluster_loadbalance: "true"   # クラスター内負荷分散。DataPathV2 または IPvlan モードでのみ有効です。
kind: ConfigMap
metadata:
  name: eni-config
  namespace: kube-system

パラメーター

トップレベルパラメーター

パラメーター

説明

変更可能

コンソールサポート

10-terway.conf

Terway CNI 設定パラメーター。この設定は変換され、/etc/cni/net.d/ に書き込まれます。

いいえ

いいえ

10-terway.conflist

カスタム Terway CNI 設定ファイルのパラメーター。詳細については、「カスタム CNI チェーンを設定する」をご参照ください。

はい

いいえ

disable_network_policy

NetworkPolicy 機能を無効にするかどうかを指定します。

  • false: NetworkPolicy 機能を有効にします。

  • true: NetworkPolicy 機能を無効にします。

はい

はい

eni_conf

vSwitch やセキュリティグループなど、Terway のコア設定パラメーター。

はい

一部

in_cluster_loadbalance

クラスター内ロードバランシングを有効にするかどうかを指定します。このパラメーターは、DataPathV2 または IPvlan モードでのみ有効になります。詳細については、「Terway IPvlan クラスターでクラスター内ロードバランシングを有効にする方法」をご参照ください。

はい

はい

10-terway.conf パラメーター

パラメーター

タイプ

説明

変更可能

コンソールサポート

cniVersion

string

CNI 設定バージョン。

いいえ

いいえ

name

string

CNI プラグインの名前。

いいえ

いいえ

type

string

CNI プラグインのタイプ。

いいえ

いいえ

capabilities

string

CNI の機能。

はい

いいえ

eniip_virtual_type

string

ENI の仮想化方式。

いいえ

いいえ

cilium_args

string

Cilium 設定パラメーター。例: --bpf-map-dynamic-size-ratio=0.003

重要
  • パラメーターのサポートはコミュニティバージョンによって異なり、下位互換性は保証されません。本番環境で使用する前に、これらのパラメーターを十分にテストしてください。アップグレード後に Terway Pod の起動に失敗した場合は、設定を削除して再試行してください。

  • コンポーネントをアップグレードする際、パラメーターリストが検証されます。次のパラメーターが許可されています。Terway のアップグレード中に cilium_args validation チェックが失敗した場合は、設定を削除して再試行してください。

    bpf-map-dynamic-size-ratio
    bpf-ct-timeout-regular-any
    bpf-ct-timeout-regular-tcp
    bpf-ct-timeout-regular-tcp-fin
    bpf-ct-timeout-regular-tcp-syn
    bpf-ct-timeout-service-any 
    bpf-ct-timeout-service-tcp 
    bpf-ct-timeout-service-tcp-grace
    bpf-lb-map-max
    conntrack-gc-interval
    bpf-ct-global-any-max
    bpf-ct-global-tcp-max
    bpf-nat-global-max
    prometheus-serve-addr
    api-rate-limit
    k8s-client-qps
    k8s-client-burst

はい

はい

symmetric_routing

bool

terway-eniip 1.15.0 以降が必要です。

対称ルーティングを有効にするかどうかを指定します。この機能を有効にすると、トラフィックが同じインターフェースから送受信されるように、ポリシーベースルーティングルールが設定されます。

  • true: 有効にします。

  • false: 無効にします。

はい

いいえ

symmetric_routing_config

map[string]any

terway-eniip 1.15.0 以降が必要です。

対称ルーティング設定パラメーター。ほとんどの場合、これらのパラメーターを設定する必要はありません。次のコードは、デフォルト値と例を示しています。

{
  "symmetric_routing_config": {
    "interface": "eth0",
    "mark": 16,
    "mask": 16,
    "table_id": 100,
    "rule_priority": 600,
    "comment": "terway-symmetric"
  }
}
重要

誤った設定は、既存のネットワーク設定に影響を与える可能性があります。パラメーターを使用する前に、非本番環境で十分にテストしてください。

はい

いいえ

eni_conf パラメーター

パラメーター

タイプ

説明

変更可能

コンソールサポート

credential_path

string

OpenAPI へのアクセスに使用される Security Token Service (STS) トークンへのパスです。このパラメーターは、ACK マネージドクラスター にのみ適用されます。

いいえ

いいえ

service_cidr

string

クラスターのサービス CIDR ブロック。

いいえ

いいえ

vswitches

map[string][]string

ENI で使用可能な vSwitch。ゾーンごとにキー指定されます。

はい

はい

eni_tags

map[string]string

ENI 作成時に追加するタグ。このパラメーターの変更は、既存の ENI には影響しません。

いいえ

いいえ

eni_tag_filter

map[string]string

共有 ENI モードにのみ適用されます。

Terway が管理する ENI をフィルタリングします。詳細については、「ENI のホワイトリストを設定する」をご参照ください。

はい

いいえ

max_pool_size

int

共有 ENI モードにのみ適用されます。

IP アドレスリソースプールに保持するアイドル IP アドレスの最大数。デフォルト値: 5。

はい

はい

min_pool_size

int

共有 ENI モードにのみ適用されます。

IP アドレスリソースプールに保持するアイドル IP アドレスの最小数。デフォルト値: 0。

はい

はい

security_group

string

新しい ENI のセキュリティグループ。このパラメーターの変更は、既存の ENI には影響しません。

はい

いいえ

security_groups

[]string

新しい ENI のセキュリティグループ。最大 10 個のセキュリティグループを指定できます。このパラメーターを設定すると、security_groupsecurity_groups の値の和集合が使用されます。このパラメーターの変更は、既存の ENI には影響しません。

はい

はい

vswitch_selection_policy

string

ENI 作成時に vSwitch を選択するポリシー。

  • ordered: 利用可能な IP アドレスが最も多い vSwitch を選択します。これがデフォルト値です。

  • random: vSwitch をランダムに選択します。

はい

はい

enable_eip_migrate

bool

EIP 移行機能を有効にするかどうかを指定します。詳細については、「Terway から ack-extend-network-controller への EIP の移行」をご参照ください。

はい

いいえ

ip_stack

string

クラスターの IP ファミリー。このパラメーターは変更できません。

いいえ

いいえ

ipam_type

string

クラスターの IPAM 方式。このパラメーターは変更できません。

いいえ

いいえ

enable_eni_trunking

bool

Trunk 機能を有効にするかどうかを指定します。 詳細については、「Pod に固定 IP アドレス、独立した vSwitch、およびセキュリティグループを設定する」をご参照ください。

はい

いいえ

kube_client_qps

float32

Kubernetes クライアントの QPS 設定。kube_client_burst と一緒に設定する必要があります。

はい

はい

kube_client_burst

int

Kubernetes クライアントの Burst 設定。kube_client_qps と一緒に設定する必要があり、kube_client_qps より大きい値である必要があります。

はい

はい

resource_group_id

string

新しい ENI が追加されるリソースグループ。このパラメーターの変更は、既存の ENI には影響しません。

はい

はい

ip_pool_sync_period

string

terway-eniip 1.15.0 以降が必要です。共有 ENI モードにのみ適用されます。

IP アドレスリソースプールの同期期間。デフォルト値: 120 秒。

例: 2m120s

はい

いいえ

idle_ip_reclaim_after

string

terway-eniip 1.16.0 以降が必要です。共有 ENI モードにのみ適用されます。

IP アドレスがアイドル状態になってから回収されるまでの時間。

例: 60m

説明

回収前に Pod が作成または削除されると、タイマーはリセットされます。

はい

いいえ

idle_ip_reclaim_interval

string

terway-eniip 1.16.0 以降が必要です。共有 ENI モードにのみ適用されます。

2 回の連続した回収チェックの間隔。

例: 30m

はい

いいえ

idle_ip_reclaim_batch_size

int

terway-eniip 1.16.0 以降が必要です。共有 ENI モードにのみ適用されます。

1 回のバッチで回収できる IP アドレスの最大数。有効範囲: 1 ~ 10。

例: 5

はい

いいえ

idle_ip_reclaim_jitter_factor

string

terway-eniip 1.16.0 以降が必要です。共有 ENI モードにのみ適用されます。

回収時間をランダム化するために使用されるジッター係数。有効範囲: 0.0 ~ 1.0。

例: 0.1

はい

いいえ

ip_warm_up_size

int

terway-eniip 1.16.4 以降、およびクラスターの ipam_typecrd に設定されていることが必要です。この機能は共有 ENI モードでのみサポートされます。

一度に事前割り当てする IP アドレスの数。このパラメーターは新しく追加されたノードにのみ有効です。ノード上の割り当て済み IP アドレス数が期待値に達すると、ウォームアップタスクは停止します。

例: 5

はい

いいえ

enable_patch_pod_ips

bool

terway-eniip 1.13.7 以降が必要です。共有 ENI モードにのみ適用されます。

Pod に k8s.aliyun.com/pod-ips アノテーションを追加するかどうかを指定します。デフォルト値: true

はい

いいえ

enable_ip_prefix

bool

terway-eniip 1.17.0 以降が必要です。共有 ENI モードにのみ適用されます。

デフォルト値は false です。このオプションを有効にすると、ENI に IP プレフィックスが割り当てられます。

はい

いいえ

ipv4_prefix_count

int

terway-eniip 1.17.0 以降が必要です。共有 ENI モードにのみ適用されます。

ノード設定の IP プレフィックスの数。このパラメーターは、クラスターネットワークタイプが ipv4 または dual の場合に有効です。値の範囲は 0 以上であり、上限はバースト可能なインスタンスタイプの仕様によって自動的に制限されます。

はい

いいえ

ipv6_prefix_count

int

terway-eniip 1.17.0 以降が必要です。共有 ENI モードにのみ適用されます。

ノードの IP プレフィックスの数。このパラメーターは、クラスターネットワークタイプが ipv6 の場合にのみ有効です。値の範囲は [0, 1] です。

はい

いいえ

設定方法

コンソールの使用

コンソールで頻繁に使用されるパラメーターを設定できます。コンソールは内容を検証し、無効なエントリを拒否します。

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、[操作] > [アドオン] を選択します。

  3. ネットワーク タブをクリックし、terway-eniip カード内の 設定 をクリックします。

  4. 表示されたパネルでパラメーターを設定し、OK をクリックします。

kubectl の使用

一部のパラメーターはコンソールでは利用できません。kubectl を使用してこれらのパラメーターを設定できます。

警告

kubectl を使用した Terway の設定は高リスクの操作です。kubectl は入力を検証できません。誤ったパラメーターは、Terway コンポーネントの停止などのエラーを引き起こす可能性があります。変更を加える前に、設定内容を十分に理解してください。

  1. kubectl を使用してクラスターに接続します。詳細については、「クラスターの kubeconfig ファイルを取得し、kubectl を使用してクラスターに接続する」をご参照ください。次に、次のコマンドを実行して詳細パラメーターを設定します。

    kubectl edit cm -n kube-system  eni-config 
  2. 設定を保存した後、次のコマンドを実行して DaemonSet を再起動し、変更を適用します。

     kubectl rollout restart -n kube-system daemonset.apps/terway-eniip

関連ドキュメント