Halaman ini menunjukkan cara menyiapkan cluster campuran dalam mode ketersediaan tinggi (HA) menggunakan Virtual Machine (VM) yang berjalan di Compute Engine.
Anda dapat mencoba Google Distributed Cloud khusus software dengan cepat dan tanpa perlu menyiapkan hardware apa pun. Dengan menyelesaikan langkah-langkah di halaman ini, Anda akan mendapatkan lingkungan pengujian yang berfungsi dan berjalan di Compute Engine.
Untuk mencoba Google Distributed Cloud khusus software di VM Compute Engine, selesaikan langkah-langkah berikut:
- Membuat enam VM di Compute Engine
- Membuat jaringan
vxlan
di antara semua VM dengan konektivitas L2 - Menginstal prasyarat untuk Google Distributed Cloud
- Men-deploy cluster hybrid
- Memverifikasi cluster
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 Anda memilih project yang sudah ada, pastikan Anda adalah pemilik project atau editor.
-
Di workstation Linux, pastikan Anda telah menginstal Google Cloud CLI terbaru, alat command line untuk berinteraksi dengan Google Cloud. Jika Anda sudah menginstal gcloud CLI, update komponennya dengan menjalankan perintah berikut:
gcloud components update
Bergantung pada cara penginstalan gcloud CLI, Anda mungkin melihat pesan berikut:
"You cannot perform this action because the Google Cloud CLI component manager is disabled for this installation. You can run the following command to achieve the same result for this installation:"
Ikuti petunjuk untuk menyalin dan menempelkan perintah guna mengupdate komponen.
Langkah-langkah dalam panduan ini diambil dari skrip penginstalan di repositori anthos-samples
. Bagian FAQ
memiliki informasi selengkapnya tentang cara menyesuaikan skrip ini agar berfungsi dengan beberapa variasi
populer.
Membuat enam VM di Compute Engine
Selesaikan langkah-langkah berikut untuk membuat VM berikut:
- Satu VM untuk workstation admin. Workstation admin menghosting alat antarmuka command line (CLI) dan file konfigurasi untuk menyediakan cluster selama penginstalan, serta alat CLI untuk berinteraksi dengan cluster yang disediakan setelah penginstalan. Workstation admin akan memiliki akses ke semua node lain di cluster menggunakan SSH.
- Tiga VM untuk tiga node bidang kontrol yang diperlukan untuk menjalankan bidang kontrol Google Distributed Cloud.
- Dua VM untuk dua node pekerja yang diperlukan untuk menjalankan workload di cluster Google Distributed Cloud.
Menyiapkan variabel lingkungan:
export PROJECT_ID=PROJECT_ID export ZONE=ZONE export CLUSTER_NAME=CLUSTER_NAME export BMCTL_VERSION=1.30.300-gke.84
Untuk
ZONE
, Anda dapat menggunakanus-central1-a
atau salah satu zona Compute Engine lainnya .Jalankan perintah berikut untuk login dengan Akun Google Anda dan menetapkan project sebagai default:
gcloud auth login gcloud config set project $PROJECT_ID gcloud config set compute/zone $ZONE
Buat kunci dan akun layanan
baremetal-gcr
:Aktifkan API dan layanan Google Cloud:
Berikan izin tambahan ke akun layanan
baremetal-gcr
agar tidak memerlukan beberapa akun layanan untuk API dan layanan yang berbeda:Buat variabel dan array yang diperlukan untuk semua perintah di halaman ini:
Gunakan loop berikut untuk membuat enam VM:
Perintah ini akan membuat instance VM dengan nama berikut:
- abm-ws: VM untuk workstation admin.
- abm-cp1, abm-cp2, abm-cp3: VM untuk node control plane.
- abm-w1, abm-w2: VM untuk node yang menjalankan beban kerja.
Gunakan loop berikut untuk memverifikasi bahwa SSH siap di semua VM:
Membuat jaringan vxlan
dengan konektivitas L2 antar-VM
Gunakan fungsi vxlan
standar Linux untuk membuat jaringan yang menghubungkan semua VM dengan konektivitas L2.
Perintah berikut berisi dua loop yang melakukan tindakan berikut:
- Gunakan SSH untuk mengakses setiap VM.
- Update dan instal paket yang diperlukan.
Jalankan perintah yang diperlukan untuk mengonfigurasi jaringan dengan
vxlan
.
Sekarang Anda memiliki konektivitas L2 dalam jaringan 10.200.0.0/24. VM memiliki alamat IP berikut:
- VM workstation admin: 10.200.0.2
- VM yang menjalankan node bidang kontrol:
- 10.200.0.3
- 10.200.0.4
- 10.200.0.5
- VM yang menjalankan node pekerja:
- 10.200.0.6
- 10.200.0.7
Menginstal prasyarat untuk Google Distributed Cloud
Anda perlu menginstal alat berikut di workstation admin sebelum menginstal Google Distributed Cloud:
bmctl
kubectl
- Docker
Untuk menginstal alat dan menyiapkan penginstalan Google Distributed Cloud:
Jalankan perintah berikut untuk mendownload kunci akun layanan ke workstation admin dan menginstal alat yang diperlukan:
Jalankan perintah berikut untuk memastikan
root@10.200.0.x
berfungsi. Perintah ini melakukan tugas berikut:- Buat kunci SSH baru di workstation admin.
- Tambahkan kunci publik ke semua VM lain dalam deployment.
Men-deploy cluster hybrid
Blok kode berikut berisi semua perintah dan konfigurasi yang diperlukan untuk menyelesaikan tugas berikut:
- Buat file konfigurasi untuk cluster hybrid yang diperlukan.
- Jalankan pemeriksaan pra-penerbangan.
- Deploy cluster.
Memverifikasi cluster
Anda dapat menemukan file kubeconfig
cluster di workstation admin di
direktori bmctl-workspace
akun root. Untuk memverifikasi deployment,
selesaikan langkah-langkah berikut.
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 untuk 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=CLUSTER_NAME export KUBECONFIG=$HOME/bmctl-workspace/$clusterid/$clusterid-kubeconfig kubectl get nodes
Tetapkan konteks saat ini dalam variabel lingkungan:
export CONTEXT="$(kubectl config current-context)"
Jalankan perintah gcloud CLI berikut. Perintah ini:
- Memberikan peran
clusterrole/cluster-admin
Kubernetes ke akun pengguna Anda di cluster. - Mengonfigurasi cluster agar Anda dapat menjalankan perintah
kubectl
di komputer lokal tanpa harus menggunakan SSH ke workstation admin.
Ganti
GOOGLE_ACCOUNT_EMAIL
dengan alamat email yang terkait dengan akun Google Cloud Anda. Contoh:--users=alex@example.com
.gcloud container fleet memberships generate-gateway-rbac \ --membership=CLUSTER_NAME \ --role=clusterrole/cluster-admin \ --users=GOOGLE_ACCOUNT_EMAIL \ --project=PROJECT_ID \ --kubeconfig=$KUBECONFIG \ --context=$CONTEXT\ --apply
Output perintah ini mirip dengan berikut ini, yang dipangkas 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/CLUSTER_NAME/CLUSTER_NAME-kubeconfig, context: CLUSTER_NAME-admin@CLUSTER_NAME Writing RBAC policy for user: GOOGLE_ACCOUNT_EMAIL to cluster. Successfully applied the RBAC policy to cluster.
- Memberikan peran
Setelah selesai bereksplorasi, masukkan exit untuk logout dari workstation admin.
Dapatkan entri
kubeconfig
yang dapat mengakses cluster melalui Connect gateway.gcloud container fleet memberships get-credentials 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_CLUSTER_NAME" has been generated and set as the current context.
Sekarang Anda dapat menjalankan perintah
kubectl
melalui gateway connect:kubectl get nodes kubectl get namespaces
Login ke cluster Anda dari Konsol Google Cloud
Untuk mengamati beban kerja di cluster Anda di konsol Google Cloud, Anda harus login ke cluster. Sebelum login ke konsol untuk pertama kalinya, Anda perlu mengonfigurasi metode autentikasi. Metode autentikasi yang paling mudah dikonfigurasi adalah identitas Google. Metode autentikasi ini memungkinkan Anda login menggunakan alamat email yang terkait dengan akun Google Cloud Anda.
Perintah gcloud container fleet memberships generate-gateway-rbac
yang
Anda jalankan di bagian sebelumnya mengonfigurasi cluster sehingga Anda dapat login
dengan identitas Google Anda.
Di konsol Google Cloud, buka halaman Cluster GKE.
Klik
Tindakan di samping cluster terdaftar, lalu klik Login.Pilih Gunakan identitas Google Anda untuk login.
Klik Login.
Pembersihan
Hubungkan ke workstation admin untuk mereset VM cluster ke statusnya sebelum penginstalan dan membatalkan pendaftaran cluster dari project Google Cloud Anda:
gcloud compute ssh root@abm-ws --zone ${ZONE} << EOF set -x export clusterid=CLUSTER_NAME bmctl reset -c \$clusterid EOF
Cantumkan semua VM yang memiliki
abm
dalam namanya:gcloud compute instances list | grep 'abm'
Pastikan Anda tidak keberatan untuk menghapus semua VM yang berisi
abm
dalam namanya.Setelah memverifikasi, Anda dapat menghapus VM
abm
dengan menjalankan perintah berikut:gcloud compute instances list --format="value(name)" | grep 'abm' | xargs gcloud \ --quiet compute instances delete