Pada kluster ACK berbasis Terway, Terway menggunakan elastic network interfaces (ENIs) untuk menetapkan alamat IP ke kontainer. Setiap ENI yang dibuat oleh Terway dapat diasosiasikan dengan hingga lima security groups, sehingga memungkinkan penerapan kontrol akses berlapis pada pod tanpa perlu merestrukturisasi jaringan Anda.
Prasyarat
Sebelum memulai, pastikan bahwa:
Kluster Anda menggunakan plugin jaringan Terway versi 1.1.1 atau lebih baru. Untuk melakukan upgrade Terway, lihat Manage components.
Pertimbangan
Hanya ENI baru: Perubahan security group hanya berlaku untuk ENI yang dibuat setelah konfigurasi disimpan. ENI yang sudah ada tetap menggunakan security groups saat ini. Untuk menerapkan konfigurasi baru pada node yang sudah ada, hapus lalu tambahkan kembali setiap node. Lihat Remove a node dan Add existing ECS instances to an ACK cluster.
VPC yang sama: Semua security groups harus berada dalam VPC yang sama dengan kluster.
Tipe yang sama: Semua security groups harus bertipe sama (regular atau enterprise).
Batas lima grup: Anda dapat mengasosiasikan paling banyak lima security groups ke satu ENI. Terway menghitung baik
security_groupmaupunsecurity_groupsterhadap batas ini.
Asosiasikan multiple security groups dengan ENI
kubectl
Secara default, Terway hanya mengasosiasikan satu security group dengan setiap ENI yang dibuatnya. Untuk mengasosiasikan security groups tambahan, edit ConfigMap eni-config di namespace kube-system.
Buka ConfigMap untuk diedit:
kubectl edit cm eni-config -n kube-systemTambahkan bidang
security_groupssebagai array JSON di samping bidangsecurity_groupyang sudah ada:Terway menerapkan semua security groups yang tercantum di kedua bidang
security_groupdansecurity_groups. Total gabungan tidak boleh melebihi lima grup."security_group": "sg-bp19k3sj8dk3dcd7****", "security_groups": ["sg-bp1b39sjf3v49c33****","sg-bp1bpdfg35tg****"],Buat ulang pod Terway agar konfigurasi diterapkan:
kubectl delete pod -n kube-system -l app=terway-eniipTunggu hingga semua pod Terway kembali ke status
Runningsebelum melanjutkan:kubectl get pod -n kube-system -l app=terway-eniipOutput-nya akan tampak seperti berikut:
NAME READY STATUS RESTARTS AGE terway-eniip-xxxxx 1/1 Running 0 30s
Verifikasi konfigurasi
Masuk ke ECS console. Di panel navigasi sebelah kiri, pilih Instances & Images > Instances.
Pada halaman Instances, temukan dan klik instans ECS yang ingin Anda periksa.
Di halaman detail instans, klik tab ENIs. Pastikan bahwa ENI sekunder kini menampilkan security groups yang telah Anda tentukan di ConfigMap.
Jika ENI sekunder masih menampilkan hanya security group asli, kemungkinan pod Terway belum direstart. Jalankan kubectl get pod -n kube-system -l app=terway-eniipuntuk memastikan semua pod Terway berada dalam statusRunning, lalu periksa kembali tab ENIs.
Asosiasikan multiple security groups saat membuat kluster
Untuk menetapkan multiple security groups saat pembuatan kluster, berikan parameter SecurityGroupIDs dalam konfigurasi add-on terway-eniip saat memanggil API CreateCluster:
{
"name": "your_cluster_name",
"cluster_type": "ManagedKubernetes",
"addons": [
{
"name": "terway-eniip",
"config": "{\"IPVlan\":\"true\",\"NetworkPolicy\":\"false\",\"ENITrunking\":\"true\",\"SecurityGroupIDs\": \"[\\\"sg-foo\\\"]\" }"
}
],
....
}