Bagikan melalui


Perencanaan alamat IP untuk kluster Azure Kubernetes Service (AKS) Anda

Artikel ini menyediakan panduan tentang perencanaan alamat IP untuk kluster Azure Kubernetes Service (AKS).

Untuk panduan khusus tentang perencanaan alamat IP untuk opsi CNI individual, lihat bagian langkah berikutnya untuk tautan ke dokumentasi plugin.

Ukuran subnet

Subnet Azure VNet Anda harus cukup besar untuk mengakomodasi kluster Anda, yang tergantung pada apakah Anda menggunakan jaringan overlay atau jaringan datar.

Jaringan overlay

Dengan jaringan overlay, seperti Azure CNI Overlay, subnet Anda harus cukup besar untuk menetapkan IP ke simpul Anda. Pod ditetapkan IP dari rentang CIDR privat yang terpisah dan tidak memerlukan IP VNet. Subnet VNet yang Anda gunakan untuk kluster Anda bisa lebih kecil daripada dengan jaringan datar.

Penting untuk memastikan Anda mengalokasikan cukup ruang dalam rentang CIDR privat agar pod Anda memperhitungkan penskalaan. Saat merencanakan ukuran rentang alamat IP, Anda harus menghitung jumlah pod maksimum Anda. Setiap simpul dalam kluster Anda diberi subnet /24 (256 alamat IP) untuk pod. Anda harus merencanakan subnet jaringan overlay untuk mengakomodasi jumlah maksimum simpul yang ingin Anda jalankan.

Jaringan datar

Jaringan datar, seperti Subnet Pod Azure CNI, memerlukan subnet yang cukup besar untuk mengakomodasi simpul dan pod. Karena simpul dan pod menerima IP dari VNet, Anda perlu merencanakan jumlah maksimum simpul dan pod yang diharapkan untuk dijalankan. Subnet Pod Azure CNI menggunakan subnet untuk simpul dan subnet terpisah untuk pod Anda, jadi Anda perlu merencanakan keduanya.

Ukuran alamat IP

Meningkatkan dan menskalakan pertimbangan

Ketika perencanaan alamat IP untuk kluster AKS Anda, Anda harus mempertimbangkan jumlah alamat IP yang diperlukan untuk operasi peningkatan dan penskalaan. Jika Anda mengatur rentang alamat IP untuk hanya mendukung jumlah simpul tetap, Anda tidak akan dapat meningkatkan atau menskalakan kluster Anda.

Saat Anda meningkatkan kluster AKS, simpul baru disebarkan di kluster. Layanan dan beban kerja mulai berjalan pada simpul baru, dan simpul yang lebih lama dihapus dari kluster. Proses peningkatan bergulir ini memerlukan minimal satu blok alamat IP tambahan yang akan tersedia. Jumlah simpul Anda kemudian n + 1 di mana n adalah jumlah simpul di kluster Anda.

Saat Anda menskalakan kluster AKS, simpul baru disebarkan di kluster. Layanan dan beban kerja mulai berjalan pada simpul baru. Rentang alamat IP Anda perlu mempertimbangkan bagaimana Anda ingin meningkatkan jumlah simpul dan pod yang dapat didukung kluster Anda. Satu simpul tambahan untuk operasi peningkatan juga harus disertakan. Jumlah simpul Anda kemudian n + number-of-additional-scaled-nodes-you-anticipate + max surge.

Jika Anda menggunakan Subnet Pod Azure CNI dan mengharapkan simpul menjalankan jumlah maksimum pod dan secara teratur menghancurkan dan menyebarkan pod, Anda juga harus memperhitungkan alamat IP tambahan per simpul. Mungkin ada latensi beberapa detik yang diperlukan untuk menghapus layanan dan merilis alamat IP-nya agar layanan baru dapat disebarkan dan memperoleh alamat. Alamat IP tambahan memperhitungkan kemungkinan ini.

Rencana alamat IP untuk kluster AKS terdiri dari jaringan virtual, setidaknya satu subnet untuk simpul dan pod, dan rentang alamat layanan Kubernetes.

Sumber Daya Azure Rentang Alamat Batas dan Ukuran
Microsoft Azure Virtual Network Ukuran maksimum /8. 65.536 batas alamat IP yang dikonfigurasi. Lihat Alokasi Blok Statis Subnet Pod Azure CNI untuk pengecualian Ruang alamat yang tumpang tindih dalam jaringan Anda dapat menyebabkan masalah.
Subnet Harus cukup besar untuk mengakomodasi simpul, pod, dan semua sumber daya Kubernetes dan Azure di kluster Anda. Misalnya, jika Anda menyebarkan Azure Load Balancer internal, IP front-end-nya dialokasikan dari subnet kluster, bukan IP publik. Ukuran subnet juga harus memperhitungkan operasi peningkatan dan kebutuhan penskalaan di masa mendatang.

Gunakan persamaan berikut untuk menghitung ukuran subnet minimum, termasuk simpul tambahan untuk operasi peningkatan: (number of nodes + 1) + ((number of nodes + 1) * maximum pods per node that you configure)

Contoh untuk kluster 50 node: (51) + (51 * 30 (default)) = 1,581 (/21 atau lebih besar)

Contoh untuk kluster 50-node, bersiap untuk meningkatkan 10 node tambahan: (61) + (61 * 30 (default)) = 1,891 (/21 atau lebih besar)

Jika Anda tidak menentukan jumlah maksimum pod per simpul saat Anda membuat kluster, jumlah maksimum pod per simpul diatur ke 30. Jumlah minimum alamat IP yang diperlukan didasarkan pada nilai tersebut. Jika Anda menghitung persyaratan alamat IP minimum pada nilai maksimum yang berbeda, lihat Pod maksimum per simpul untuk mengatur nilai ini saat Anda menyebarkan kluster Anda.

Rentang Alamat Layanan Kubernetes Elemen jaringan apa pun pada atau yang terhubung ke jaringan virtual ini tidak boleh menggunakan rentang ini. ALAMAT layanan CIDR harus lebih kecil dari /12. Anda dapat menggunakan kembali rentang ini di berbagai kluster AKS.
Alamat IP Layanan DNS Kubernetes Alamat IP dalam rentang alamat layanan Kubernetes yang digunakan oleh penemuan layanan kluster. Jangan gunakan alamat IP pertama di rentang alamat Anda. Alamat pertama dalam rentang subnet digunakan untuk alamat kubernetes.default.svc.cluster.local.

Pod maksimum per simpul

Jumlah maksimum pod per simpul dalam kluster AKS adalah 250. Jumlah maksimum default pod per simpul bervariasi antara jaringan kubenet dan Azure CNI, dan metode penyebaran kluster.

CNI Pod maks default Dapat dikonfigurasi saat penyebaran
Overlay Azure CNI 250 Ya (hingga 250)
Subnet Pod Azure CNI 110 Ya (hingga 250)
Azure CNI (Warisan) 30 Ya (hingga 250)
Kubenet 110 Ya (hingga 250)

Mengonfigurasi pod maksimum per simpul untuk kluster Anda

Anda dapat mengonfigurasi jumlah maksimum pod per simpul baik pada waktu penyebaran kluster atau saat Anda menambahkan kumpulan simpul baru. Anda dapat mengatur pod maksimum per nilai node hingga mencapai 250.

Nilai minimum untuk pod maksimum per simpul diberlakukan untuk menjamin ruang bagi pod sistem yang penting bagi kesehatan kluster. Nilai minimum yang dapat ditetapkan untuk pod maksimum per simpul adalah 10 jika dan hanya jika konfigurasi setiap kumpulan simpul memiliki ruang untuk minimal 30 pod. Misalnya, mengatur pod maksimum per simpul ke minimum 10 mengharuskan setiap kumpulan simpul individu untuk memiliki minimal tiga simpul. Persyaratan ini berlaku untuk setiap kumpulan simpul baru yang dibuat juga, jadi jika 10 didefinisikan sebagai pod maksimum per simpul setiap kumpulan simpul berikutnya yang ditambahkan harus memiliki setidaknya tiga simpul.

Jaringan Minimum Maksimum
Azure CNI 10 250
Kubenet 10 250

Catatan

Nilai minimum dalam tabel sebelumnya diberlakukan secara ketat oleh layanan AKS. Anda tidak dapat mengatur nilai untuk maxPods yang lebih rendah dari minimum yang ditampilkan, karena hal ini dapat mencegah kluster dimulai.

Kluster baru

Anda dapat menentukan pod maksimum per simpul saat membuat kluster baru menggunakan salah satu metode berikut:

  • Azure CLI: Tentukan --max-pods argumen saat Anda menyebarkan kluster dengan az aks create perintah .
  • Templat Azure Resource Manager: Tentukan maxPods properti di objek [ManagedClusterAgentPoolProfile] saat Anda menyebarkan kluster dengan templat Azure Resource Manager.
  • Portal Microsoft Azure: Ubah bidang Max pods per node di pengaturan kumpulan node saat membuat kluster atau menambahkan kumpulan node baru.

Kluster yang ada

Anda dapat menentukan pod maksimum per simpul saat membuat kumpulan simpul baru. Jika Anda perlu meningkatkan pengaturan maxPods pada kluster yang ada, tambahkan kumpulan simpul baru dengan jumlah maxPods baru yang diinginkan. Setelah memigrasikan pod ke kumpulan baru, hapus kumpulan simpul yang lebih lama.

Langkah berikutnya