Halaman ini menunjukkan cara menyiapkan cluster hybrid 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 harus menyiapkan hardware apa pun. Dengan menyelesaikan langkah-langkah di halaman ini, Anda akan memiliki 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
vxlanantara semua VM dengan konektivitas L2 - Menginstal prasyarat untuk Google Distributed Cloud
- Men-deploy cluster hybrid
- Memverifikasi cluster Anda
Sebelum memulai
- Login keakun Anda. Google Cloud Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- Catat ID project 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 Anda, pastikan Anda telah menginstal
Google Cloud CLI terbaru, alat command line untuk
berinteraksi dengan Google Cloud. Jika Anda sudah menginstal gcloud CLI
terinstal, update komponennya dengan menjalankan perintah berikut:
gcloud components update
Bergantung pada cara gcloud CLI diinstal, 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 menempel perintah untuk mengupdate komponen.
Langkah-langkah dalam panduan ini diambil dari skrip penginstalan di
anthos-samples
repositori. 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.35.300-gke.87Untuk
ZONE, Anda dapat menggunakanus-central1-aatau salah satu zona Compute Engine lainnya .Jalankan perintah berikut untuk login dengan Akun Google Anda dan menetapkan project Anda sebagai default:
gcloud auth login gcloud config set project $PROJECT_ID gcloud config set compute/zone $ZONEBuat akun layanan dan kunci
baremetal-gcr:Mengaktifkan Google Cloud API dan layanan:
Berikan izin tambahan ke akun layanan
baremetal-gcragar 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 membuat instance VM dengan nama berikut:
- abm-ws: VM untuk workstation admin.
- abm-cp1, abm-cp2, abm-cp3: VM untuk node bidang kontrol.
- abm-w1, abm-w2: VM untuk node yang menjalankan workload.
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:
- Menggunakan SSH untuk mengakses setiap VM.
- Mengupdate dan menginstal paket yang diperlukan.
Menjalankan perintah yang diperlukan untuk mengonfigurasi jaringan dengan
vxlan.
Anda kini 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 harus menginstal alat berikut di workstation admin sebelum menginstal Google Distributed Cloud:
bmctlkubectl- Docker
Untuk menginstal alat dan bersiap untuk 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 bahwa
root@10.200.0.xberfungsi. Perintah ini melakukan tugas berikut:- Membuat kunci SSH baru di workstation admin.
- Menambahkan kunci publik ke semua VM lainnya dalam deployment.
Men-deploy cluster hybrid
Blok kode berikut berisi semua perintah dan konfigurasi yang diperlukan untuk menyelesaikan tugas berikut:
- Membuat file konfigurasi untuk cluster hybrid yang diperlukan.
- Menjalankan pemeriksaan pra-penerbangan.
- Men-deploy cluster.
Memverifikasi cluster Anda
Anda dapat menemukan file kubeconfig cluster di workstation admin di direktori bmctl-workspace akun root. Untuk memverifikasi deployment Anda, 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 Anda berencana menyimpan VM sebagai lingkungan pengujian, sebaiknya update OS atau upgrade ke rilis berikutnya seperti yang dijelaskan dalam dokumentasi Ubuntu.
Tetapkan variabel lingkungan
KUBECONFIGdengan jalur ke file konfigurasi cluster untuk menjalankan perintahkubectldi cluster.export clusterid=CLUSTER_NAME export KUBECONFIG=$HOME/bmctl-workspace/$clusterid/$clusterid-kubeconfig kubectl get nodesTetapkan konteks saat ini dalam variabel lingkungan:
export CONTEXT="$(kubectl config current-context)"Jalankan perintah gcloud CLI berikut. Perintah ini:
- Memberikan peran
clusterrole/cluster-adminKubernetes ke akun pengguna Anda di cluster. - Mengonfigurasi cluster sehingga Anda dapat menjalankan perintah
kubectldi komputer lokal tanpa harus melakukan SSH ke workstation admin.
Ganti
GOOGLE_ACCOUNT_EMAILdengan alamat email yang terkait dengan Google Cloud akun Anda. Misalnya:--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\ --applyOutput 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 menjelajahi, masukkan exit untuk logout dari workstation admin.
Dapatkan entri
kubeconfigyang dapat mengakses cluster melalui gateway Connect.gcloud container fleet memberships get-credentials CLUSTER_NAMEOutputnya 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.Anda kini dapat menjalankan perintah
kubectlmelalui gateway Connect:kubectl get nodes kubectl get namespaces
Login ke cluster Anda dari Google Cloud konsol
Untuk mengamati workload di cluster Anda di Google Cloud konsol, Anda harus login ke cluster. Sebelum login ke konsol untuk pertama kalinya, Anda harus mengonfigurasi metode autentikasi. Metode autentikasi termudah untuk dikonfigurasi adalah identitas Google. Metode autentikasi ini memungkinkan Anda login menggunakan alamat email yang terkait dengan Google Cloud akun 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 Google Cloud konsol, buka halaman GKE Clusters.
Klik Actions di samping cluster terdaftar, lalu klik Login.
Pilih Use your Google identity to log in.
Klik Login.
Pembersihan
Hubungkan ke workstation admin untuk mereset VM cluster ke statusnya sebelum penginstalan dan batalkan pendaftaran cluster dari Google Cloud project Anda:
gcloud compute ssh root@abm-ws --zone ${ZONE} << EOF set -x export clusterid=CLUSTER_NAME bmctl reset -c \$clusterid EOFCantumkan semua VM yang memiliki
abmdalam namanya:gcloud compute instances list | grep 'abm'Pastikan Anda tidak keberatan menghapus semua VM yang berisi
abmdalam nama.Setelah memverifikasi, Anda dapat menghapus VM
abmdengan menjalankan perintah berikut:gcloud compute instances list --format="value(name)" | grep 'abm' | xargs gcloud \ --quiet compute instances delete