Node pool adalah sekelompok node dalam cluster Kubernetes yang semuanya memiliki konfigurasi yang sama. Node pool menggunakan spesifikasi NodePool
. Setiap node dalam kumpulan memiliki label node Kubernetes, yang memiliki nama node pool sebagai nilainya.
Secara default, semua node pool baru menjalankan versi Kubernetes yang sama dengan bidang
kontrol.
Saat Anda membuat cluster pengguna, jumlah node dan jenis node yang Anda tentukan akan membuat node pool pertama dari cluster tersebut. Anda dapat menambahkan node pool tambahan dengan berbagai ukuran dan jenis ke cluster Anda. Semua node dalam node pool tertentu identik satu sama lain.
Kumpulan node kustom berguna saat menjadwalkan pod yang memerlukan lebih banyak resource daripada yang lain, seperti lebih banyak memori atau ruang disk lokal. Anda dapat menggunakan taint node jika memerlukan kontrol lebih besar terkait penjadwalan pod.
Anda dapat membuat dan menghapus node pool satu per satu tanpa memengaruhi seluruh cluster. Anda tidak dapat mengonfigurasi satu node di node pool. Setiap perubahan konfigurasi memengaruhi semua node di node pool.
Anda dapat mengubah ukuran node pool dalam cluster dengan menaikkan atau menurunkan skala pool. Pengecilan skala node pool adalah proses otomatis saat Anda mengurangi ukuran pool dan sistem GDC secara otomatis menguras dan mengeluarkan node arbitrer. Anda tidak dapat memilih node tertentu untuk dihapus saat mengecilkan skala kumpulan node.
Sebelum memulai
Untuk mengelola kumpulan node di cluster pengguna, Anda harus memiliki peran Admin Cluster Pengguna (peran user-cluster-admin
).
Menambahkan node pool
Saat membuat cluster pengguna dari konsol GDC, Anda dapat menyesuaikan node pool default dan membuat node pool tambahan sebelum pembuatan cluster diinisialisasi. Jika Anda harus menambahkan node pool ke cluster pengguna yang sudah ada, selesaikan langkah-langkah berikut:
Konsol
- Di menu navigasi, pilih Clusters.
- Klik cluster dari daftar cluster. Halaman Cluster details akan ditampilkan.
- Pilih Node pool > Tambahkan node pool.
- Tetapkan nama untuk kumpulan node. Anda tidak dapat mengubah nama setelah membuat node pool.
- Tentukan jumlah node pekerja yang akan dibuat di node pool.
- Pilih kelas mesin yang paling sesuai dengan persyaratan workload Anda. Class
komputer ditampilkan di setelan berikut:
- Jenis mesin
- vCPU
- Memori
- Opsional: Tambahkan label key-value pair Kubernetes untuk mengatur resource node pool Anda.
- Klik Simpan.
API
Buka spesifikasi resource kustom
Cluster
dengankubectl
CLI menggunakan editor interaktif:kubectl edit clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG
Ganti kode berikut:
USER_CLUSTER_NAME
: Nama cluster pengguna.ADMIN_CLUSTER_KUBECONFIG
: Jalur file kubeconfig cluster admin.
Tambahkan entri baru di bagian
nodePools
:nodePools: ... - machineTypeName: MACHINE_TYPE name: NODE_POOL_NAME nodeCount: NUMBER_OF_WORKER_NODES taints: TAINTS labels: LABELS
Ganti kode berikut:
MACHINE_TYPE
: Jenis mesin untuk node pekerja node pool. Lihat jenis mesin yang tersedia untuk mengetahui konfigurasi yang tersedia.NODE_POOL_NAME
: Nama node pool.NUMBER_OF_WORKER_NODES
: Jumlah node pekerja yang akan disediakan di node pool.TAINTS
: Taint yang akan diterapkan ke node di node pool ini. Kolom ini bersifat opsional.LABELS
: Label yang akan diterapkan ke node node pool ini. Objek ini berisi daftar key-value pair. Kolom ini bersifat opsional.
Simpan file dan keluar dari editor.
Melihat node pool
Untuk melihat node pool yang ada di cluster pengguna, selesaikan langkah-langkah berikut:
Konsol
- Di menu navigasi, pilih Clusters.
- Klik cluster dari daftar cluster. Halaman Cluster details akan ditampilkan.
- Pilih Node pools.
Daftar node pool yang berjalan di cluster akan ditampilkan. Anda dapat mengelola kumpulan node cluster dari halaman ini.
API
Melihat node pool cluster pengguna tertentu:
kubectl get clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \ -o json --kubeconfig ADMIN_CLUSTER_KUBECONFIG | \ jq .status.workerNodePoolStatuses
Outputnya mirip dengan hal berikut ini:
[ { "conditions": [ { "lastTransitionTime": "2023-08-31T22:16:17Z", "message": "", "observedGeneration": 2, "reason": "NodepoolReady", "status": "True", "type": "Ready" }, { "lastTransitionTime": "2023-08-31T22:16:17Z", "message": "", "observedGeneration": 2, "reason": "ReconciliationCompleted", "status": "False", "type": "Reconciling" } ], "name": "worker-node-pool", "readyNodes": 3, "readyTimestamp": "2023-08-31T18:59:46Z", "reconcilingNodes": 0, "stalledNodes": 0, "unknownNodes": 0 } ]
Menghapus node pool
Menghapus node pool akan menghapus node dan rute ke node tersebut. Node ini mengeluarkan dan menjadwalkan ulang semua pod yang berjalan di node tersebut. Jika pod memiliki pemilih node tertentu, pod mungkin tetap berada dalam kondisi yang tidak dapat dijadwalkan jika tidak ada node lain dalam cluster yang memenuhi kriteria.
Pastikan Anda memiliki setidaknya tiga node pekerja sebelum menghapus node pool untuk memastikan cluster Anda memiliki ruang komputasi yang cukup untuk berjalan secara efektif.
Untuk menghapus node pool, selesaikan langkah-langkah berikut:
Konsol
Di menu navigasi, pilih Clusters.
Klik cluster yang menghosting kumpulan node yang ingin Anda hapus.
Pilih Node pools.
Klik delete Hapus di samping node pool yang akan dihapus.
API
Buka spesifikasi resource kustom
Cluster
dengankubectl
CLI menggunakan editor interaktif:kubectl edit clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG
Ganti kode berikut:
USER_CLUSTER_NAME
: Nama cluster pengguna.ADMIN_CLUSTER_KUBECONFIG
: Jalur file kubeconfig cluster admin.
Hapus entri kumpulan node dari bagian
nodePools
. Misalnya, dalam cuplikan berikut, Anda harus menghapus kolommachineTypeName
,name
, dannodeCount
:nodePools: ... - machineTypeName: n2-standard-2-gdc name: nodepool-1 nodeCount: 3
Pastikan untuk menghapus semua kolom untuk node pool yang Anda hapus.
Simpan file dan keluar dari editor.
Jenis mesin node pekerja
Saat membuat cluster pengguna di perangkat air gap Google Distributed Cloud (GDC), Anda membuat pool node yang bertanggung jawab untuk menjalankan beban kerja container di cluster. Anda menyediakan node berdasarkan persyaratan workload container, dan dapat memperbaruinya seiring berkembangnya persyaratan Anda.
GDC menyediakan jenis mesin yang telah ditentukan untuk node worker yang dapat dipilih saat Anda menambahkan node pool.
Jenis mesin yang tersedia
GDC menentukan jenis mesin dengan beberapa parameter
untuk node cluster pengguna, yang mencakup CPU, memori, dan GPU.
GDC memiliki berbagai jenis mesin untuk berbagai tujuan.
Misalnya, cluster pengguna menggunakan n2-standard-2-gdc
untuk beban kerja container tujuan umum. Anda juga dapat menemukan jenis mesin untuk tujuan yang dioptimalkan untuk memori, seperti n2-highcpu-8-gdc
. Jika berencana menjalankan container deep learning, Anda harus
menyediakan mesin GPU, seperti a2-highgpu-1g-gdc
.
Berikut adalah daftar semua jenis mesin bawaan GDC yang tersedia untuk worker node cluster pengguna:
Nama | vCPU | Memori | Jumlah GPU |
---|---|---|---|
n2-standard-2-gdc | 2 | 8G | T/A |
n2-standard-4-gdc | 4 | 16G | T/A |
n2-highmem-4-gdc | 4 | 32G | T/A |
n2-highcpu-8-gdc | 8 | 8G | T/A |
n2-standard-8-gdc | 8 | 32G | T/A |
n2-highmem-8-gdc | 8 | 64G | T/A |
a2-highgpu-1g-gdc | 12 | 85G | 1 |
a2-ultragpu-1g-gdc | 12 | 170G | 1 |