Saat Anda membuat cluster Kubernetes air-gapped Google Distributed Cloud (GDC), jumlah node dan jenis node yang Anda tentukan akan membuat node pool pertama dari cluster tersebut. Anda dapat melakukan tugas node pool berikut untuk cluster yang ada saat persyaratan komputasinya berubah:
Menambahkan node pool baru: Tambahkan node pool baru saat permintaan untuk workload cluster Anda meningkat.
Melihat node pool: Lihat karakteristik dan status node pool Anda yang ada.
Mengubah ukuran node pool: Tingkatkan atau turunkan skala node pool Anda secara manual untuk beradaptasi dengan fluktuasi traffic workload.
Menghapus node pool: Hapus node pool jika permintaan untuk workload cluster Anda menurun, atau Anda ingin menghapus jenis mesin yang tidak lagi sesuai untuk operasi container Anda.
Untuk mengetahui informasi selengkapnya tentang node pool dalam cluster, lihat Tentang node.
Dokumen ini ditujukan untuk developer aplikasi dalam grup operator aplikasi dan administrator IT dalam grup administrator platform yang bertanggung jawab untuk mengelola cluster Kubernetes dalam organisasi mereka. Untuk mengetahui informasi selengkapnya, lihat Audiens untuk dokumentasi GDC dengan air gap.
Sebelum memulai
Untuk menyelesaikan tugas dalam dokumen ini, Anda harus meminta izin yang diperlukan dan menyiapkan lingkungan Anda.
Meminta peran IAM
Anda harus memiliki peran tertentu untuk mendapatkan izin yang diperlukan guna mengelola node pool dalam cluster Kubernetes. Peran yang Anda perlukan bergantung pada apakah Anda bekerja dalam cluster bersama yang memiliki cakupan organisasi atau cluster standar yang memiliki cakupan project. Untuk mengetahui informasi selengkapnya, lihat Konfigurasi cluster Kubernetes.
Peran cluster bersama
Untuk membuat, menghapus, mengedit, atau melihat node pool cluster bersama, hubungi Admin IAM Organisasi Anda untuk meminta peran Admin Cluster Pengguna (user-cluster-admin). Peran ini tidak terikat ke namespace.
Peran cluster standar
Hubungi Admin IAM Project Anda untuk meminta peran berikut:
Admin Cluster Standar (
standard-cluster-admin): membuat, menghapus, mengedit, atau melihat node pool cluster standar.Developer Cluster (
cluster-developer): membuat, menghapus, mengedit, atau melihat cluster standar. Peran ini diperlukan untuk melihat detail node pool cluster dari konsol GDC.
Peran ini terikat ke namespace project Anda.
Menyiapkan lingkungan Anda
Untuk menjalankan perintah terhadap a cluster Kubernetes menggunakan API, pastikan Anda memiliki resource berikut:
Temukan nama cluster Kubernetes, atau tanyakan kepada anggota grup administrator platform nama cluster tersebut.
Gunakan nama cluster Kubernetes untuk mengganti
KUBERNETES_CLUSTER_NAMEdalam petunjuk ini.Login dan buat file kubeconfig server API pengelolaan untuk cluster Kubernetes.
Gunakan jalur kubeconfig server API pengelolaan untuk mengganti
MANAGEMENT_API_SERVERdalam petunjuk ini.
Menambahkan node pool
Untuk menambahkan node pool ke cluster Kubernetes yang ada, selesaikan langkah-langkah berikut:
Konsol
Di pemilih project, pilih project atau organisasi Anda.
Cluster standar memiliki cakupan project dan cluster bersama memiliki cakupan organisasi. Pilih cakupan yang benar untuk melihat jenis cluster Kubernetes yang sesuai.
Di menu navigasi, pilih Kubernetes Engine > Clusters.
Klik cluster dari daftar cluster. Halaman Cluster details akan ditampilkan.
Pilih Node pools > Add node pool.
Tetapkan nama untuk node pool. Anda tidak dapat mengubah nama setelah membuat node pool.
Tentukan jumlah node pekerja yang akan dibuat di node pool.
Pilih class mesin yang paling sesuai dengan persyaratan workload Anda. Class mesin ditampilkan dalam setelan berikut:
- Jenis mesin
- vCPU
- Memori
Klik Save.
API
Buka spesifikasi resource kustom
ClusterdengankubectlCLI menggunakan editor interaktif:kubectl edit clusters.cluster.gdc.goog/KUBERNETES_CLUSTER_NAME \ -n KUBERNETES_CLUSTER_NAMESPACE \ --kubeconfig MANAGEMENT_API_SERVERGanti kode berikut:
KUBERNETES_CLUSTER_NAME: nama cluster.KUBERNETES_CLUSTER_NAMESPACE: namespace cluster. Untuk cluster bersama, gunakan namespaceplatform. Untuk cluster standar, gunakan namespace project cluster.MANAGEMENT_API_SERVER: jalur kubeconfig server API zona tempat cluster Kubernetes dihosting.
Tambahkan entri baru di bagian
nodePools:nodePools: # Several lines of code are omitted here. - machineTypeName: MACHINE_TYPE name: NODE_POOL_NAME nodeCount: NUMBER_OF_WORKER_NODES taints: TAINTS labels: LABELS acceleratorOptions: gpuPartitionScheme: GPU_PARTITION_SCHEMEGanti kode berikut:
MACHINE_TYPE: jenis mesin untuk node pekerja node pool. Lihat jenis mesin yang tersedia untuk mengetahui apa yang dapat dikonfigurasi.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 node pool ini. Kolom ini bersifat opsional.LABELS: label yang akan diterapkan ke node node pool ini. Kolom ini berisi daftar key-value pair. Kolom ini bersifat opsional.GPU_PARTITION_SCHEME: skema partisi GPU, jika Anda menjalankan workload GPU. Misalnya,mixed-2. GPU tidak dipartisi jika kolom ini tidak ditetapkan. Untuk mengetahui profil Multi-Instance GPU (MIG) yang tersedia, lihat Profil MIG yang didukung.
Simpan file dan keluar dari editor.
Melihat node pool
Untuk melihat node pool yang ada di cluster Kubernetes, selesaikan langkah-langkah berikut:
Konsol
Di pemilih project, pilih project atau organisasi Anda.
Cluster standar memiliki cakupan project dan cluster bersama memiliki cakupan organisasi. Pilih cakupan yang benar untuk melihat jenis cluster Kubernetes yang sesuai.
Di menu navigasi, pilih Kubernetes Engine > 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 node pool cluster dari halaman ini.
API
Lihat node pool cluster Kubernetes tertentu:
kubectl get clusters.cluster.gdc.goog/KUBERNETES_CLUSTER_NAME \ -n KUBERNETES_CLUSTER_NAMESPACE \ -o json --kubeconfig MANAGEMENT_API_SERVER | \ jq .status.workerNodePoolStatusesGanti kode berikut:
KUBERNETES_CLUSTER_NAME: nama cluster.KUBERNETES_CLUSTER_NAMESPACE: namespace cluster. Untuk cluster bersama, gunakan namespaceplatform. Untuk cluster standar, gunakan namespace project cluster.
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 } ]
Mengubah ukuran node pool
Anda dapat mengubah ukuran node pool secara manual di cluster Kubernetes dengan meningkatkan atau menurunkan skala pool. Anda tidak dapat memilih node tertentu untuk dihapus saat menurunkan skala node pool.
Untuk menskalakan node pool di cluster yang ada, selesaikan langkah-langkah berikut:
Konsol
Di pemilih project, pilih project atau organisasi Anda.
Cluster standar memiliki cakupan project dan cluster bersama memiliki cakupan organisasi. Pilih cakupan yang benar untuk melihat jenis cluster Kubernetes yang sesuai.
Di dasbor, pilih project tempat cluster yang ingin Anda edit berada.
Di menu navigasi, pilih Kubernetes Engine > Clusters.
Pilih nama cluster yang terkait dengan node pool. Halaman Cluster details akan ditampilkan.
Klik tab Node pools.
Pilih ikon edit Edit untuk node pool yang ingin Anda ubah ukurannya. Prompt Edit node pool akan ditampilkan.
Perbarui kolom Number of nodes untuk mencerminkan jumlah node baru yang diperlukan di node pool. Anda dapat menambah atau mengurangi jumlah node agar sesuai dengan persyaratan workload Anda.
Klik Save.
Kembali ke tab Node pools untuk cluster Anda dan pastikan node pool yang diubah ukurannya memiliki status
Readydan memiliki jumlah node yang benar. Mungkin perlu waktu beberapa menit agar node pool dapat diskalakan sesuai spesifikasi Anda.
API
Buka spesifikasi resource kustom
Clusterdengan kubectl CLI menggunakan editor interaktif:kubectl edit clusters.cluster.gdc.goog/KUBERNETES_CLUSTER_NAME \ -n KUBERNETES_CLUSTER_NAMESPACE \ --kubeconfig MANAGEMENT_API_SERVERGanti kode berikut:
KUBERNETES_CLUSTER_NAME: nama cluster yang menghosting node pool.KUBERNETES_CLUSTER_NAMESPACE: namespace cluster. Untuk cluster bersama, gunakan namespaceplatform. Untuk cluster standar, gunakan namespace project cluster.MANAGEMENT_API_SERVER: jalur kubeconfig server API zona tempat cluster Kubernetes dihosting.
Perbarui kolom
nodeCountuntuk node pool yang akan diubah ukurannya:nodePools: # Several lines of code are omitted here. - machineTypeName: n2-standard-2-gdc name: nodepool-1 nodeCount: NUMBER_OF_WORKER_NODESGanti
NUMBER_OF_WORKER_NODESdengan jumlah node pekerja yang diperbarui untuk disediakan di node pool.Simpan file dan keluar dari editor.
Verifikasi bahwa penskalaan node Anda telah selesai dengan memeriksa konfigurasi node pool:
kubectl get clusters.cluster.gdc.goog/KUBERNETES_CLUSTER_NAME \ -n KUBERNETES_CLUSTER_NAMESPACE -o json \ --kubeconfig MANAGEMENT_API_SERVER | jq .status.workerNodePoolStatusesPastikan jumlah
readyNodesmencerminkan jumlah node yang Anda tetapkan untuk node pool. Mungkin perlu waktu beberapa menit agar node pool dapat diskalakan sesuai spesifikasi Anda.
Menghapus node pool
Menghapus node pool akan menghapus node dan rute ke node tersebut. Node ini akan mengeluarkan dan menjadwalkan ulang 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 pemilih project, pilih project atau organisasi Anda.
Cluster standar memiliki cakupan project dan cluster bersama memiliki cakupan organisasi. Pilih cakupan yang benar untuk melihat jenis cluster Kubernetes yang sesuai.
Di menu navigasi, pilih Kubernetes Engine > Clusters.
Klik cluster yang menghosting node pool yang ingin Anda hapus.
Pilih Node pools.
Klik delete Delete di samping node pool yang akan dihapus.
API
Buka spesifikasi resource kustom
Clusterdengan kubectl CLI menggunakan editor interaktif:kubectl edit clusters.cluster.gdc.goog/KUBERNETES_CLUSTER_NAME \ -n KUBERNETES_CLUSTER_NAMESPACE \ --kubeconfig MANAGEMENT_API_SERVERGanti kode berikut:
KUBERNETES_CLUSTER_NAME: nama cluster.KUBERNETES_CLUSTER_NAMESPACE: namespace cluster. Untuk cluster bersama, gunakan namespaceplatform. Untuk cluster standar, gunakan namespace project cluster.MANAGEMENT_API_SERVER: jalur kubeconfig server API zona tempat cluster Kubernetes dihosting.
Hapus entri node pool dari bagian
nodePools. Misalnya, dalam cuplikan berikut, Anda harus menghapus kolommachineTypeName,name, dannodeCount:nodePools: # Several lines of code are omitted here. - machineTypeName: n2-standard-2-gdc name: nodepool-1 nodeCount: 3Pastikan untuk menghapus semua kolom untuk node pool yang Anda hapus.
Simpan file dan keluar dari editor.