Saat cluster Google Distributed Cloud sedang dalam proses diinstal, biner dan systemd diinstal pada node yang menghosting cluster tersebut, dan layanan mulai memproses porta pada {i>node<i}.
Akan tetapi, jika instalasi cluster gagal, semua biner dan layanan ini perlu akan dihapus. Dengan kata lain, node harus direset atau dihapus total untuk mempersiapkan mereka untuk mencoba lagi menginstal cluster. Jika node tidak direset di dengan cara ini, upaya berikutnya untuk menginstal cluster gagal.
Halaman ini menjelaskan cara membersihkan operasi node tertentu dan cara menghapus cluster.
Halaman ini ditujukan untuk Admin, arsitek, serta Operator yang mengelola infrastruktur teknologi yang mendasarinya. Untuk mempelajari lebih lanjut tentang peran dan contoh tugas yang kami rujuk dalam konten Google Cloud, lihat Peran dan tugas pengguna GKE Enterprise yang umum.
Memilih metode penghapusan
Metode yang Anda gunakan untuk menghapus cluster bergantung pada:
- Jenis cluster.
- Jika Anda hanya ingin membersihkan node tertentu dan tidak menghapus seluruh cluster.
- Cara cluster dibuat.
Google Distributed Cloud menyediakan metode penghapusan berikut:
Konsol Google Cloud atau Google Cloud CLI:
Gunakan konsol atau gcloud CLI untuk menghapus pengguna yang dikelola dengan GKE On-Prem API. Cluster pengguna dikelola oleh GKE On-Prem API jika salah satu kondisi berikut terpenuhi:
Cluster ini dibuat di Konsol Google Cloud atau menggunakan gcloud CLI, yang secara otomatis mengonfigurasi GKE On-Prem API untuk mengelola cluster.
Cluster tersebut dibuat menggunakan
bmctl
, tetapi mengonfigurasinya agar dikelola oleh GKE On-Prem API.
bmctl
:- Gunakan
bmctl reset nodes
untuk mereset node tertentu. Gunakan
bmctl reset
untuk menghapus jenis cluster berikut:- Cluster admin, hybrid, dan mandiri (disebut sebagai cluster yang dikelola sendiri). Termasuk cluster admin yang dikelola oleh GKE On-Prem API.
- Cluster pengguna yang tidak dikelola oleh GKE On-Prem API.
Jika Anda menggunakan
bmctl
untuk mereset node atau menghapus cluster, perintah tersebut mengharapkan file konfigurasi cluster berada di direktori kerja saat ini. Secara default, jalurnya terlihat seperti berikut:bmctl-workspace/CLUSTER_NAME/CLUSTER_NAME.yaml
Jika Anda menggunakan flag
--workspace-dir
untuk menentukan direktori yang berbeda selama pembuatan cluster, Anda harus menggunakan flag tersebut untuk menentukan direktori kerja selama reset cluster.- Gunakan
kubectl
:- Gunakan
kubectl delete cluster
untuk hanya menghapus cluster pengguna yang tidak dikelola oleh cluster GKE On-Prem API. Jangan jalankan perintah di jenis cluster tertentu. - Perlu diketahui bahwa jika menggunakan
kubectl delete cluster
, Anda juga harus menghapus tempat cluster berada setelah Anda menghapus cluster tersebut.
- Gunakan
Setelah menghapus cluster, Anda dapat menginstal ulang cluster tersebut setelah melakukan hal yang diperlukan perubahan konfigurasi.
Hapus cluster yang dikelola sendiri
Untuk menghapus cluster admin, hybrid, atau mandiri, jalankan perintah berikut:
bmctl reset --cluster CLUSTER_NAME
Dalam perintah, ganti CLUSTER_NAME
dengan nama
cluster yang ingin Anda reset.
Output dari perintah bmctl cluster reset
terlihat mirip dengan contoh ini:
Please check the logs at bmctl-workspace/example-cluster-1/log/reset-20221025-184705/reset.log [2022-10-25 18:47:11+0000] Creating bootstrap cluster... OK [2022-10-25 18:48:18+0000] Loading images... OK [2022-10-25 18:48:18+0000] Waiting for reset jobs to finish... [2022-10-25 18:48:28+0000] Operation reset in progress: 1 Completed: 0 Failed: 0 ... [2022-10-25 18:50:08+0000] Operation reset in progress: 0 Completed: 1 Failed: 0 [2022-10-25 18:50:08+0000] Flushing logs... OK [2022-10-25 18:50:08+0000] Deleting GKE Hub member example-cluster-1 in project example-project-12345... [2022-10-25 18:50:11+0000] Successfully deleted GKE Hub member example-cluster-1 in project example-project-12345 [2022-10-25 18:50:11+0000] Deleting bootstrap cluster... OK
Selain menghapus cluster, perintah tersebut menghapus keanggotaan dari fleet.
Untuk cluster admin yang dikelola oleh GKE On-Prem API, Anda juga perlu menghapus resource API di Google Cloud. Jika tidak, cluster akan ditampilkan di Cluster GKE di Konsol Google Cloud. Gunakan perintah berikut untuk menghapus Resource GKE On-Prem API untuk cluster admin:
gcloud container bare-metal admin-clusters unenroll CLUSTER_NAME \ --project=FLEET_HOST_PROJECT_ID \ --location=REGION \ --ignore-errors
Ganti kode berikut:
FLEET_HOST_PROJECT_ID
: Project ID fleet dengan cluster admin yang menjadi anggotanya.REGION
: Region Google Cloud tempat GKE On-Prem API menyimpan metadata cluster.
Tanda --ignore-errors
memastikan bahwa pembatalan pendaftaran admin bare metal
resource cluster akan berhasil meskipun terjadi error selama pembatalan pendaftaran.
Setelah penghapusan cluster selesai, Anda dapat membuat cluster baru. Untuk mengetahui detailnya, lihat Ringkasan pembuatan cluster.
Hapus cluster pengguna
Jika cluster pengguna dikelola oleh GKE On-Prem API, hapus cluster menggunakan
konsol atau gcloud CLI. Jika tidak, gunakan bmctl
atau kubectl
untuk menghapus cluster.
bmctl
Anda dapat menggunakan bmctl
untuk menghapus cluster pengguna yang dibuat dengan
bmctl
atau kubectl
, dan yang tidak terdaftar di GKE On-Prem API.
Jalankan perintah berikut untuk menghapus cluster pengguna dengan bmctl
:
bmctl reset --cluster USER_CLUSTER_NAME --admin-kubeconfig ADMIN_KUBECONFIG_PATH
Pada perintah, ganti entri berikut dengan informasi yang khusus untuk lingkungan Anda:
USER_CLUSTER_NAME
: nama cluster pengguna tempat Anda menghapus.ADMIN_KUBECONFIG_PATH
: jalur ke yang terkait filekubeconfig
cluster admin.bmctl
mendukung penggunaan--kubeconfig
sebagai alias untuk flag--admin-kubeconfig
.
Output dari perintah bmctl cluster reset
terlihat mirip dengan contoh ini:
Please check the logs at bmctl-workspace/example-cluster-1/log/reset-20221025-184705/reset.log [2022-10-25 18:47:11+0000] Creating bootstrap cluster... OK [2022-10-25 18:48:18+0000] Loading images... OK [2022-10-25 18:48:18+0000] Waiting for reset jobs to finish... [2022-10-25 18:48:28+0000] Operation reset in progress: 1 Completed: 0 Failed: 0 ... [2022-10-25 18:50:08+0000] Operation reset in progress: 0 Completed: 1 Failed: 0 [2022-10-25 18:50:08+0000] Flushing logs... OK [2022-10-25 18:50:08+0000] Deleting GKE Hub member example-cluster-1 in project example-project-12345... [2022-10-25 18:50:11+0000] Successfully deleted GKE Hub member example-cluster-1 in project example-project-12345 [2022-10-25 18:50:11+0000] Deleting bootstrap cluster... OK
kubectl
Anda dapat menggunakan kubectl
untuk menghapus cluster pengguna yang dibuat dengan
bmctl
atau kubectl
, dan yang tidak terdaftar di GKE On-Prem API. Untuk menggunakan
kubectl
untuk menghapus cluster pengguna, Anda harus menghapus objek cluster terlebih dahulu,
kemudian namespace-nya. Jika tidak, tugas untuk mengatur ulang
komputer tidak bisa dibuat,
dan proses penghapusan mungkin
terhambat tanpa batas waktu.
Untuk menghapus cluster pengguna dengan kubectl
:
Jalankan perintah berikut untuk menghapus objek cluster:
kubectl delete cluster USER_CLUSTER_NAME -n USER_CLUSTER_NAMESPACE \ --kubeconfig ADMIN_KUBECONFIG_PATH
Pada perintah, ganti entri berikut dengan informasi yang khusus untuk lingkungan Anda:
USER_CLUSTER_NAME
: nama cluster pengguna tempat Anda menghapus.USER_CLUSTER_NAMESPACE
: namespace untuk . Secara default, namespace cluster untuk Google Distributed Cloud adalah nama cluster yang diawali dengancluster-
. Misalnya, jika beri nama cluster Andatest
, namespace memiliki nama seperticluster-test
.ADMIN_KUBECONFIG_PATH
: jalur ke yang terkait filekubeconfig
cluster admin.
Setelah cluster berhasil dihapus, jalankan perintah berikut untuk hapus namespace:
kubectl delete namespace USER_CLUSTER_NAMESPACE --kubeconfig ADMIN_KUBECONFIG_PATH
Konsol
Jika cluster pengguna dikelola oleh GKE On-Prem API, lakukan langkah-langkah berikut untuk menghapus cluster:
Di konsol, buka Ringkasan cluster Google Kubernetes Engine kami.
Pilih project Google Cloud tempat cluster pengguna berada.
Pada daftar cluster, klik cluster yang ingin Anda hapus.
Pada daftar cluster, cari cluster yang ingin Anda hapus. Jika Jenis bersifat eksternal, ini menunjukkan bahwa cluster tersebut dibuat menggunakan
bmctl
dan tidak terdaftar di GKE On-Prem API. Dalam kasus ini, ikuti langkah-langkah di tabbmctl
ataukubectl
untuk menghapus gugus ini.Jika ikon di kolom Status menunjukkan masalah, ikuti langkah-langkah berikut di tab gcloud CLI untuk menghapus cluster. Anda perlu tambahkan flag
--ignore-errors
ke perintah hapus.Klik nama cluster yang ingin Anda hapus.
Di panel Details, di dekat bagian atas jendela, klik
Hapus.Saat diminta untuk mengonfirmasi, masukkan nama cluster, lalu klik Hapus.
gcloud CLI
Jika cluster pengguna dikelola oleh GKE On-Prem API, lakukan langkah-langkah berikut untuk menghapus cluster di komputer yang memiliki gcloud CLI yang diinstal:
Login dengan Akun Google Anda:
gcloud auth login
Perbarui komponen:
gcloud components update
Dapatkan daftar cluster untuk membantu memastikan bahwa Anda menentukan nama cluster dalam perintah delete:
gcloud container bare-metal clusters list \ --project=FLEET_HOST_PROJECT_ID \ --location=LOCATION
Ganti kode berikut:
FLEET_HOST_PROJECT_ID
: ID project yang tempat cluster dibuat.LOCATION
: Lokasi Google Cloud yang terkait dengan cluster pengguna.
Outputnya mirip dengan hal berikut ini:
NAME LOCATION VERSION ADMIN_CLUSTER STATE example-user-cluster-1a us-west1 1.30.0-gke.1930 example-admin-cluster-1 RUNNING
Jalankan perintah berikut untuk menghapus cluster:
gcloud container bare-metal clusters delete USER_CLUSTER_NAME \ --project=FLEET_HOST_PROJECT_ID \ --location=LOCATION \ --force \ --allow-missing
Ganti kode berikut:
USER_CLUSTER_NAME
: Nama cluster pengguna yang ingin dihapus.FLEET_HOST_PROJECT_ID
: ID project yang tempat cluster dibuat.LOCATION
: Lokasi Google Cloud yang terkait dengan cluster pengguna.
Tanda
--force
memungkinkan Anda menghapus cluster yang memiliki kumpulan node. Tanpa flag--force
, Anda harus menghapus kumpulan node terlebih dahulu, lalu hapus cluster tersebut.Flag
--allow-missing
adalah flag Google API standar. Saat Anda menyertakan tanda ini, perintah akan menampilkan keberhasilan jika cluster tidak ditemukan.Jika perintah menampilkan error yang berisi teks
failed connecting to the cluster's control plane
, ini menunjukkan masalah konektivitas baik dengan cluster admin, Hubungkan Agen, atau lingkungan lokal. Untuk memecahkan masalah terkait Hubungkan Agen, lihat Mengumpulkan log Agen Connect.Misalnya jika menurut Anda masalah konektivitas bersifat sementara, karena masalah jaringan, tunggu dan coba lagi perintahnya.
Jika Anda mengetahui bahwa cluster admin telah dihapus, atau jika node tersebut komputer untuk admin atau cluster pengguna telah dimatikan atau diambil secara offline, sertakan flag
--ignore-errors
dan coba lagi perintah tersebut.Anda juga perlu menyertakan
--ignore-errors
jika cluster tersebut dihapus menggunakanbmctl
ataukubectl
, yang keluar dari GKE On-Prem API resource di Google Cloud. Salah satu gejala dari ini adalah gugus masih ditampilkan di Cluster GKE konsol dalam keadaan tidak responsif.
Untuk informasi tentang tanda lain, lihat dokumentasi Referensi gcloud CLI.
Mereset node cluster tertentu
Anda mungkin ingin mereset node tertentu pada cluster jika, misalnya, admin cluster telah dihapus, tetapi cluster pengguna dikelola oleh cluster admin tersebut tetap ada. Dalam hal ini, klaster pengguna secara keseluruhan tidak dapat dihapus karena cluster admin telah dihapus. Akibatnya, node cluster pengguna harus direset satu per satu.
Untuk mereset node, Anda memerlukan akun layanan dengan akses baca ke Penampung Google
{i>Registry<i} (GCR). Perintah bmctl
mengharapkan file kunci JSON untuk layanan ini
akun sebagai argumen. Untuk mereset setiap node cluster, jalankan metode
perintah berikut:
bmctl reset nodes --addresses NODE_1_IP_ADDRESS,NODE_2_IP_ADDRESS \ --ssh-private-key-path SSH_KEY_PATH \ --gcr-service-account-key SERVICE_ACCOUNT_KEY_PATH \ --login-user root
Pada perintah, ganti entri berikut dengan informasi yang khusus untuk lingkungan Anda:
NODE_1_IP_ADDRESS , NODE_2_IP_ADDRESS
: dipisahkan koma daftar alamat IP {i>node<i} yang ingin Anda hapus.SSH_KEY_PATH
: jalur ke kunci pribadi SSH. Inilah kuncinya yang akan digunakan untuk membuat koneksi SSH dengan {i>node<i} selama {i>reset<i}.SERVICE_ACCOUNT_KEY_PATH
: jalur ke file JSON yang yang berisi kunci akun layanan. Kunci ini memberibmctl
izin untuk mengambil image aplikasi dari Google Container Registry. Anda dapat membuat service kunci akun menggunakan konsol atau gcloud CLI. Untuk mengetahui detailnya, lihat Membuat dan mengelola kunci akun layanan. Cara lain untuk membuat file kunci akun layanan adalah jika Anda menjalankan Perintahcreate config
dengan flag--create-service-accounts
. Sebagai detail tentang perintah itu, lihat Buat dan admin konfigurasi cluster dengan bmctl.
Detail penghapusan cluster
Selama penghapusan, pendaftaran keanggotaan fleet cluster, dan penyimpanan
pemasangan, dan data dari anthos-system StorageClass
akan dihapus.
Untuk semua node, antarmuka tunnel yang digunakan untuk jaringan cluster akan dihapus, dan direktori berikut akan dihapus:
/etc/kubernetes
/etc/cni/net.d
/root/.kube
/var/lib/kubelet
Untuk node load balancer:
- Layanan
keepalived
danhaproxy
dihapus. - File konfigurasi untuk
keepalived
danhaproxy
dihapus.