All Products
Search
Document Center

Container Service for Kubernetes:Optimalkan konfigurasi conntrack di Terway

Last Updated:Jun 16, 2026

Sesuaikan ukuran tabel conntrack eBPF dan pengaturan timeout untuk menangani beban kerja dengan koneksi tinggi di Terway.

Periksa ukuran tabel conntrack

Ukuran tabel conntrack eBPF bergantung pada kapasitas memori node.

Untuk melihat ukuran tabel conntrack pada suatu node:

  1. Ambil nama pod terway-eniip:

# kubectl describe node <nodename>  | grep terway-eniip
  kube-system                 terway-eniip-xxxx         350m (8%)     1100m (28%)  200Mi (3%)       256Mi (3%)     16h
  1. Kueri ukuran tabel conntrack:

# kubectl exec -it -nkube-system terway-eniip-xxxx -c policy -- cilium status --verbose
...
BPF Maps:   dynamic sizing: on (ratio: 0.002500)
  Name                          Size
  Auth                          524288
  Non-TCP connection tracking   65536
  TCP connection tracking       131072
  Endpoint policy               65535
...

Parameter:

  • dynamic sizing: on: peta eBPF menggunakan batas atas dinamis. Jika diatur ke off, konfigurasikan bpf-map-dynamic-size-ratio untuk penyesuaian dinamis, atau tetapkan nilai bpf-ct-global-any-max, bpf-ct-global-tcp-max, dan bpf-nat-global-max untuk ukuran tetap.

  • ratio: 0.002500: ukuran maksimum peta eBPF sebagai proporsi dari total memori sistem.

  • Non-TCP connection tracking: jumlah maksimum entri dalam tabel conntrack non-TCP.

  • TCP connection tracking: jumlah maksimum entri dalam tabel conntrack TCP.

Periksa jumlah entri conntrack

Secara default, setiap node mengekspos metrik Prometheus pada port 9962.

Metric

Label dan nilai

cilium_datapath_conntrack_gc_entries

family: tipe alamat IP. Nilai yang valid: ipv4 dan ipv6.

protocol: tipe protokol. Nilai yang valid: non-TCP dan TCP.

status: status pembersihan. Gabungkan semua status untuk mendapatkan jumlah entri conntrack sebelum pembersihan. Nilai yang valid: alived dan deleted.

Ubah port pemantauan default

Parameter

Deskripsi

prometheus-serve-addr

Port pendengar Prometheus. Atur ke \"\" untuk menonaktifkan.

  • Terway ≥ 1.14.0: dinonaktifkan secara default

  • Terway < 1.14.0: diatur ke :9962 secara default.

Untuk mengubah parameter ini, lihat cilium_args di Sesuaikan Parameter Konfigurasi Terway.

Sesuaikan ukuran conntrack eBPF

Conntrack eBPF dan conntrack Linux secara fungsional identik. Pengaturan default sesuai untuk sebagian besar skenario.

Ubah pengaturan dalam skenario berikut:

  • Terdapat banyak koneksi berdurasi panjang.

  • Pod diekspos ke Internet, dan banyak koneksi half-open mungkin ada.

Penting

Menyesuaikan ukuran tabel conntrack berisiko tinggi. Evaluasi dampaknya sebelum menerapkan perubahan di lingkungan produksi. Setelah penyesuaian, verifikasi hasilnya seperti dijelaskan dalam Periksa ukuran tabel conntrack.

Parameter

Deskripsi

bpf-map-dynamic-size-ratio

Ukuran maksimum peta eBPF sebagai proporsi dari total memori sistem.

off: menonaktifkan penskalaan otomatis (ukuran peta tetap)

0.0025: mengatur batas peta menjadi 0.0025 dari total memori sistem

bpf-ct-timeout-regular-any

Timeout untuk entri conntrack non-TCP.

Nilai default: 1m0s.

bpf-ct-timeout-regular-tcp

Timeout untuk entri conntrack TCP yang sudah terbentuk.

Nilai default: 6h0m0s.

bpf-ct-timeout-regular-tcp-fin

Timeout untuk entri conntrack TCP yang sedang ditutup.

Nilai default: 10s.

bpf-ct-timeout-regular-tcp-syn

Timeout untuk entri conntrack TCP yang sedang dibentuk.

Nilai default: 1m0s.

bpf-ct-timeout-service-any

Timeout untuk entri conntrack layanan non-TCP.

Nilai default: 1m0s.

bpf-ct-timeout-service-tcp

Timeout untuk entri conntrack layanan TCP yang sudah terbentuk.

Nilai default: 6h0m0s.

bpf-ct-timeout-service-tcp-grace

Timeout untuk shutdown layanan TCP yang graceful.

Nilai default: 1m0s.

conntrack-gc-interval

Interval pembersihan tabel conntrack.

Nilai default: 5m0s.

Catatan

Interval di mana cilium-agent membersihkan tabel conntrack. Jangan melebihi nilai default.

Interval yang lebih pendek meningkatkan penggunaan CPU cilium-agent tetapi mencegah tabel conntrack penuh. Sesuaikan batas CPU kontainer Terway di Konsol ACK.

bpf-ct-global-any-max

Ukuran maksimum tabel conntrack layanan non-TCP.

Catatan

Jika penskalaan dinamis diaktifkan, gunakan bpf-map-dynamic-size-ratio untuk menyesuaikan ukuran tabel.

bpf-ct-global-tcp-max

Ukuran maksimum tabel conntrack layanan TCP.

Catatan

Jika penskalaan dinamis diaktifkan, gunakan bpf-map-dynamic-size-ratio untuk menyesuaikan ukuran tabel.

bpf-nat-global-max

Ukuran maksimum tabel NAT BPF.

Catatan

Harus lebih kecil dari jumlah bpf-ct-global-any-max dan bpf-ct-global-tcp-max.

Default = (bpf-ct-global-any-max + bpf-ct-global-tcp-max) × 2/3

Jika penskalaan dinamis diaktifkan, gunakan bpf-map-dynamic-size-ratio untuk menyesuaikan ukuran tabel.

Untuk mengubah parameter ini, lihat cilium_args di Sesuaikan Parameter Konfigurasi Terway.

Ukuran peta dengan bpf-map-dynamic-size-ratio diatur ke 0,0025:

Memori node

Ukuran peta CT (TCP)

Ukuran map CT (apa pun)

Ukuran peta NAT

7,5 GiB

131.072

65.536

131.072

16 GiB

151.765

75.882

151.765

30 GiB

284.560

142.280

284.560

240 GiB

2.276.484

1.138.242

2.276.484

Contoh

Atur bpf-map-dynamic-size-ratio ke 0,003 dan bpf-ct-timeout-regular-tcp ke 1h:

10-terway.conf: |
{
  "cniVersion": "0.4.0",
  "name": "terway",
  "capabilities": {"bandwidth": true},
  "eniip_virtual_type": "IPvlan",
  "cilium_args": "--bpf-map-dynamic-size-ratio=0.003 --bpf-ct-timeout-regular-tcp=1h",
  "type": "terway"
}