All Products
Search
Document Center

Container Service for Kubernetes:Konfigurasikan mode ENI eksklusif untuk kelompok node

Last Updated:Jun 16, 2026

Tetapkan ENI eksklusif ke setiap Pod untuk mencapai throughput tinggi, latensi ultra-rendah, dan dukungan multicast.

Batasan

  • Instans ECS memerlukan Terway v1.11.0 atau yang lebih baru; instans Lingjun memerlukan v1.14.3 atau yang lebih baru. Lihat Terway untuk melakukan peningkatan.

  • Jika dual-stack diaktifkan, penambahan node mengikuti batasan tipe instans yang sama seperti pada mode ENI bersama: jumlah alamat IPv4 (primary dan secondary) harus sama dengan jumlah alamat IPv6. Lihat instance family untuk informasi jumlah yang didukung.

  • Instans Lingjun tidak mendukung dual-stack.

  • Pod yang diberi ENI eksklusif tidak mendukung akselerasi jaringan eBPF atau Kubernetes NetworkPolicy.

  • Mode ENI eksklusif memerlukan node baru. Node yang sudah ada dan ditambahkan ke kelompok tersebut tidak menggunakan ENI eksklusif.

  • Mode ENI eksklusif hanya berlaku untuk node baru. Anda tidak dapat beralih antara mode ENI bersama dan eksklusif setelah kelompok node dibuat.

  • Anda tidak dapat mengonfigurasi rantai CNI kustom.

Konfigurasikan jaringan kontainer di tingkat kelompok node

Terway menyediakan mode ENI eksklusif sebagai opsi jaringan di tingkat kelompok node. Lihat Shared ENI mode and exclusive ENI mode.

1. Rencanakan kelompok node ENI eksklusif

  • Dalam mode ENI eksklusif, setiap node mendukung lebih sedikit Pod dan memerlukan lebih dari enam ENI. Lihat instance family untuk informasi jumlah ENI per tipe instans.

  • Rencanakan vSwitch dan security group untuk Pod Anda.

Terway mendukung metode konfigurasi berikut dengan prioritas menurun:

2. Buat kelompok node ENI eksklusif dan verifikasi konfigurasinya

  1. Ikuti panduan Create and manage node pools untuk membuat kelompok node, lalu tambahkan label k8s.aliyun.com/exclusive-mode-eni-type: eniOnly ke node.

    Tambahkan juga taint untuk mencegah penjadwalan Pod yang tidak memerlukan ENI eksklusif ke kelompok ini.

    Penting

    Tambahkan label tersebut saat pembuatan kelompok node. Node yang sudah ada tidak dapat beralih ke mode ENI eksklusif. Jika label salah, hapus dan buat ulang kelompok node tersebut.

  2. Kueri sumber daya yang dapat dialokasikan pada sebuah node untuk memverifikasi bahwa mode ENI eksklusif telah diaktifkan:

    kubectl describe node <node-name> 

    Output yang diharapkan:

    Capacity:
      aliyun/eni:         7
      cpu:                16
      ephemeral-storage:  123460788Ki
      hugepages-1Gi:      0
      hugepages-2Mi:      0
      memory:             31555380Ki
      pods:               213
    Allocatable:
      aliyun/eni:         7
      cpu:                15890m
      ephemeral-storage:  113781462033
      hugepages-1Gi:      0
      hugepages-2Mi:      0
      memory:             28587828Ki
      pods:               213

    Bidang aliyun/eni mengonfirmasi bahwa mode ENI eksklusif telah diaktifkan.

3. Jadwalkan Pod ke kelompok node ENI eksklusif

Gunakan NodeAffinity atau resource kustom PodNetworking untuk menjadwalkan Pod ke kelompok node ENI eksklusif.

  • NodeAffinity: Tidak mendukung konfigurasi tingkat Pod seperti IP tetap, vSwitch independen, atau security group.

  • PodNetworking: Mendukung konfigurasi vSwitch, security group, dan IP tetap tingkat Pod. Lihat Configure a fixed IP address, an independent virtual switch, and a security group for a pod.

    Atur eniType ke ENI dalam bidang eniOptions untuk menjadwalkan Pod ke kelompok node ENI eksklusif. Contoh:

    apiVersion: network.alibabacloud.com/v1beta1
    kind: PodNetworking
    metadata:
      name: enionly
    spec:
      eniOptions:
        eniType: ENI
      allocationType:
        type: Elastic
      selector:
        podSelector:
          matchLabels:
            network: enionly

FAQ

Memverifikasi ENI eksklusif sebuah Pod

Terway secara otomatis membuat resource PodENI dengan nama dan namespace yang sama dengan Pod tersebut untuk mencatat konfigurasi jaringannya.

Kueri resource tersebut:

kubectl get podeni nginx-9d557694f-rcdzs -oyaml

Output yang diharapkan:

apiVersion: network.alibabacloud.com/v1beta1
kind: PodENI
metadata:
  annotations:
    k8s.aliyun.com/pod-uid: 05590939-fc51-47ab-a204-3dd187233bca
  creationTimestamp: "2024-09-13T08:09:27Z"
  finalizers:
  - pod-eni
  generation: 1
  labels:
    k8s.aliyun.com/node: cn-hangzhou.172.XX.XX.25
  name: example-9d557694f-rcdzs
  namespace: default
  resourceVersion: "1131123"
spec:
  allocations:
  - allocationType:
      type: Elastic
    eni:
      attachmentOptions: {}
      id: eni-xxxx
      mac: 00:16:3e:37:xx:xx
      securityGroupIDs:
      - sg-xxxx
      vSwitchID: vsw-xxxx
      zone: cn-hangzhou-j
    ipv4: 172.16.0.30
    ipv4CIDR: 172.16.0.0/24
    ipv6: 2408:4005:xxxx:xxxx:xxxx:xxxx:xxxx:9ad4
    ipv6CIDR: 2408:4005:39c:xxxx::/64
  zone: cn-hangzhou-j
status:
  eniInfos:
    eni-xxxx:
      id: eni-xxxx
      status: Bind
      type: Secondary
  instanceID: i-xxxx
  phase: Bind