Aplikasi Kf dapat di-deploy pada node khusus di cluster. Fitur ini diperlukan jika ada situasi di mana Anda ingin kontrol lebih besar pada node tempat pod Aplikasi ditempatkan. Misalnya, jika Anda berbagi cluster yang sama untuk Aplikasi yang berbeda tetapi menginginkan node khusus untuk Aplikasi tertentu, jika Anda menginginkan node khusus untuk organisasi tertentu(Kf Space), menargetkan sistem operasi tertentu seperti Windows, atau untuk menempatkan pod dari dua layanan berbeda yang sering berkomunikasi.
Untuk mengaktifkan isolasi komputasi, Kf menggunakan nodeSelector Kubernetes. Untuk menggunakan fitur ini, pertama-tama tambahkan label pada node atau kumpulan node tempat Anda ingin menempatkan pod Aplikasi, lalu tambahkan label kualifikasi yang sama pada Kf Space. Semua Aplikasi yang diinstal di Ruang ini kemudian akan mendarat di node dengan label yang cocok.
Mengonfigurasi nodeSelector di cluster Kf
Secara default, isolasi komputasi dinonaktifkan. Gunakan prosedur berikut untuk mengonfigurasi label dan nodeSelector.
Tambahkan label (
distype=ssd
) pada node tempat Anda ingin menempatkan pod aplikasi.kubectl label nodes nodeid disktype=ssd
Tambahkan label yang sama di Kf Space. Semua Aplikasi yang di-deploy di Ruang ini akan mendarat di node yang memenuhi syarat.
kf configure-space set-nodeselector space-name disktype ssd
Anda dapat menambahkan beberapa label dengan menjalankan kembali perintah yang sama.
Periksa apakah label dikonfigurasi.
kf configure-space get-nodeselector space-name
Hapus label dari ruang.
kf configure-space unset-nodeselector space-name disktype
Mengganti nodeSelector untuk kf Stacks
Deployment Aplikasi Kf dapat dianalisis lebih lanjut berdasarkan Stack (buildpack) yang digunakan untuk mem-build dan memaketkan Aplikasi. Misalnya, jika Anda ingin aplikasi yang dibangun dengan spaceStacksV2
mendarat di node dengan kernel Linux 4.4.1. Nilai nodeSelector
pada Stack akan mengganti nilai yang dikonfigurasi di Ruang.
Untuk mengonfigurasi nodeSelector
di Stack.
Edit
config-defaults
cluster Kf Anda dan tambahkan label.$ kubectl -n kf edit configmaps config-defaults
Tambahkan
nodeSelector
ke definisi stack...... ..... spaceStacksV2: | - name: cflinuxfs3 image: cloudfoundry/cflinuxfs3 nodeSelector: OS_KERNEL: LINUX_4.4.1 ..... .....