Halaman ini menunjukkan cara membuat GKE pada cluster pengguna Bare Metal dan cluster admin pada Virtual Machine (VM) Compute Engine. Skrip yang disediakan akan membuat VM Compute Engine untuk admin dan node cluster pengguna, serta workstation admin.
Workstation admin menghosting alat antarmuka command line (CLI) dan file konfigurasi untuk menyediakan cluster selama penginstalan, dan alat CLI untuk berinteraksi dengan cluster yang disediakan pasca-penginstalan. Skrip ini menginstal alat CLI di VM workstation admin.
Cluster pengguna adalah cluster Kubernetes yang menjalankan beban kerja dalam container. Node ini terdiri dari node bidang kontrol dan node pekerja. Cluster pengguna harus berisi satu atau beberapa worker node yang menjalankan beban kerja pengguna. Cluster admin adalah cluster Kubernetes yang mengelola satu atau beberapa cluster pengguna, serta membantu pembuatan, update, dan penghapusan cluster pengguna. Cluster admin hanya terdiri dari node bidang kontrol. Untuk mempelajari lebih lanjut, lihat Deployment cluster admin dan pengguna.
Skrip ini mengonfigurasi jaringan overlay Virtual Extensible LAN (VXLAN) di antara VM dan menyiapkan VM untuk pembuatan cluster. Secara opsional, skrip akan membuat cluster admin, atau Anda dapat memilih untuk membuat cluster admin sendiri guna mempelajari alat yang disediakan GKE di Bare Metal untuk membuat cluster admin.
Dengan skrip yang disediakan, Anda dapat mencoba GKE di Bare Metal dengan cepat dan tanpa harus menyiapkan hardware apa pun. Dengan menyelesaikan langkah-langkah di halaman ini, Anda akan mendapatkan GKE yang berfungsi di lingkungan pengujian Bare Metal yang berjalan di Compute Engine.
Apa itu GKE On-Prem API?
GKE On-Prem API adalah API yang dihosting Google Cloud dan dapat Anda gunakan untuk mengelola siklus proses cluster lokal menggunakan Terraform dan aplikasi Google Cloud standar. GKE On-Prem API berjalan di infrastruktur Google Cloud. Terraform, konsol, dan gcloud CLI adalah klien API, dan menggunakan API untuk membuat cluster di pusat data Anda.
Untuk mengelola siklus proses cluster Anda, GKE On-Prem API harus menyimpan metadata tentang status cluster Anda di Google Cloud, menggunakan region Google Cloud yang Anda tentukan saat membuat cluster. Metadata ini memungkinkan API mengelola siklus proses cluster dan tidak menyertakan data khusus workload.
Saat membuat cluster menggunakan klien GKE On-Prem API, Anda harus menentukan project Google Cloud. Setelah dibuat, cluster akan otomatis terdaftar ke fleet project yang ditentukan. Project ini disebut sebagai project host armada. Project host fleet tidak dapat diubah setelah cluster dibuat.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Make sure that billing is enabled for your Google Cloud project.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Make sure that billing is enabled for your Google Cloud project.
- Catat project ID karena Anda memerlukannya untuk menetapkan variabel lingkungan yang digunakan dalam skrip dan perintah di halaman ini. Jika memilih project yang sudah ada, pastikan Anda merupakan pemilik atau editor project.
-
Anda dapat menjalankan skrip ini di Cloud Shell atau mesin lokal yang menjalankan Linux atau macOS. Jika Anda tidak menggunakan
Cloud Shell:
- Pastikan Anda telah menginstal Google Cloud CLI terbaru, yaitu alat command line untuk berinteraksi dengan Google Cloud. Update komponen CLI gcloud, jika diperlukan:
gcloud components update
Bergantung pada cara penginstalan gcloud CLI, Anda mungkin melihat pesan berikut: "Anda tidak dapat menjalankan tindakan ini karena pengelola komponen gcloud CLI dinonaktifkan untuk penginstalan ini. Anda dapat menjalankan perintah berikut untuk mencapai hasil yang sama dengan penginstalan ini:" Ikuti petunjuk untuk menyalin dan menempelkan perintah guna mengupdate komponen.
- Pastikan Anda telah menginstal
kubectl
. Jika Anda perlu menginstalkubectl
, jalankan perintah berikut:gcloud components install kubectl
- Pastikan Anda telah menginstal Google Cloud CLI terbaru, yaitu alat command line untuk berinteraksi dengan Google Cloud. Update komponen CLI gcloud, jika diperlukan:
Membuat infrastruktur VM dan, jika perlu, cluster admin
Lakukan langkah-langkah berikut untuk menyiapkan dan menjalankan skrip. Skrip yang Anda download dan jalankan berasal dari repositori anthos-samples. Jika ingin mempelajari skrip lebih lanjut sebelum menjalankannya, lihat bagian berikutnya, Tentang skrip.
Siapkan variabel lingkungan:
export PROJECT_ID=PROJECT_ID export ADMIN_CLUSTER_NAME=ADMIN_CLUSTER_NAME export ON_PREM_API_REGION=ON_PREM_API_REGION export ZONE=ZONE
ON_PREM_API_REGION
: Region Google Cloud tempat GKE On-Prem API menjalankan dan menyimpan metadatanya. Tentukanus-central1
atau wilayah lain yang didukung.ZONE
: Zona Google Cloud tempat VM Compute Engine akan dibuat. Anda dapat menggunakanus-central1-a
atau zona Compute Engine lainnya.
Tetapkan project dan zona default:
gcloud config set project $PROJECT_ID gcloud config set compute/zone $ZONE
Jika Anda mendapatkan error
PERMISSION_DENIED
, periksa kembali project ID yang Anda masukkan. Jika project ID sudah benar, jalankangcloud auth login
untuk login ke gcloud CLI dengan akun yang memiliki akses ke project tersebut.Dapatkan daftar GKE pada versi Bare Metal yang dapat Anda instal:
gcloud container bare-metal admin-clusters query-version-config \ --location=ON_PREM_API_REGION | grep 1.16
Beberapa petunjuk dalam dokumen ini bergantung pada GKE On-Prem API, yang mendukung subset GKE yang tersedia pada versi Bare Metal.
Pilih versi dari output perintah sebelumnya dan tetapkan dalam variabel lingkungan:
export BMCTL_VERSION=BMCTL_VERSION
Sebaiknya pilih versi kompatibel tertinggi untuk mendapatkan fitur dan perbaikan GKE terbaru pada Bare Metal.
Clone repositori
anthos-samples
dan ubah ke direktori tempat skrip berada:git clone https://github.com/GoogleCloudPlatform/anthos-samples cd anthos-samples/anthos-bm-gcp-bash
Jalankan skrip:
bash install_admin_cluster.sh
Jika diminta, masukkan nomor untuk memilih mode penginstalan:
- Masukkan 1 untuk meminta skrip menyiapkan infrastruktur VM dan menginstal cluster admin.
- Masukkan 2 agar skrip hanya menyiapkan infrastruktur VM.
Jika diminta, konfirmasi pilihan Anda.
Skrip ini menghasilkan setiap perintah yang dijalankan beserta statusnya. Setelah selesai, skrip akan menghasilkan output berikut bergantung pada apakah Anda memilih untuk menginstal cluster admin atau tidak:
Cluster admin dibuat
✅ Installation complete. Please check the logs for any errors!!! ✅ If you do not see any errors in the output log, then you now have the following setup: |---------------------------------------------------------------------------------------------------------| | VM Name | L2 Network IP (VxLAN) | INFO | |---------------------------------------------------------------------------------------------------------| | abm-admin-cluster-cp1 | 10.200.0.3 | Has control plane of admin cluster running inside | | abm-user-cluster-cp1 | 10.200.0.4 | 🌟 Ready for use as control plane for the user cluster | | abm-user-cluster-w1 | 10.200.0.5 | 🌟 Ready for use as worker for the user cluster | | abm-user-cluster-w2 | 10.200.0.6 | 🌟 Ready for use as worker for the user cluster | |---------------------------------------------------------------------------------------------------------|
Siapkan VM saja
|---------------------------------------------------------------------------------------------------------| | VM Name | L2 Network IP (VxLAN) | INFO | |---------------------------------------------------------------------------------------------------------| | abm-admin-cluster-cp1 | 10.200.0.3 | 🌟 Ready for use as control plane for the admin cluster | | abm-user-cluster-cp1 | 10.200.0.4 | 🌟 Ready for use as control plane for the user cluster | | abm-user-cluster-w1 | 10.200.0.5 | 🌟 Ready for use as worker for the user cluster | | abm-user-cluster-w2 | 10.200.0.6 | 🌟 Ready for use as worker for the user cluster | |---------------------------------------------------------------------------------------------------------|
Tentang skrip
Untuk mempelajari install_admin_cluster.sh
lebih lanjut, klik Tentang skrip di baris berikutnya.
Tentang skrip
Skrip ini mengotomatiskan langkah-langkah manual berikut:
-
Membuat akun layanan yang disebut
baremetal-gcr
, dan memberikan izin tambahan ke akun layanan agar tidak memerlukan beberapa akun layanan untuk API dan layanan yang berbeda. -
Mengaktifkan Google Cloud API berikut:
anthos.googleapis.com anthosaudit.googleapis.com anthosgke.googleapis.com cloudresourcemanager.googleapis.com connectgateway.googleapis.com container.googleapis.com gkeconnect.googleapis.com gkehub.googleapis.com gkeonprem.googleapis.com iam.googleapis.com logging.googleapis.com monitoring.googleapis.com opsconfigmonitoring.googleapis.com serviceusage.googleapis.com stackdriver.googleapis.com storage.googleapis.com
-
Membuat VM berikut:
- Satu VM untuk workstation admin. Workstation admin akan memiliki akses ke semua node cluster lainnya menggunakan SSH.
- Satu VM untuk node bidang kontrol cluster admin.
- Dua VM untuk node pekerja cluster pengguna.
- Satu VM untuk node bidang kontrol cluster pengguna.
- Membuat jaringan overlay Virtual Extensible LAN (VXLAN) untuk konektivitas lapisan 2 antara VM. VXLAN tidak persisten, jadi jika Anda memulai ulang instance VM, jaringan akan dihancurkan. Jaringan diatur agar berada di subnet 10.200.0.0/24. Konektivitas lapisan 2 adalah persyaratan untuk load balancer paket.
-
Menginstal alat berikut di workstation admin:
bmctl
kubectl
- Docker
Skrip ini juga mendownload kunci akun layanan untuk akun layanan
baremetal-gcr
ke workstation admin. -
Memastikan bahwa
root@10.200.0.x
dari workstation admin berfungsi dengan melakukan tugas-tugas berikut:- Membuat kunci SSH baru di workstation admin.
- Menambahkan kunci publik ke semua VM lain dalam deployment.
-
Secara opsional, skrip akan membuat cluster admin dengan file konfigurasi berikut:
Jika Anda memilih agar skrip membuat cluster admin, skrip tersebut akan menggunakan SSH untuk login ke workstation admin sebagai pengguna root. Selanjutnya, skrip akan menjalankan alat command line
bmctl
untuk membuat cluster admin. Ini adalah salah satu alat yang dapat Anda gunakan untuk membuat cluster admin.Saat membuat cluster, GKE di Bare Metal akan men-deploy Kubernetes di cluster (jenis) Docker di workstation admin. Cluster bootstrap ini menghosting pengontrol Kubernetes yang diperlukan untuk membuat cluster dan digunakan untuk membuat cluster admin. Setelah dibuat, pengontrol yang relevan akan dipindahkan dari cluster bootstrap ke cluster admin. Terakhir, kecuali jika Anda menentukan sebaliknya, cluster bootstrap akan dihapus saat pembuatan cluster berhasil diselesaikan. Cluster bootstrap memerlukan Docker untuk menarik image container.
Jika ingin, Anda dapat membuat cluster admin
Jika skrip membuat cluster admin, lanjutkan ke bagian berikutnya Memverifikasi cluster admin. Jika tidak, ikuti langkah-langkah di bagian ini untuk membuat cluster bootstrap dan cluster admin.
Sebelum membuat cluster admin, Anda harus menjalankan
perintah bmctl register bootstrap
di workstation admin. Perintah ini men-deploy Kubernetes sementara di cluster Docker (jenis) pada workstation admin. Cluster bootstrap ini menghosting pengontrol Kubernetes yang diperlukan untuk
membuat cluster admin. Saat Anda membuat cluster admin, pengontrol di
cluster bootstrap akan menyediakan node, menjalankan pemeriksaan preflight, dan mendaftarkan
cluster admin ke fleet. Cluster bootstrap otomatis dihapus
setelah cluster berhasil dibuat.
Konsol
Di konsol, buka halaman Create a GKE on Bare Metal cluster.
Pastikan untuk memilih
PROJECT_ID
dari daftar project.Di menu navigasi sebelah kiri, klik Install bootstrap environment.
Masukkan
ADMIN_CLUSTER_NAME
sebagai nama cluster admin. Perhatikan bahwa nama cluster bootstrap diperoleh dengan menambahkan bootstrap- terlebih dahulu ke nama cluster admin.Pilih
VERSION
sebagai versi untuk cluster admin Anda. Skrip mendownload versi alat command linebmctl
ini ke workstation admin. GKE pada versi Bare Metal yang Anda instal harus cocok dengan versibmctl
.Di kolom Google Cloud API Location, pilih ON_PREM_API_REGION dari daftar. Setelan ini menentukan region tempat GKE On-Prem API dijalankan, dan region tempat menyimpan hal-hal berikut:
- Metadata cluster yang diperlukan GKE On-Prem API untuk mengelola siklus proses cluster
- Data Cloud Logging dan Cloud Monitoring dari komponen sistem
- Log Audit Admin yang dibuat oleh Cloud Audit Logs
Nama cluster, project, dan lokasi bersama-sama mengidentifikasi cluster secara unik di Google Cloud.
Gunakan langkah-langkah di bagian berikutnya, bukan langkah-langkah yang ditampilkan di konsol, untuk membuat cluster bootstrap. Biarkan halaman konsol ditampilkan karena Anda akan kembali ke sana untuk membuat cluster admin.
gcloud CLI
Buka jendela terminal baru. Anda akan menggunakan jendela terminal kedua untuk terhubung ke workstation admin untuk membuat cluster bootstrap. Anda akan menggunakan jendela terminal pertama untuk menjalankan perintah gcloud CLI untuk membuat cluster admin.
Membuat cluster bootstrap
Lakukan langkah-langkah berikut di workstation admin Anda.
Gunakan SSH untuk mengakses workstation admin sebagai root:
gcloud compute ssh root@abm-ws --zone ZONE
Anda dapat mengabaikan pesan apa pun tentang mengupdate VM dan menyelesaikan tutorial ini. Jika berencana mempertahankan VM sebagai lingkungan pengujian, Anda mungkin ingin mengupdate OS atau mengupgrade ke rilis berikutnya seperti yang dijelaskan dalam dokumentasi Ubuntu.
Tetapkan kredensial pengguna Anda sebagai Kredensial Default Aplikasi (ADC):
gcloud auth application-default login
Ikuti petunjuk untuk memilih Akun Google Anda untuk ADC.
Membuat cluster bootstrap.
bmctl register bootstrap \ --ssh-key=/root/.ssh/id_rsa \ --name=bootstrap-ADMIN_CLUSTER_NAME \ --project-id=PROJECT_ID
Setelah bmctl
berhasil membuat cluster bootstrap, Anda akan melihat output
yang mirip dengan berikut ini:
[2023-03-22 17:35:24+0000] Waiting for the temporary cluster to be registered... OK [2023-03-22 17:35:37+0000] Please go to https://console.cloud.google.com/home/dashboard?project=example-project-12345 to create the cluster [2023-03-22 17:35:37+0000] Waiting for preflight checks and cluster to run..
Membuat cluster admin
Konsol
Di halaman Install bootstrap environment di bagian Bootstrap environment from admin workstation, klik Check Connection.
Jika berhasil, konsol akan menampilkan
Connection created.Koneksi ke cluster bootstrap harus dibuat sebelum Anda melanjutkan. Jika koneksi tidak terhubung, periksa argumen yang Anda tentukan ke perintah
bmctl register bootstrap
:Pastikan nilai untuk
--name
cocok dengan Nama bootstrap turunan yang ditampilkan di bagian Dasar-dasar lingkungan bootstrap.Pastikan nilai untuk
--project-id
cocok dengan ID project yang Anda pilih di konsol.
Jika Anda perlu mengubah nama cluster bootstrap atau project ID, masukkan
Ctrl-C
untuk keluar daribmctl register bootstrap
dan jalankan kembali perintahnya.Klik Networking di menu navigasi sebelah kiri.
Di bagian Control bidang, masukkan perintah berikut di kolom Control plane node IP 1:
10.200.0.3
Ini adalah alamat IP VM abm-admin-cluster-cp di VXLAN yang dibuat oleh skrip.
Di bagian Load balancer, pastikan Bundled dipilih.
Di bagian Virtual IP (VIP), masukkan kode berikut di kolom Control pesawat VIP:
10.200.0.48
Klik Verifikasi dan Buat.
Konsol akan menampilkan pesan status saat memverifikasi setelan dan membuat cluster.
gcloud CLI
Pastikan variabel lingkungan yang Anda tetapkan sebelumnya memiliki nilai yang benar. Meskipun menggunakan placeholder, contoh perintah ini harus cocok dengan variabel lingkungan yang digunakan skrip.
echo $PROJECT_ID echo $ADMIN_CLUSTER_NAME echo $ON_PREM_API_REGION echo $BMCTL_VERSION
Pastikan cluster bootstrap telah terdaftar sebagai anggota fleet:
gcloud container fleet memberships list \ --project=PROJECT_ID
Jika cluster bootstrap tidak tercantum, periksa nama cluster bootstrap dan ID project yang Anda tentukan untuk
bmctl register bootstrap
. Jika Anda perlu mengubah nama cluster bootstrap atau project ID, masukkanCtrl-C
untuk keluar daribmctl register bootstrap
dan jalankan kembali perintah tersebut.Buat cluster admin dengan load balancer yang dipaketkan:
gcloud container bare-metal admin-clusters create ADMIN_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION \ --version=BMCTL_VERSION \ --max-pods-per-node=110 \ --control-plane-vip=10.200.0.48 \ --control-plane-load-balancer-port=443 \ --control-plane-node-configs node-ip=10.200.0.3 \ --island-mode-service-address-cidr-blocks=10.96.0.0/20 \ --island-mode-pod-address-cidr-blocks=192.168.0.0/16 \ --lvp-share-path=/mnt/localpv-share \ --lvp-share-storage-class=local-shared \ --lvp-node-mounts-config-path=/mnt/localpv-disk \ --lvp-node-mounts-config-storage-class=local-disks
Pada perintah sebelumnya:
--control-plane-vip
: Disetel ke10.200.0.48
. Ini adalah IP virtual (VIP) di load balancer untuk server Kubernetes API cluster.--control-plane-node-configs
:node-ip
disetel ke10.200.0.3
. Ini adalah alamat IP VM abm-admin-cluster-cp di VXLAN yang dibuat oleh skrip.
Untuk mengetahui daftar lengkap flag dan deskripsinya, baca referensi gcloud CLI.
Output dari perintah ini mirip dengan berikut ini:
Waiting for operation [projects/example-project-12345/locations/us-west1/operations/operation-1679543737105-5f7893fd5bae9-942b3f97-75e59179] to complete.
Dalam contoh output, string
operation-1679543737105-5f7893fd5bae9-942b3f97-75e59179
adalahOPERATION_ID
dari operasi yang berjalan lama. Anda dapat mengetahui status operasi dengan menjalankan perintah berikut di jendela terminal lain:gcloud container bare-metal operations describe OPERATION_ID \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
Detail tentang proses pembuatan cluster adalah output di workstation
admin Anda. Sebelum membuat cluster, bmctl
menjalankan serangkaian pemeriksaan preflight
untuk memverifikasi konfigurasi. Jika pemeriksaan preflight lulus, Anda akan melihat
sesuatu seperti berikut:
[2023-03-22 23:12:47+0000] Waiting for cluster kubeconfig to become ready OK [2023-03-22 23:15:47+0000] Writing kubeconfig file [2023-03-22 23:15:47+0000] kubeconfig of cluster being created is present at bmctl-workspace/abm-cluster-1/abm-cluster-1-kubeconfig [2023-03-22 23:15:47+0000] Please restrict access to this file as it contains authentication credentials of your cluster. [2023-03-22 23:15:47+0000] Waiting for cluster to become ready OK [2023-03-22 23:20:17+0000] Please run [2023-03-22 23:20:17+0000] kubectl --kubeconfig bmctl-workspace/abm-cluster-1/abm-cluster-1-kubeconfig get nodes [2023-03-22 23:20:17+0000] to get cluster nodes status. [2023-03-22 23:20:17+0000] Waiting for node pools to become ready OK [2023-03-22 23:20:37+0000] Waiting for metrics to become ready in GCP OK [2023-03-22 23:25:38+0000] Waiting for cluster API provider to install in the created admin cluster OK [2023-03-22 23:25:48+0000] Moving admin cluster resources to the created admin cluster [2023-03-22 23:25:51+0000] Waiting for node update jobs to finish OK [2023-03-22 23:27:41+0000] Flushing logs... OK [2023-03-22 23:27:41+0000] Deleting membership... OK [2023-03-22 23:27:42+0000] Deleting bootstrap cluster.
Memverifikasi cluster admin
Anda dapat menemukan file kubeconfig
cluster admin di workstation admin di
direktori bmctl-workspace
akun root. Untuk memverifikasi deployment, selesaikan langkah-langkah berikut.
Jika skrip membuat cluster admin, gunakan SSH untuk mengakses workstation admin sebagai root:
gcloud compute ssh root@abm-ws --zone ZONE
Anda dapat mengabaikan pesan apa pun tentang mengupdate VM dan menyelesaikan tutorial ini. Jika berencana mempertahankan VM sebagai lingkungan pengujian, Anda mungkin ingin mengupdate OS atau mengupgrade ke rilis berikutnya seperti yang dijelaskan dalam dokumentasi Ubuntu.
Tetapkan variabel lingkungan
KUBECONFIG
dengan jalur ke file konfigurasi cluster untuk menjalankan perintahkubectl
di cluster.export clusterid=ADMIN_CLUSTER_NAME export KUBECONFIG=$HOME/bmctl-workspace/$clusterid/$clusterid-kubeconfig kubectl get nodes
Outputnya mirip dengan hal berikut ini:
NAME STATUS ROLES AGE VERSION abm-admin-cluster-cp Ready control-plane,master 91m v1.24.2-gke.1900
Setel konteks saat ini dalam variabel lingkungan:
export CONTEXT="$(kubectl config current-context)"
Jalankan perintah
gcloud
berikut. Perintah ini akan melakukan hal berikut:- Memberikan peran
clusterrole/cluster-admin
Kubernetes kepada akun pengguna Anda di cluster. - Mengonfigurasi cluster sehingga Anda dapat menjalankan perintah
kubectl
di komputer lokal tanpa harus SSH ke workstation admin. - Memungkinkan Anda login ke cluster di konsol menggunakan identitas Google Anda.
Ganti
YOUR_EMAIL_ADDRESS
dengan alamat email yang terkait dengan akun Google Cloud Anda. Contoh:--users=alex@example.com
.gcloud container fleet memberships generate-gateway-rbac \ --membership=ADMIN_CLUSTER_NAME \ --role=clusterrole/cluster-admin \ --users=YOUR_EMAIL_ADDRESS \ --project=PROJECT_ID \ --kubeconfig=$KUBECONFIG \ --context=$CONTEXT\ --apply
Output perintah ini mirip dengan berikut ini, yang dipotong agar mudah dibaca:
Validating input arguments. Specified Cluster Role is: clusterrole/cluster-admin Generated RBAC policy is: -------------------------------------------- ... Applying the generate RBAC policy to cluster with kubeconfig: /root/bmctl-workspace/ADMIN_CLUSTER_NAME/ADMIN_CLUSTER_NAME-kubeconfig, context: ADMIN_CLUSTER_NAME-admin@ADMIN_CLUSTER_NAME Writing RBAC policy for user: YOUR_EMAIL_ADDRESS to cluster. Successfully applied the RBAC policy to cluster.
- Memberikan peran
Setelah selesai menjelajah, masukkan exit untuk logout dari workstation admin.
Jalankan perintah berikut di komputer lokal Anda untuk mendapatkan entri kubeconfig yang dapat mengakses cluster melalui gateway koneksi:
gcloud container fleet memberships get-credentials ADMIN_CLUSTER_NAME
Outputnya mirip dengan hal berikut ini:
Starting to build Gateway kubeconfig... Current project_id: PROJECT_ID A new kubeconfig entry "connectgateway_PROJECT_ID_global_ADMIN_CLUSTER_NAME" has been generated and set as the current context.
Anda kini dapat menjalankan perintah
kubectl
melalui gateway koneksi:kubectl get nodes
Outputnya mirip dengan hal berikut ini:
NAME STATUS ROLES AGE VERSION abm-admin-cluster-cp Ready control-plane,master 94m v1.24.2-gke.1900
Di GKE pada Bare Metal 1.16 dan yang lebih baru, cluster akan otomatis didaftarkan di GKE On-Prem API. Dengan begitu, Anda dapat menggunakan gcloud CLI dan console untuk mengupgrade dan mengupdate cluster admin.
Membuat cluster pengguna
Saat membuat VXLAN L2 untuk VM, skrip menetapkan alamat IP berikut di jaringan 10.200.0.0/24. Anda menggunakan alamat IP ini saat mengonfigurasi setelan jaringan dan kumpulan node untuk cluster pengguna.
Nama VM | IP jaringan | Deskripsi node |
---|---|---|
abm-admin-cluster-cp1 | 10.200.0.3 | Node bidang kontrol untuk cluster admin |
abm-user-cluster-cp1 | 10.200.0.4 | Node bidang kontrol untuk cluster pengguna |
abm-user-cluster-w1 | 10.200.0.5 | Node pekerja untuk cluster pengguna |
abm-user-cluster-w2 | 10.200.0.6 | Node pekerja lain untuk cluster pengguna |
Anda dapat menggunakan konsol Google Cloud, Google Cloud CLI, atau Terraform untuk membuat cluster pengguna.
Konsol
Lakukan langkah-langkah berikut untuk membuat cluster pengguna di konsol:
Di konsol, buka halaman Create a GKE on Bare Metal cluster.
Pastikan project Google Cloud tempat Anda membuat cluster admin telah dipilih.
Di bagian Pilih jenis cluster Anda, pilih Buat cluster pengguna untuk cluster admin yang ada
Klik Next.
Dasar-dasar cluster
Masukkan nama untuk cluster pengguna atau gunakan default.
Pastikan cluster admin yang baru dibuat dipilih. Anda dapat menggunakan default untuk setelan lainnya di halaman ini.
Klik Networking di menu navigasi sebelah kiri.
Networking
Di bagian Control bidang, masukkan nilai berikut di kolom Control bidang node IP 1:
10.200.0.4
Ini adalah alamat IP VM abm-user-cluster-cp1 di VXLAN yang dibuat oleh skrip.
Di bagian Load balancer, gunakan load balancer default, Bundled with MetalLB.
Di bagian New address pool, masukkan rentang alamat IP berikut di kolom IP address range 1:
10.200.0.51-10.200.0.70
Klik Done.
Di bagian Virtual IPs, masukkan alamat IP berikut di kolom Control Plane VIP:
10.200.0.50
Masukkan alamat IP berikut untuk Ingress VIP:
10.200.0.51
Gunakan alamat IP default di bagian Service and Pod CIDRs.
Klik kumpulan default di menu navigasi sebelah kiri.
Membuat node pool
Cluster Anda harus memiliki minimal satu kumpulan node untuk node pekerja. Kumpulan node adalah template untuk grup node pekerja yang dibuat di cluster ini.
Masukkan alamat IP berikut di kolom Nodes address 1:
10.200.0.5
Ini adalah alamat IP VM abm-user-cluster-w1 di VXLAN yang dibuat oleh skrip.
Membuat cluster
Klik Verifikasi dan Buat untuk membuat cluster pengguna.
Perlu waktu 15 menit atau lebih untuk membuat cluster pengguna. Console akan menampilkan pesan status saat memverifikasi setelan dan membuat cluster.
Jika ada masalah dengan konfigurasi, konsol akan menampilkan pesan error yang seharusnya cukup jelas bagi Anda untuk memperbaiki masalah konfigurasi, lalu mencoba lagi untuk membuat cluster.
Untuk melihat informasi tambahan tentang proses pembuatan, klik Show details untuk menampilkan panel samping. Klik
untuk menutup panel detail.Saat cluster dibuat, Status cluster: berjalan akan ditampilkan.
Setelah cluster dibuat, klik
Cluster untuk kembali ke halaman Clusters.
gcloud CLI
Anda dapat menggunakan perintah berikut untuk membuat cluster pengguna:
gcloud container bare-metal clusters create
Setelah membuat cluster, Anda harus membuat setidaknya satu kumpulan node menggunakan perintah berikut:
gcloud container bare-metal node-pools create
Untuk membuat cluster pengguna:
Pastikan variabel lingkungan yang Anda tetapkan sebelumnya memiliki nilai yang benar. Meskipun menggunakan placeholder, contoh perintah ini harus cocok dengan variabel lingkungan yang digunakan skrip.
echo $PROJECT_ID echo $ADMIN_CLUSTER_NAME echo $ON_PREM_API_REGION echo $BMCTL_VERSION
Jalankan perintah berikut untuk membuat cluster pengguna. Ganti kode berikut:
USER_CLUSTER_NAME
: Nama cluster.Pastikan
--admin-users
ditetapkan ke alamat email yang terkait dengan Akun Google Anda agar Anda dapat mengelola cluster.
Nilai tanda lainnya telah diisi untuk Anda. Scroll ke atas jika perlu untuk memverifikasi bahwa flag
--admin-cluster-membership
memiliki nilai yang benar untuk nama cluster admin, yang merupakan segmen terakhir dalam nama keanggotaan yang ditentukan secara lengkap.gcloud container bare-metal clusters create USER_CLUSTER_NAME \ --project=PROJECT_ID \ --admin-cluster-membership=projects/PROJECT_ID/locations/global/memberships/ADMIN_CLUSTER_NAME \ --location=ON_PREM_API_REGION \ --version=BMCTL_VERSION \ --admin-users=YOUR_EMAIL_ADDRESS \ --metal-lb-address-pools='pool=lb-pool-1,manual-assign=True,addresses=10.200.0.51-10.200.0.70' \ --control-plane-node-configs='node-ip=10.200.0.4' \ --control-plane-vip=10.200.0.50 \ --control-plane-load-balancer-port=443 \ --ingress-vip=10.200.0.51 \ --island-mode-service-address-cidr-blocks=10.96.0.0/20 \ --island-mode-pod-address-cidr-blocks=192.168.0.0/16 \ --lvp-share-path=/mnt/localpv-share \ --lvp-share-storage-class=local-shared \ --lvp-node-mounts-config-path=/mnt/localpv-disk \ --lvp-node-mounts-config-storage-class=local-disks
Daftar berikut menjelaskan flag:
--project
: ID project tempat cluster pengguna akan didaftarkan. Project ini disebut sebagai project host fleet.--admin-cluster-membership
: Nama cluster admin yang ditentukan secara lengkap yang mengidentifikasi cluster admin dalam fleet.--location
: Region Google Cloud tempat GKE On-Prem API menjalankan dan menyimpan metadatanya.--version
: GKE pada versi Bare Metal.--admin-users
: Sertakan alamat email Anda yang akan diberi kebijakan kontrol akses berbasis peran (RBAC) Kubernetes yang memberi Anda akses administratif penuh ke cluster.--metal-lb-address-pools
: Konfigurasi kumpulan alamat untuk load balancer MetalLB paket. Rentang alamat IP harus berada di jaringan10.200.0.0/24
yang dibuat oleh skrip. Rentang alamat IP tidak boleh berisi alamat IP yang ditetapkan ke VM atau bidang kontrol VIP. Namun, perhatikan bahwa VIP masuk harus berada dalam rentang alamat ini.--control-plane-node-configs
: Konfigurasi node bidang kontrol untuk cluster pengguna. Nilai untuknode-ip
adalah10.200.0.4
, yang merupakan alamat IP yang ditetapkan oleh skrip ke VMabm-user-cluster-cp1
.--control-plane-vip
: IP virtual untuk bidang kontrol. Nilai10.200.0.50
berada di jaringan10.200.0.0/24
yang dibuat skrip, tetapi tidak tumpang tindih dengan rentang alamat IP yang digunakan untuk kumpulan alamat load balancer MetalLB.--control-plane-load-balancer-port
: Port tempat load balancer menayangkan bidang kontrol. Meskipun Anda dapat mengonfigurasi nilai lain, port443
adalah port standar yang digunakan untuk koneksi HTTPS.--ingress-vip
: IP virtual untuk layanan ingress. Alamat IP ini harus berada dalam rentang alamat IP yang digunakan untuk kumpulan alamat load balancer MetalLB.--island-mode-service-address-cidr-blocks
: Rentang alamat IP, dalam format CIDR, yang akan digunakan untuk Layanan di cluster pengguna. Contoh perintah tersebut menggunakan10.96.0.0/20
, yang merupakan nilai default yang disediakan oleh konsol. Rentang CIDR harus antara /24 dan /12, dengan /12 memberikan alamat IP terbanyak. Sebaiknya gunakan rentang dalam ruang alamat IP untuk internet pribadi, seperti yang dijelaskan dalam RFC 1918.--island-mode-pod-address-cidr-blocks
: Rentang alamat IP, dalam format CIDR, yang akan digunakan untuk Pod di cluster pengguna. Contoh perintah tersebut menggunakan192.168.0.0/16
, yang merupakan nilai default yang disediakan oleh konsol. Rentang CIDR harus antara /18 dan /8, dengan /8 sebagai alamat IP terbanyak. Sebaiknya gunakan rentang dalam ruang alamat IP untuk internet pribadi, seperti yang dijelaskan dalam RFC 1918.--lvp-share-path
: Ini adalah jalur mesin host tempat subdirektori dapat dibuat. PersistentVolume (PV) lokal dibuat untuk setiap subdirektori.--lvp-share-storage-class
: Ini adalah StorageClass yang akan digunakan untuk membuat volume persisten. StorageClass dibuat selama pembuatan cluster.--lvp-node-mounts-config-path
: Ini adalah jalur mesin host tempat disk yang terpasang dapat ditemukan. PersistentVolume (PV) lokal dibuat untuk setiap pemasangan.--lvp-node-mounts-config-storage
: Kelas penyimpanan tempat PV dibuat selama pembuatan cluster.
Setelah menjalankan perintah, Anda akan melihat output seperti berikut:
Waiting for operation [projects/PROJECT_ID/locations/ON_PREM_API_REGION/operations/operation-1678304606537-5f668bde5c57e-341effde-b612ff8a] to complete...
Dalam contoh output, string operation-1678304606537-5f668bde5c57e-341effde-b612ff8a
adalah OPERATION_ID
dari operasi yang berjalan lama.
Untuk mengetahui status operasi, salin
OPERATION_ID
dari output Anda ke dalam perintah
berikut. Buka jendela terminal lain dan jalankan perintah.
gcloud container bare-metal operations describe OPERATION_ID \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
Perlu waktu sekitar 15 menit atau lebih untuk membuat cluster. Saat cluster sedang dibuat, Anda dapat menjalankan perintah sebelumnya sesering mungkin untuk mendapatkan status saat ini.
Saat cluster dibuat, Anda akan melihat output seperti berikut:
Created Anthos cluster on bare metal [https://gkeonprem.googleapis.com/v1/projects/PROJECT_ID/locations/ON_PREM_API_REGION/bareMetalClusters/USER_CLUSTER_NAME].
Membuat node pool
Setelah cluster berhasil dibuat, jalankan perintah berikut untuk membuat kumpulan node. Ganti NODE_POOL_NAME
dengan nama untuk kumpulan node, dan pastikan placeholder untuk
tanda --cluster
masih ditetapkan ke nama cluster pengguna.
gcloud container bare-metal node-pools create NODE_POOL_NAME \ --cluster=USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION \ --node-configs='node-ip=10.200.0.5'
-node-configs
: Nilai yang ditetapkan kenode-ip
adalah alamat IP VM abm-user-cluster-w1 di VXLAN yang dibuat oleh skrip.
Setelah menjalankan perintah, Anda akan melihat output seperti berikut:
Waiting for operation [projects/PROJECT_ID/locations/ON_PREM_API_REGION/operations/operation-1678308682052-5f669b0d132cb-6ebd1c2c-816287a7] to complete...
Pembuatan node pool memerlukan waktu sekitar 5 menit atau kurang. Saat kumpulan node dibuat, Anda akan melihat output seperti berikut:
Created node pool in Anthos cluster on bare metal [https://gkeonprem.googleapis.com/v1/projects/PROJECT_ID/locations/ON_PREM_API_REGION/bareMetalClusters/USER_CLUSTER_NAME/bareMetalNodePools/NODE_POOL_NAME].
Perintah cluster pengguna lainnya
Selain membuat cluster, ada perintah gcloud CLI lain yang dapat Anda jalankan, misalnya:
- Untuk membuat daftar cluster pengguna:
gcloud container bare-metal clusters list \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
- Untuk menggambarkan cluster pengguna:
gcloud container bare-metal clusters describe USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
Untuk mengetahui informasi selengkapnya, baca bagian gcloud container bare-metal clusters.
Perintah kumpulan node lainnya
Selain membuat node pool, ada beberapa perintah gcloud CLI lain yang dapat Anda jalankan, misalnya:
- Untuk membuat daftar kumpulan node:
gcloud container bare-metal node-pools list \ --cluster=USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
- Untuk mendeskripsikan kumpulan node:
gcloud container bare-metal node-pools describe NODE_POOL_NAME \ --cluster=USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
Untuk mengetahui informasi selengkapnya, lihat gcloud container bare-metal node-pools.
Terraform
Anda dapat menggunakan contoh konfigurasi dasar berikut untuk membuat cluster pengguna dengan load balancer MetalLB yang dipaketkan. Untuk informasi selengkapnya, lihat dokumentasi referensi google_gkeonprem_bare_metal_cluster
.
Di direktori tempat Anda meng-clone
anthos-samples
, ubah ke direktori tempat sampel Terraform berada:cd anthos-samples/anthos-onprem-terraform/abm_user_cluster_metallb
Contoh ini menyediakan contoh file variabel untuk diteruskan ke
main.tf
.Buat salinan file
terraform.tfvars.sample
:cp terraform.tfvars.sample terraform.tfvars
Ubah nilai parameter di
terraform.tfvars
, lalu simpan file-nya.Daftar berikut mendeskripsikan variabel:
project_id
: ID project tempat cluster pengguna akan didaftarkan. Project ini disebut sebagai project host fleet.region
: Region Google Cloud yang Anda tetapkan di awal tutorial. Jalankanecho $ON_PREM_API_REGION
untuk mendapatkan nilai.admin_cluster_name
: Nama cluster admin yang Anda tetapkan di awal tutorial ini. Jalankan echo$ADMIN_CLUSTER_NAME
untuk mendapatkan nilainya.bare_metal_version
: GKE pada versi Bare Metal untuk cluster pengguna Anda. Untuk menggunakan versi yang sama dengan yang digunakan untuk cluster admin, jalankanecho $BMCTL_VERSION
untuk mendapatkan nilai. Jika mau, Anda dapat menentukan versi yang tidak lebih dari satu versi minor yang lebih rendah dari versi cluster admin. Versi cluster pengguna tidak boleh lebih tinggi daripada versi cluster admin.cluster_name
: Anda dapat menggunakan nama dalam file TVARS untuk cluster pengguna atau menentukan nama pilihan Anda. Nama tidak dapat diubah setelah cluster dibuat.admin_user_emails
: Daftar alamat email pengguna yang akan diberi hak istimewa administratif di cluster. Pastikan untuk menambahkan alamat email agar Anda dapat mengelola cluster.Saat cluster dibuat, GKE On-Prem API menerapkan kebijakan kontrol akses berbasis peran (RBAC) Kubernetes ke cluster untuk memberikan peran
clusterrole/cluster-admin
Kubernetes kepada pengguna admin, yang menyediakan akses penuh ke setiap resource dalam cluster di semua namespace. Hal ini juga memungkinkan pengguna login ke konsol menggunakan identitas Google mereka.
Gunakan nilai default yang ditentukan dalam
terraform.tvars
untuk variabel lainnya. Skrip menggunakan nilai ini saat membuat VM dan cluster admin.control_plane_ips
: Daftar satu atau beberapa alamat IPv4 untuk node bidang kontrol. Gunakan nilai default, yaitu alamat IP yang ditetapkan oleh skrip ke VMabm-user-cluster-cp1
.worker_node_ips
: Daftar satu atau beberapa alamat IPv4 untuk mesin node pekerja. Gunakan nilai default, yaitu alamat IP yang ditetapkan oleh skrip ke VMabm-user-cluster-w1
danabm-user-cluster-w2
.control_plane_vip
: IP virtual (VIP) untuk bidang kontrol. Gunakan nilai default,10.200.0.50
, yang ada di jaringan10.200.0.0/24
yang dibuat oleh skrip. Perlu diperhatikan bahwa alamat IP ini tidak tumpang-tindih dengan rentang alamat IP yang digunakan untuk kumpulan alamat load balancer MetalLB.ingress_vip
: Alamat IP virtual yang akan dikonfigurasi pada load balancer untuk proxy ingress. Gunakan nilai default,10.200.0.51
, yang ada di jaringan10.200.0.0/24
yang dibuat oleh skrip. Perlu diperhatikan bahwa alamat IP ini berada dalam rentang alamat IP yang digunakan untuk kumpulan alamat load balancer MetalLB.lb_address_pools
: Daftar peta yang menentukan kumpulan alamat untuk load balancer MetalLB. Gunakan nilai default.
Simpan perubahan di
terraform.tfvars
.Lakukan inisialisasi dan buat paket Terraform:
terraform init
Terraform menginstal semua library yang diperlukan, seperti penyedia Google Cloud.
Tinjau konfigurasi dan buat perubahan jika diperlukan:
terraform plan
Terapkan paket Terraform untuk membuat cluster pengguna:
terraform apply
Perlu waktu 15 menit atau lebih untuk membuat cluster pengguna. Anda dapat melihat cluster di Konsol Google Cloud di halaman Cluster GKE.
Menghubungkan ke cluster pengguna
Saat Anda membuat cluster pengguna menggunakan konsol atau gcloud CLI, cluster akan dikonfigurasikan dengan kebijakan kontrol akses berbasis peran (RBAC) Kubernetes yang sama dengan yang Anda konfigurasikan untuk cluster admin saat menjalankan gcloud container fleet memberships generate-gateway-rbac
.
Dengan kebijakan RBAC ini, Anda dapat terhubung ke cluster menggunakan Google Cloud Identity, yaitu alamat email yang terkait dengan akun Google Cloud Anda. Kebijakan RBAC ini memungkinkan Anda login ke konsol
tanpa konfigurasi tambahan.
Menghubungkan ke cluster di konsol
Jika Anda menggunakan gcloud CLI atau Terraform untuk membuat cluster pengguna, buka halaman GKE clusters di konsol:
Pastikan project tempat Anda membuat cluster pengguna dipilih. Anda akan melihat admin dan cluster pengguna dalam daftar.
Perhatikan bahwa cluster pengguna memiliki Bare metal: User di kolom Type. Hal ini menunjukkan bahwa cluster dikelola oleh GKE On-Prem API.
Jika Anda menggunakan skrip untuk membuat cluster admin, skrip ini memiliki External di kolom Type. Hal ini menunjukkan bahwa cluster tidak dikelola oleh GKE On-Prem API. Anda dapat mengonfigurasi cluster admin agar dikelola oleh GKE On-Prem API setelah cluster dibuat.
Untuk login ke cluster:
Klik link pada nama cluster, lalu klik Login di panel samping.
Pilih Gunakan identitas Google Anda untuk login.
Klik Login.
Ulangi langkah yang sama untuk login juga ke cluster admin.
Menghubungkan ke cluster di command line
GKE On-Prem API mengonfigurasi kebijakan RBAC untuk Anda sebagai pembuat cluster pengguna. Kebijakan ini memungkinkan Anda menjalankan perintah kubectl
di desktop lokal
menggunakan gateway kubeconfig
koneksi.
Dari komputer lokal Anda:
Dapatkan entri
kubeconfig
yang dapat mengakses cluster melalui gateway koneksi.gcloud container fleet memberships get-credentials USER_CLUSTER_NAME
Outputnya mirip dengan hal berikut ini:
Starting to build Gateway kubeconfig... Current project_id: PROJECT_ID A new kubeconfig entry "connectgateway_PROJECT_ID_global_USER_CLUSTER_NAME" has been generated and set as the current context.
Anda kini dapat menjalankan perintah
kubectl
melalui gateway koneksi:kubectl get nodes
Outputnya mirip dengan hal berikut ini:
NAME STATUS ROLES AGE VERSION abm-user-cluster-cp Ready control-plane,master 14m v1.24.2-gke.1900 abm-user-cluster-w1 Ready worker 8m28s v1.24.2-gke.1900
Menambahkan kumpulan node lain ke cluster pengguna
Konsol
Di konsol, buka halaman Cluster GKE.
Di daftar cluster, klik nama cluster, lalu klik Detail selengkapnya di panel Detail.
Klik tab Nodes.
Klik
Add Node Pool.Masukkan nama untuk kumpulan node.
Di kolom Nodes address 1, masukkan alamat IP berikut:
10.200.0.6
Ini adalah alamat IP VM abm-user-cluster-w2 yang dibuat skrip.
Klik Buat
Klik tab Nodes lagi jika diperlukan.
Kumpulan node baru menampilkan status Rekonsiliasi.
Klik
di pojok kanan atas untuk melihat status pembuatan kumpulan node. Anda mungkin harus memuat ulang halaman untuk melihat status yang diperbarui dalam daftar node pool.
gcloud CLI
Jalankan perintah berikut untuk membuat node pool lainnya. Ganti
NODE_POOL_NAME_2
dengan nama untuk kumpulan node, dan
pastikan placeholder untuk flag --cluster
masih ditetapkan ke nama
cluster pengguna.
gcloud container bare-metal node-pools create NODE_POOL_NAME_2 \ --cluster=USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION \ --node-configs='node-ip=10.200.0.6'
-node-configs
: Nilai yang ditetapkan kenode-ip
adalah alamat IP VM abm-user-cluster-w2 di VXLAN yang dibuat oleh skrip.
Terraform
Jika Anda membuat cluster menggunakan Terraform, cluster tersebut dibuat dengan dua node, sehingga tidak ada VM tambahan di VXLAN yang tersedia untuk menambahkan node lain. Untuk mengetahui informasi tentang cara menambahkan node pool, lihat dokumentasi referensi google_gkeonprem_bare_metal_cluster
.
Anda juga dapat memverifikasi node baru menggunakan kubectl
. Pertama-tama, Anda harus menjalankan
perintah gcloud container fleet memberships get-credentials
seperti yang ditunjukkan
di atas untuk mengambil konfigurasi cluster:
kubectl get nodes
Outputnya mirip dengan hal berikut ini:
NAME STATUS ROLES AGE VERSION
abm-user-cluster-cp Ready control-plane,master 24m v1.24.2-gke.1900
abm-user-cluster-w1 Ready worker 18m v1.24.2-gke.1900
abm-user-cluster-w2 Ready worker 52s v1.24.2-gke.1900
Pembersihan
Bagian berikut berisi petunjuk untuk menghapus cluster dan VM yang Anda buat dengan panduan ini.
Hapus cluster pengguna
Konsol
Di konsol, buka halaman Cluster GKE.
Di daftar cluster, klik cluster pengguna.
Di panel Details, klik More details.
Di dekat bagian atas jendela, klik
Hapus.Saat diminta untuk mengonfirmasi, masukkan nama cluster dan klik Konfirmasi.
Klik
di pojok kanan atas untuk melihat status penghapusan. Anda mungkin harus memuat ulang halaman untuk memperbarui daftar cluster.
gcloud CLI
Jalankan perintah berikut untuk menghapus cluster:
gcloud container bare-metal clusters delete USER_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION \ --force
Flag --force
memungkinkan Anda menghapus cluster yang memiliki kumpulan node.
Tanpa flag --force
, Anda harus
menghapus kumpulan node
terlebih dahulu, lalu menghapus cluster.
Untuk mengetahui informasi tentang flag lainnya, lihat gcloud container bare-metal clusters delete.
Terraform
Jalankan perintah berikut:
terraform destroy
Tunggu hingga cluster pengguna dihapus sebelum menghapus cluster admin dan VM.
Menghapus cluster admin dan VM
Batalkan pendaftaran cluster admin dari GKE On-Prem API:
gcloud container bare-metal admin-clusters unenroll ADMIN_CLUSTER_NAME \ --project=PROJECT_ID \ --location=ON_PREM_API_REGION
Hubungkan ke workstation admin:
gcloud compute ssh root@abm-ws --zone ZONE
Hapus cluster admin:
bmctl reset -c ADMIN_CLUSTER_NAME
bmctl
akan membatalkan pendaftaran cluster dari fleet, lalu menghapus cluster. Tunggu hingga cluster dihapus sebelum menghapus VM.Keluar dari workstation admin.
Cantumkan semua VM yang memiliki
abm
dalam namanya:gcloud compute instances list | grep 'abm'
Pastikan Anda tidak keberatan menghapus semua VM yang berisi
abm
dalam namanya.Setelah terverifikasi, Anda dapat menghapus VM
abm
dengan menjalankan perintah berikut:gcloud compute instances list --format="value(name)" | \ grep 'abm' | \ xargs gcloud --quiet compute instances delete --zone ZONE
Hapus akun layanan:
gcloud iam service-accounts delete baremetal-gcr@PROJECT_ID.iam.gserviceaccount.com
Pada dialog konfirmasi, masukkan y.
Langkah selanjutnya