全部产品
Search
文档中心

Container Service for Kubernetes:Konfigurasikan QoS untuk Pod

更新时间:Dec 13, 2025

Layanan online sensitif terhadap kualitas jaringan dan memerlukan latensi rendah, sedangkan layanan offline mengonsumsi bandwidth jaringan dalam jumlah besar. Jika kedua jenis layanan ini dijalankan bersama tanpa kontrol, mereka dapat saling berebut sumber daya jaringan, yang berpotensi menyebabkan latensi tinggi atau bahkan ketidaktersediaan layanan. Anda dapat menyesuaikan bandwidth inbound dan outbound serta prioritas paket data untuk pod guna mencapai kontrol yang lebih granular atas sumber daya jaringan, sehingga mengurangi dampak persaingan dalam penggunaan bandwidth.

Batas bandwidth Pod

Anda dapat menggunakan anotasi pod Kubernetes standar untuk membatasi bandwidth inbound dan outbound suatu pod:

Anotasi

Catatan

kubernetes.io/ingress-bandwidth: 10M

Batas bandwidth inbound untuk pod. Contoh nilainya adalah 10 Mbps.

kubernetes.io/egress-bandwidth: 10M

Batas bandwidth outbound untuk pod. Contoh nilainya adalah 10 Mbps.

Penting
  • Anotasi kubernetes.io/ingress-bandwidth tidak didukung saat Terway dikonfigurasi dalam mode shared Elastic Network Interface (ENI) dan mode akselerasi jaringan IPvlan+eBPF diaktifkan.

  • Anotasi kubernetes.io/ingress-bandwidth tidak didukung saat Terway dikonfigurasi dalam mode ENI eksklusif.

  • Pada mode akselerasi jaringan DataPathV2, Terway versi v1.13.0 dan yang lebih baru mendukung batas bandwidth Ingress. Batas ini hanya berlaku untuk lalu lintas yang masuk atau keluar dari suatu node, bukan untuk lalu lintas di dalam node yang sama.

  • Untuk kluster yang dibuat dengan versi Terway sebelum v1.3.0, ubah konfigurasi Terway untuk mengaktifkan fitur ini. Untuk informasi selengkapnya, lihat petunjuk di bawah.

Untuk kluster yang dibuat sebelum Terway v1.3.0

Jika kluster Anda dibuat dengan versi Terway sebelum v1.3.0, ubah konfigurasi Terway untuk mengaktifkan anotasi ini.

Modifikasi Konfigurasi Terway

  1. Jalankan perintah berikut untuk mengedit ConfigMap Terway.

    kubectl edit cm -n kube-system eni-config
  2. Dalam data.10-terway.conf, tambahkan konfigurasi capabilities.

    apiVersion: v1
    data:
      10-terway.conf: |
        {
          "cniVersion": "0.3.1",
          "name": "terway",
          "capabilities": {"bandwidth": true},
          "type": "terway"
        }
  3. Simpan konfigurasi dan keluar. Kemudian, jalankan perintah berikut untuk me-restart pod Terway dan menerapkan perubahan.

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

Kebijakan kontrol prioritas paket

Secara default, antrian network interface card (NIC) mengirimkan paket berdasarkan prinsip first-in, first-out (FIFO). Terway memungkinkan Anda mengonfigurasi kebijakan kontrol prioritas paket untuk pod, sehingga paket dari layanan berprioritas tinggi dikirim dan diterima terlebih dahulu selama puncak lalu lintas, yang membantu mengurangi latensi.

Fitur ini dinonaktifkan secara default. Anda dapat mengaktifkannya dengan mengubah konfigurasi Terway.

Penting
  • Fitur ini tidak didukung untuk kluster yang telah mengaktifkan mode akselerasi jaringan DataPathV2.

  • Fitur ini tidak didukung untuk node dalam mode ENI eksklusif.

  • Setelah Anda mengaktifkan kontrol prioritas, antrian NIC pada ENI akan diganti menjadi mq+prio.

Aktifkan Kontrol Prioritas Paket

  1. Jalankan perintah berikut untuk mengedit ConfigMap Terway.

    kubectl edit cm -n kube-system eni-config
  2. Dalam data.10-terway.conf, tambahkan konfigurasi enable_network_priority.

    apiVersion: v1
    data:
      10-terway.conf: |
        {
          "cniVersion": "0.3.1",
          "name": "terway",
          "enable_network_priority": true,
          "type": "terway"
        }
  3. Simpan konfigurasi dan keluar. Kemudian, jalankan perintah berikut untuk me-restart pod Terway dan menerapkan perubahan.

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

Gunakan anotasi pod berikut untuk menentukan prioritas paket pod.

Deskripsi

Catatan

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

Prioritas tertinggi, untuk layanan yang sensitif terhadap latensi

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

Prioritas sedang, cocok untuk layanan umum.

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

Prioritas terendah, untuk layanan yang memerlukan bandwidth tinggi tetapi tidak sensitif terhadap latensi.