1. מבוא
ב-Codelab הזה נדגים איך פורסים אשכול של AlloyDB Omni עם זמינות גבוהה (HA) במכונות וירטואליות (VM) של Google Compute Engine (GCE). בסוף שיעור ה-Codelab הזה, תספקו ארכיטקטורת עזר של HA שכוללת 3 צמתי מסד נתונים ו-2 צמתי HAProxy, יחד עם צומת בקרה לפעולות ניהול.
דרישות מוקדמות
- גישה לפרויקט ב-Google Cloud ול-Cloud Shell מ-Cloud Console.
- ה-SDK של Google Cloud (
gcloud) מותקן ומוגדר. פרטים על התקנת gcloud זמינים במאמר gcloud-install. - Terraform v1.9.8 מותקן.
מה תלמדו
- איך יוצרים ומכינים מכונות וירטואליות של GCE ל-AlloyDB Omni.
- איך מתקינים ומריצים את AlloyDB Omni RPM Orchestrator.
- איך מתקינים ומגדירים חבילות AlloyDB Omni RPM לארכיטקטורת הפניה של HA.
מה תצטרכו
- מקבלים קישור לכתובת URL של חבילות RPM של AlloyDB Omni ושל כלי ה-RPM Orchestrator. לשם כך, צריך למלא את טופס ההרשמה ל-AlloyDB Omni. הקישורים נשלחים לכתובת האימייל שלכם, שהיא כתובת השרת של מאגר ה-URL. כדי שכתובות ה-URL יהיו זמינות במהלך ה-codelab, מאתחלים את משתני הסביבה הבאים.
export ORCHESTRATOR_ANSIBLE_COLLECTION_PATH="..." export ALLOYDB_OMNI_REPOSITORY_URL="..." export ALLOYDB_OMNI_ORCHESTRATOR_REPOSITORY_URL="..." export ALLOYDB_OMNI_COMMON_REPOSITORY_URL=.... export ETCD_REPOSITORY_URL="..." - טרמינל פעיל עם גישה לסטאק הפריסה של AlloyDB Omni. למטרה הזו אפשר להשתמש ב-Cloud Shell.
2. הגדרה ודרישות
הגדרת פרויקט
יצירת פרויקט ב-Google Cloud
- במסוף Google Cloud, בדף לבחירת הפרויקט, בוחרים פרויקט ב-Google Cloud או יוצרים פרויקט.
- הקפידו לוודא שהחיוב מופעל בפרויקט שלכם ב-Cloud. כך בודקים אם החיוב מופעל בפרויקט
מפעילים את Cloud Shell
אפשר להפעיל את Google Cloud מרחוק מהמחשב הנייד, אבל ב-Codelab הזה נשתמש ב-Google Cloud Shell, סביבת שורת פקודה שפועלת בענן.
ב-מסוף Google Cloud, לוחצים על סמל Cloud Shell בסרגל הכלים שבפינה הימנית העליונה:

אפשר גם ללחוץ על G ואז על S. אם אתם במסוף Google Cloud, או אם אתם משתמשים בקישור הזה, הרצף הזה יפעיל את Cloud Shell.
הקצאת המשאבים והחיבור לסביבה יימשכו רק כמה רגעים. בסיום התהליך, אמור להופיע משהו כזה:

המכונה הווירטואלית הזו כוללת את כל הכלים שדרושים למפתחים. יש בה ספריית בית בנפח מתמיד של 5GB והיא פועלת ב-Google Cloud, מה שמשפר מאוד את הביצועים והאימות ברשת. אפשר לבצע את כל העבודה ב-codelab הזה בדפדפן. לא צריך להתקין שום דבר.
3. יצירת מכונות וירטואליות ב-Google Cloud Compute Engine
הכנת סקריפטים של Terraform
- מגדירים משתני סביבה למזהה הפרויקט ולשם הרצוי של האשכול. תשתמשו בהם לאורך כל ה-codelab.
הערה: מזהה הפרויקט ב-Google Cloud צריך להיות באורך של 6 עד 30 תווים בלבד. מידע נוסף זמין בכתובת https://docs.cloud.google.com/resource-manager/docs/creating-managing-projects#before_you_beginexport PROJECT="your-project-id" export CLUSTER="your-cluster-name" - מוודאים שנכנסתם לחשבון משתמש ב-Google Cloud.
gcloud auth login - יוצרים ספריית עבודה לפריסה ומעתיקים את קובצי התצורה הנדרשים של Terraform ממקור המאגר.
mkdir -p ~/alloydb-omni/$PROJECT/$CLUSTER cd ~/alloydb-omni/$PROJECT/$CLUSTER gcloud storage cp gs://alloydb-omni-install/rpm-orchestrator/gce/terraform/*.tf . - יוצרים קובץ
terraform.tfvarsכדי לציין את הפרמטרים הנדרשים בהתאם לארכיטקטורת ההפניה, לפי התוכן הבא:cat > terraform.tfvars <<EOF # Required instance counts for reference architecture db_instance_count = 3 haproxy_instance_count = 2 control_instance_count = 1 # Optional: Customize if needed with the below variables # os_image = "rocky-linux-cloud/rocky-linux-9" # zone = "us-west4-c" # region_1 = "us-west4" # db_instance_type = "c4-highmem-4" # db_disk_type = "hyperdisk-balanced" # db_data_size = "50" # GB # data_dir = "/data" EOF
הפעלת סקריפטים של Terraform ואימות
- עכשיו אפשר להקצות את המכונות הווירטואליות.
terraform init - לפני שיוצרים מכונות וירטואליות, צריך לוודא שיש לכם את הגישה הנדרשת ליצירת מכונות וירטואליות ומשאבים אחרים. לסיכום, תצטרכו את ההרשאות הבאות.
roles/compute.admin roles/iam.roleAdmin roles/compute.osAdminLogin roles/iam.serviceAccountCreator roles/iam.serviceAccountUser roles/artifactregistry.repoAdmin roles/storage.objectUser roles/resourcemanager.projectIamAdmin roles/serviceusage.serviceUsageAdmin - מאמתים את ההגדרה ומחילים אותה כדי להקצות את המשאבים.
הערה: חשוב לוודא שאתם משתמשים ב-Terraform v1.9.8, כפי שמצופה בהגדרות הפריסה.terraform validate terraform apply --auto-approve - אחרי ש-Terraform מסיים, מוודאים שהמכונות הווירטואליות נוצרו בהצלחה על ידי הצגת רשימת המופעים שנוצרו באמצעות
gcloud. יוצגו מופעים שמתאימים ל-3 צמתי מסד הנתונים, ל-2 צמתי HAProxy ולמכונת ה-VM של הבקרה ולאזורים המתאימים. מציינים את האזור של צומת הבקרה. נצטרך את זה בהמשך ה-codelab.gcloud compute instances list --filter="name~$CLUSTER" --project=$PROJECTexport ZONE=$(gcloud compute instances list \ --filter="name=$CLUSTER-control" \ --format="value(zone)" --project=$PROJECT)
4. הכנת המכונות הווירטואליות לפריסה
צריך ליצור סשן SSH לצומת הבקרה ולבצע את השלבים להפעלת גישת SSH לכל המכונות הווירטואליות (שנקראות גם צמתים).
- מוודאים שמשתני הסביבה של הפרויקט והאשכול מוגדרים.
export PROJECT="your-project-id" export CLUSTER="your-cluster-name" - יוצרים מפתח SSH ומוסיפים אותו כדי להתחבר למכונת ה-VM של הבקרה.
# Replace values with your specific GCP project, cluster and zone details ssh-keygen -t ed25519 -f $HOME/.ssh/google_compute_engine gcloud compute os-login ssh-keys add --key-file=$HOME/.ssh/google_compute_engine.pub --project=$PROJECT - יוצרים כלל חומת אש שמאפשר חיבורי SSH וגם תעבורת VRRP.
gcloud compute config-ssh --project=$PROJECT gcloud compute firewall-rules create $CLUSTER-allow-ssh --network=$CLUSTER --project=$PROJECT --direction=INGRESS --action=allow --rules=tcp:22 --source-ranges="0.0.0.0/0" gcloud compute firewall-rules create $CLUSTER-allow-vrrp --network=$CLUSTER --project=$PROJECT --allow=112 --source-ranges="0.0.0.0/0" - מתחברים למכונת הבקרה הווירטואלית באמצעות SSH:
gcloud compute ssh "$CLUSTER-control" --zone=$ZONE --project=$PROJECT - יוצרים קבוצת Linux בצומת הבקרה עם אותו שם כמו שם המשתמש:
sudo groupadd $(id -un) sudo usermod -aG $(id -un) $(id -un) - הגדרת Terraform יוצרת כמה סקריפטים להגדרה ומעבירה אותם לספרייה
/tmp/של המכונה הווירטואלית של הבקרה, שכוללת פרטים כמו שם האשכול, חשבון השירות, שם הפרויקט וכו'. צריך ליצור גישת SSH ללא סיסמה מצמתי הבקרה לכל צמתי האשכול באמצעות סקריפטים להגדרה בצומת הבקרה. חשוב: כדאי לרשום את המשתמש service_account. נשתמש בזה כ-SSH_USER בהמשך ה-codelab הזה./tmp/setup-ssh-for-cluster.sh - בשיעור Codelab הזה, אפשר להשבית את SELinux בכל הצמתים. סקריפט Terraform מוסיף את /tmp/run-all.sh, שאפשר להשתמש בו למטרה הזו.
/tmp/run-all.sh sudo setenforce 0 - אם נרשמתם ל-AlloyDB Omni וקיבלתם את הקישורים, הגיע הזמן להוסיף את כתובות ה-URL האלה גם למשתני הסביבה.
בוחרים כתובת IP וירטואלית לסביבה מתוך משתנה הקלט cidr_range בקובץcat >> ~/.codelab.env <<EOF export ORCHESTRATOR_ANSIBLE_COLLECTION_PATH="..." export ALLOYDB_OMNI_REPOSITORY_URL="..." export ALLOYDB_OMNI_ORCHESTRATOR_REPOSITORY_URL="..." export ALLOYDB_OMNI_COMMON_REPOSITORY_URL=.... export ETCD_REPOSITORY_URL="..." EOFterraform/variables.tfכך שלא תהיה התנגשות עם הצמתים האחרים, כמו בדוגמה הבאה:cat >> ~/.codelab.env <<EOF export VIRTUAL_IP="10.1.0.50" EOF
5. התקנת רכיבי תוכנה נדרשים בכל המכונות הווירטואליות
השלב הבא הוא להתקין את רכיבי התוכנה הנדרשים במכונות הווירטואליות. אפשר לתאם את הפעולה הזו בצומת הבקרה. צריך להריץ את כל הפקודות הבאות בצומת הבקרה.
- מתחברים למכונה הווירטואלית של אמצעי הבקרה באמצעות SSH, אם היא לא נמצאת כבר בצומת הבקרה.
אחרי שמגיעים להנחיית ה-SSH של מכונת הבקרה הווירטואלית, מפעילים את קובץ הסביבה של המקור.gcloud compute ssh "$CLUSTER-control" --zone=$ZONE --project=$PROJECTsource ~/.codelab.env - בצומת הבקרה, מתקינים את Ansible ואת ספריות Python הנדרשות.
sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm -y sudo dnf install -y ansible sudo dnf install -y python3-grpcio python3-protobuf python3-googleapis-common-protos python3-grpcio-status - לאחר מכן, מורידים את קובץ ה-tar של אוסף RPM Orchestrator Ansible ומתקינים אותו.
הערה: מוודאים שבסוף המשתנה ORCHESTRATOR_ANSIBLE_COLLECTION_PATH מופיע '/'.gcloud storage cp "gs://${ORCHESTRATOR_ANSIBLE_COLLECTION_PATH#https://storage.googleapis.com/}google-alloydbomni_orchestrator-*.tar.gz" . ansible-galaxy collection install google-alloydbomni_orchestrator-0.1.0-6.tar.gz ansible-galaxy collection list | grep alloydbomni_orchestrator - הכלי לניהול תהליכים משתמש בקובץ מפרט פריסה בפורמט מלאי של Ansible כדי להבין את הטופולוגיה של האשכול. יוצרים קובץ בשם deployment_spec.yaml עם פרטי הצומת בצומת הבקרה.
הערה: חשוב לבדוק את הקובץ שנוצר כדי לוודא שהוא מתייחס לערכים תקינים.cat > deployment_spec.yaml <<EOF alloydbomni: vars: cluster_manager: name: "$CLUSTER" etcd: setup: true config_forcewrite: true alloydbomni: major_version: "18" repo_url: $ALLOYDB_OMNI_REPOSITORY_URL alloydbomni_monitor: repo_url: $ALLOYDB_OMNI_COMMON_REPOSITORY_URL alloydbomni_cluster_manager: repo_url: $ALLOYDB_OMNI_ORCHESTRATOR_REPOSITORY_URL alloydbomni_node_manager: repo_url: $ALLOYDB_OMNI_ORCHESTRATOR_REPOSITORY_URL pgbouncer: repo_url: $ALLOYDB_OMNI_COMMON_REPOSITORY_URL pgbackrest: repo_url: $ALLOYDB_OMNI_COMMON_REPOSITORY_URL children: primary_instance_nodes: hosts: $CLUSTER-db1: $CLUSTER-db2: $CLUSTER-db3: load_balancer_nodes: hosts: $CLUSTER-haproxy1: $CLUSTER-haproxy2: EOF - יוצרים playbook בשם install.yaml שמפנה לתפקיד ההתקנה מאוסף כלי התזמור.
הערה: חשוב לבדוק את הקובץ שנוצר כדי לוודא שהוא מתייחס לערכים תקינים.cat > install.yaml <<EOF - name: Install AlloyDB Omni cluster components hosts: all vars: ansible_become: true ansible_user: $SSH_USER ansible_ssh_private_key_file: $HOME/ssh-key-cluster-sa roles: - role: google.alloydbomni_orchestrator.install EOF - מריצים את מדריך ההפעלה באמצעות קובץ המלאי כדי להוריד ולהתקין את חבילות ה-RPM בכל הצמתים שצוינו.
ansible-playbook -i deployment_spec.yaml install.yaml
6. הפעלת אשכול AlloyDB Omni
בשלב הזה, התקנו את כל הרכיבים הנדרשים בכל הצמתים. אנחנו מוכנים להפעיל אשכול AlloyDB Omni.
- מתחברים למכונה הווירטואלית של אמצעי הבקרה באמצעות SSH, אם היא לא נמצאת כבר בצומת הבקרה.
אחרי שמגיעים להנחיית ה-SSH של מכונת הבקרה הווירטואלית, מפעילים את קובץ הסביבה של המקור.gcloud compute ssh "$CLUSTER-control" --zone=$ZONE --project=$PROJECTsource ~/.codelab.env - יוצרים גיבוב לסיסמה ורושמים אותו.
encoded_password=$(echo -n "your unique password" | base64) - כדי ליצור אשכול, AlloyDB Omni צריך לדעת איך להגדיר אותו. יוצרים שם קובץ dbcluster.yaml למפרטים של אשכול מסד הנתונים.
cat > dbcluster.yaml <<EOF Secret: metadata: name: db-pw-$CLUSTER spec: type: Opaque data: $CLUSTER: $encoded_password --- DBCluster: metadata: name: $CLUSTER spec: databaseVersion: 18.1.0 mode: "" availability: numberOfStandbys: 2 enableAutoFailover: true enableAutoHeal: true autoFailoverTriggerThreshold: 2 autoHealTriggerThreshold: 2 healthcheckPeriodSeconds: 5 replayReplicationSlotsOnStandbys: false primarySpec: adminUser: passwordRef: name: db-pw-$CLUSTER resources: cpu: 4 memory: 32Gi disks: - name: DataDisk path: $PGDATA dbLoadBalancerOptions: gcp: loadBalancerIP: "$VIRTUAL_IP" loadBalancerType: "internal" loadBalancerInterface: "eth0" EOF - יוצרים playbook בשם bootstrap.yaml, שיפנה לתפקיד bootstrap ansible ליצירת אשכול AlloyDB Omni.
cat > bootstrap.yaml <<EOF - name: Create DBCluster hosts: localhost vars: ansible_become: true ansible_user: $SSH_USER ansible_ssh_private_key_file: $HOME/ssh-key-cluster-sa roles: - role: google.alloydbomni_orchestrator.bootstrap EOF - הפעלת ספר ההדרכה ליצירת אשכול
ansible-playbook bootstrap.yaml -i deployment_spec.yaml -e resource_spec=dbcluster.yaml
7. (אופציונלי) הגדרת PgBouncer Connection Pooler
AlloyDB Omni תומך בניהול מאגר חיבורים קל משקל באמצעות PgBouncer. אפשר להגדיר את PgBouncer ולבצע אתחול שלו מיד אחרי הקצאת האשכול.
- יוצרים קובץ מפרט משאבים בשם pgbouncer.yaml שמקשר את מאגר החיבורים לאשכול מסד הנתונים:
cat > pgbouncer.yaml <<EOF PgBouncer: metadata: name: pgbouncer-pooler spec: dbclusterRef: $CLUSTER allowSuperUserAccess: true accessMode: "rw" port: 6432 EOF - מפעילים את מאגר PgBouncer באמצעות פקודת ה-playbook bootstrap.yaml שנוצרה קודם, ומעבירים את קובץ המפרט החדש:
ansible-playbook bootstrap.yaml -i deployment_spec.yaml -e resource_spec=pgbouncer.yaml
8. אימות של אשכול AlloyDB Omni
כדי לוודא שהאשכול פועל בצורה תקינה ושיש אליו גישה באמצעות מאזן העומסים, אפשר להתחבר אליו באמצעות לקוח PostgreSQL רגיל מצומת הבקרה.
- מתקינים את מאגר הלקוח ואת החבילה של PostgreSQL 18 בצומת הבקרה:
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm sudo dnf install -y postgresql18 - מתחברים לאשכול באמצעות כתובת ה-IP הווירטואלית שהוזמנה קודם. תתבקשו להזין את הסיסמה שקידדתם בקובץ dbcluster.yaml:
/usr/pgsql-18/bin/psql -h $VIRTUAL_IP -U postgres -W - אחרי החיבור, אפשר להריץ שאילתות SQL בסיסיות כדי לוודא מה מצב האשכול. לדוגמה, אפשר לבדוק את גרסת מסד הנתונים:
הפלט אמור להראות ש-PostgreSQL 18 פועל עם AlloyDB Omni. מקלידיםpostgres=# SELECT version();\qכדי לצאת מההנחיה.
9. (אופציונלי) גיבוי נתונים באמצעות pgBackRest
AlloyDB Omni משתלב עם pgBackRest כדי לנהל גיבויים ישירות ל-Cloud Storage. אתם יכולים להגדיר תוכנית גיבוי ולהפעיל גיבוי לפי דרישה לקטגוריית GCS שנוצרה על ידי הגדרת Terraform.
- יוצרים קובץ הגדרות של תוכנית גיבוי בשם backup_plan.yaml שמצביע על קטגוריית GCS שהוקצתה:
cat > backup_plan.yaml <<EOF BackupPlan: metadata: name: pgb-plan spec: dbclusterRef: $CLUSTER backupLocation: type: GCS gcsOptions: bucket: $CLUSTER-gcs-backups key: /backups EOF - יוצרים פלייבוק של Ansible בשם backup.yaml שמפנה לתפקיד ניהול הגיבוי:
cat > backup.yaml <<EOF - name: Manage AlloyDB Omni Backups hosts: localhost vars: ansible_become: true ansible_user: $SSH_USER ansible_ssh_private_key_file: $HOME/ssh-key-cluster-sa roles: - role: google.alloydbomni_orchestrator.backup EOF - מחילים את תוכנית הגיבוי באמצעות קובץ ה-playbook backup.yaml:
ansible-playbook backup.yaml -i deployment_spec.yaml -e resource_spec=backup_plan.yaml - אחרי שהתוכנית נוצרת בהצלחה, יוצרים קובץ משאב לגיבוי על פי דרישה בשם create_backup.yaml.
cat > create_backup.yaml <<EOF Backup: metadata: name: on-demand-backup spec: backupPlanRef: pgb-plan dbclusterRef: $CLUSTER EOF - מריצים את ה-playbook כדי להתחיל את הגיבוי:
ansible-playbook backup.yaml -i deployment_spec.yaml -e resource_spec=create_backup.yaml - כדי לאמת את סטטוס הגיבוי, יוצרים playbook של status.yaml:
- name: Fetch AlloyDB Omni Resource Status
hosts: localhost
vars:
ansible_become: true
ansible_user: $SSH_USER
ansible_ssh_private_key_file: $HOME/ssh-key-cluster-sa
roles:
- role: google.alloydbomni_orchestrator.status
EOF
- מריצים את ה-playbook כדי לרשום את כל הגיבויים:
ansible-playbook status.yaml -i deployment_spec.yaml -e resource_type=Backup
- לחלופין, כדי לקבל מידע מפורט על גיבוי ספציפי שנוצר קודם, מעבירים את
-e resource_name=on-demand-backup:
ansible-playbook status.yaml -i deployment_spec.yaml \
-e resource_type=Backup \
-e resource_name=on-demand-backup
10. משאבים לניקוי
כשמסיימים את הפריסה, אפשר להרוס את המשאבים שהוקצו כדי להימנע מחיובים.
- יוצרים פלייבוק בשם teardown.yaml:
cat > teardown.yaml <<EOF - name: Tear down AlloyDB Omni cluster hosts: localhost vars: ansible_become: true ansible_user: $SSH_USER ansible_ssh_private_key_file: $HOME/ssh-key-cluster-sa roles: - role: google.alloydbomni_orchestrator.delete EOF - מריצים את הפלייבוק באמצעות ansible-playbook. אם הגדרתם גיבויים, צריך קודם למחוק את משאבי הגיבוי והגיבוי המתוכנן:
אם הגדרתם את PgBouncer, צריך למחוק את משאב מאגר החיבורים:ansible-playbook teardown.yaml -i deployment_spec.yaml -e "resource_type=Backup" -e "resource_name=on-demand-backup" ansible-playbook teardown.yaml -i deployment_spec.yaml -e "resource_type=BackupPlan" -e "resource_name=pgb-plan" לאחר מכן, מציינים DBCluster כ-resource_type ומוחקים את אשכול מסד הנתונים עצמו:ansible-playbook teardown.yaml -i deployment_spec.yaml -e "resource_type=PgBouncer" -e "resource_name=pgbouncer-pooler"ansible-playbook teardown.yaml -i deployment_spec.yaml -e "resource_type=DBCluster" -e "resource_name=$CLUSTER" - אחרי שהאשכול נמחק, מתנתקים מצומת הבקרה, חוזרים למסוף ועוברים לספריית העבודה של Terraform.
הערה: אם התחברתם ל-Cloud Shell לאחרונה, צריך להגדיר את הפרטים הבאים:export PROJECT="your-project-id" export CLUSTER="your-cluster-name" - מוחקים את כלל חומת האש של VRRP ומכבים באופן סופי את המשאבים שמנוהלים על ידי Terraform:
gcloud compute firewall-rules delete -q "$CLUSTER-allow-vrrp" --project="$PROJECT" gcloud compute firewall-rules delete -q "$CLUSTER-allow-ssh" --project="$PROJECT" terraform destroy - מאשרים את ההשמדה כשמוצגת הבקשה. מכיוון שמשאבי רשת או מסלולים שנותרו עשויים למנוע מדי פעם את הפירוק המלא, כדאי להריץ את פקודות הניקוי הבטוחות הבאות כדי לוודא שכל כללי חומת האש, שערים של NAT, נתבים, מסלולים, רשתות משנה ורשתות משויכים יוסרו באופן מלא. מחליפים את
REGIONבאזור הפריסה הספציפי, לדוגמה, us-central1:# Delete any remaining firewall rules associated with the cluster gcloud compute firewall-rules list --project=$PROJECT 2> /dev/null | grep ^$CLUSTER- | cut -f1 -d' ' | \ while read rule; do gcloud compute firewall-rules delete --project=$PROJECT --quiet $rule; done # Delete the Cloud NAT gateway and router if they still exist gcloud compute routers nats describe $CLUSTER-nat-gw --router=$CLUSTER-router --region=REGION --project=$PROJECT 2>/dev/null \ && gcloud compute routers nats delete $CLUSTER-nat-gw --router=$CLUSTER-router --region=REGION --project=$PROJECT --quiet gcloud compute routers describe $CLUSTER-router --region=REGION --project=$PROJECT 2>/dev/null \ && gcloud compute routers delete $CLUSTER-router --region=REGION --project=$PROJECT --quiet # Delete any remaining custom routes gcloud compute routes list --project=$PROJECT --filter="network:$CLUSTER" --format="value(name)" 2>/dev/null | \ while read route; do gcloud compute routes delete --project=$PROJECT --quiet $route 2>/dev/null || true; done # Delete the subnet and network if they still exist gcloud compute networks subnets describe $CLUSTER --region=REGION --project=$PROJECT 2>/dev/null \ && gcloud compute networks subnets delete $CLUSTER --region=REGION --project=$PROJECT --quiet gcloud compute networks describe $CLUSTER --project $PROJECT 2> /dev/null \ && gcloud compute networks delete $CLUSTER --project $PROJECT --quiet
11. מזל טוב
כל הכבוד, סיימתם את ה-Codelab.
מה נכלל
- איך יוצרים ומכינים מכונות וירטואליות של GCE ל-AlloyDB Omni.
- איך מתקינים ומריצים את AlloyDB Omni RPM Orchestrator.
- איך מתקינים ומגדירים חבילות AlloyDB Omni RPM לארכיטקטורת הפניה של HA.
מידע נוסף על AlloyDB Omni זמין במאמרי העזרה.