1. Giriş
Bu codelab'de, RPM düzenleyiciyi kullanarak AlloyDB Omni için yüksek kullanılabilirlik (HA) kümesini S3 uyumlu nesne depolama alanına yedekleyeceksiniz.
Bu codelab'de, Compute Engine sanal makinelerinde (VM) yüksek kullanılabilirlik sağlayan bir küme oluşturmak için RPM Orchestrator kullanarak GCE VM'lerinde AlloyDB Omni yüksek kullanılabilirlik kümesi dağıtma adlı codelab'deki küme kullanılır. Bu codelab'de, sanal makinelerden birine S3 ile uyumlu bir nesne depolama sunucusu ekleyeceksiniz. Verileri yedeklemek ve kümeyi sunucudan geri yüklemek için YK kümesi için nesne depolama sunucusunu kullanırsınız.

Ön koşullar
- Faturalandırmanın etkin olduğu bir Google Cloud projesi.
- HA codelab'inde listelenen IAM rolleri.
- Linux komutları ve SQL hakkında temel düzeyde bilgi
Neler öğreneceksiniz?
- Yedeklemeler için S3 uyumlu bir nesne depolama sunucusunu yükleme ve çalıştırma
- Yedeklemeleri S3 uyumlu depolama alanına yazan bir yedekleme planı oluşturma
- İsteğe bağlı yedekleme oluşturma
- Bir kümeyi yedekten ve belirli bir zamana geri yükleme
Gerekenler
- AlloyDB Omni yazılım depolarının ve düzenleyici Ansible koleksiyonunun URL'leri. URL'leri almak için AlloyDB Omni kayıt formunu doldurun. Daha fazla bilgi için AlloyDB Omni using RPM overview (RPM kullanarak AlloyDB Omni'ye genel bakış) başlıklı makaleyi inceleyin. HA codelab'indeki URL'leri kullanıyorsanız.
- RPM Orchestrator kullanarak GCE VM'lerinde AlloyDB Omni yüksek kullanılabilirlik kümesi dağıtma adlı codelab'den bir AlloyDB Omni HA kümesi.
- Google Cloud'a ve Cloud Shell'e erişimi olan bir terminal.
2. Kurulum ve Gereksinimler
- Bu adımda, RPM Orchestrator kullanarak GCE VM'lerinde AlloyDB Omni yüksek kullanılabilirlik kümesi dağıtma adlı codelab'i kullanarak bir HA kümesi oluşturursunuz. Aşağıdaki adımları tamamlayın. Codelab'den zaten bir kümeniz varsa sonraki adıma geçin.
- Not: Bu aşamada "Kaynakları temizle" adımını uygulamayın. Bu adımı codelab'in sonunda gerçekleştireceksiniz.
- Bu codelab'e dönün
3. Kümeye bağlanma ve örneklenmiş veriler ekleme
Bu adımda, küme ayarlarını kontrol VM'sine yüklersiniz. Ardından kümeye bağlanır ve örneklenmiş veriler içeren bir tablo eklersiniz.
- Kontrol sanal makinesine bağlı değilseniz Cloud Shell'den bağlanın:
gcloud compute ssh "$CLUSTER-control" --zone="$ZONE" --project="$PROJECT"CLUSTER,ZONEvePROJECTdeğişkenleri, RPM Orchestrator kullanarak GCE sanal makinelerinde AlloyDB Omni yüksek kullanılabilirlik kümesi dağıtma adlı codelab'deki Dağıtım için sanal makineleri hazırlama adımından alınır. Cloud Shell'de bu değişkenler yoksa bunları tekrar ayarlayın. - Kontrol VM'sinde ana dizininize geçin ve ortam değişkenlerini yükleyin. Ardından, küme adını ve SSH kullanıcısını ortam dosyasına ekleyin:
Çıkıştacd ~ source /tmp/cluster.conf cat >> ~/.codelab.env <<EOF export CLUSTER="$cluster" export SSH_USER="$service_account" EOF source ~/.codelab.env env | grep -E '^(CLUSTER|SSH_USER|VIRTUAL_IP)='CLUSTER,SSH_USERveVIRTUAL_IPgösterildiğini doğrulayın. Not: Daha sonra kontrol sanal makinesine tekrar bağlanırsanız devam etmeden öncecd ~vesource ~/.codelab.envkomutlarını çalıştırın. - Bağlantı ayarlarını ortam dosyasına ekleyin.
readkomutu şifre istediğindepostgreskullanıcısının şifresini girin. Bu şifreyi, RPM Orchestrator kullanarak GCE VM'lerinde AlloyDB Omni yüksek kullanılabilirlik kümesi dağıtma adlı codelab'deki Bootstrap AlloyDB Omni Cluster (AlloyDB Omni kümesini başlatma) adımında ayarlarsınız.cat >> ~/.codelab.env <<'EOF' export PATH="/usr/pgsql-18/bin:$PATH" export PGHOST="$VIRTUAL_IP" export PGUSER="postgres" EOF read -rsp "Password of the postgres user: " PGPASSWORD; echo printf 'export PGPASSWORD=%q\n' "$PGPASSWORD" >> ~/.codelab.env source ~/.codelab.env env | grep -E '^(PGHOST|PGUSER|PGPASSWORD)=' - Tablo oluşturma ve 1.000 satır ekleme:
psql <<'SQL' CREATE TABLE public.orders ( id integer PRIMARY KEY, item text NOT NULL, created_at timestamptz NOT NULL DEFAULT pg_catalog.now() ); INSERT INTO public.orders (id, item) SELECT g, 'item-' || g FROM pg_catalog.generate_series(1, 1000) AS g; SQL - Satırları sayın:
Çıkışınpsql -c "SELECT pg_catalog.count(*) FROM public.orders;"1000döndürdüğünü doğrulayın.
4. S3 ile uyumlu nesne depolama alanını yükleme ve çalıştırma
Bu adımda, kontrol VM'sine bir MinIO sunucusu yükleyen bir Ansible playbook'u yazacaksınız. Oyun kitabı, yedeklemeler için bucket ve kullanıcı da oluşturur ve veritabanı sanal makinelerinin MinIO'ya bağlanabildiğinden emin olur. Bu adımdaki tüm komutları kontrol sanal makinesinde çalıştırın.
- Kontrol VM'sinde, depolama ayarlarını ortam dosyasına ekleyin.
opensslkomutları rastgele şifreler oluşturur. Çıkışta kontrol sanal makinesinin adının ve dahili IP adresinin (ör.MD=http://metadata.google.internal/computeMetadata/v1/instance S3_IP=$(curl -s -H "Metadata-Flavor: Google" "$MD/network-interfaces/0/ip") cat >> ~/.codelab.env <<EOF export S3_IP="$S3_IP" export S3_HOST="$CLUSTER-control" export S3_BUCKET="alloydb-backups" export S3_REGION="us-east-1" export MINIO_ROOT_USER="s3admin" export MINIO_ROOT_PASSWORD="$(openssl rand -hex 16)" export S3_ACCESS_KEY_ID="alloydb-backup" export S3_SECRET_ACCESS_KEY="$(openssl rand -hex 16)" export MINIO_URL="https://github.com/minio/minio/releases/download/RELEASE.2024-05-10T01-41-38Z/minio.linux-amd64.RELEASE.2024-05-10T01-41-38Z" export MC_URL="https://github.com/minio/mc/releases/download/RELEASE.2024-05-09T17-04-24Z/mc.linux-amd64.RELEASE.2024-05-09T17-04-24Z" EOF source ~/.codelab.env echo "$S3_HOST $S3_IP"my-cluster-control 10.1.0.2) gösterildiğinden emin olun. Veritabanı VM'leri, MinIO'ya bağlanmak için bu ana makine adını ve IP adresini kullanır. Sanal makinenin meta veri sunucusu IP adresini verir. Daha fazla bilgi için VM meta verileri dokümanlarına bakın.MINIO_URLveMC_URLdeğerleri, MinIO sunucusunun ve MinIO istemcisinin (mc) indirme URL'leridir. - Kontrol sanal makinesine gerekli
community.cryptoAnsible koleksiyonunu yükleyin:ansible-galaxy collection install community.crypto s3_server.yamlbaşucu kitabını oluşturun:cat > s3_server.yaml <<EOF - name: Install and run MinIO on the control VM hosts: localhost connection: local become: true gather_facts: false tasks: - name: Create MinIO directories ansible.builtin.file: path: "{{ item }}" state: directory mode: "0755" loop: - /var/lib/minio/data - /var/lib/minio/certs - name: Download MinIO server and client ansible.builtin.get_url: url: "{{ item.url }}" dest: "{{ item.dest }}" mode: "0755" loop: - url: "$MINIO_URL" dest: /usr/local/bin/minio - url: "$MC_URL" dest: /usr/local/bin/mc - name: Generate MinIO TLS private key community.crypto.openssl_privatekey: path: /var/lib/minio/certs/private.key size: 2048 mode: "0600" - name: Generate MinIO certificate signing request community.crypto.openssl_csr_pipe: privatekey_path: /var/lib/minio/certs/private.key common_name: "$S3_HOST" subject_alt_name: - "DNS:$S3_HOST" - "DNS:$S3_BUCKET.$S3_HOST" - "DNS:localhost" - "IP:127.0.0.1" - "IP:$S3_IP" register: minio_csr - name: Generate self-signed MinIO TLS certificate community.crypto.x509_certificate: path: /var/lib/minio/certs/public.crt csr_content: "{{ minio_csr.csr }}" privatekey_path: /var/lib/minio/certs/private.key provider: selfsigned selfsigned_not_after: "+365d" mode: "0644" - name: Create MinIO systemd service unit ansible.builtin.copy: dest: /etc/systemd/system/minio.service mode: "0600" content: | [Unit] Description=MinIO Object Storage After=network.target [Service] Environment="MINIO_ROOT_USER=$MINIO_ROOT_USER" Environment="MINIO_ROOT_PASSWORD=$MINIO_ROOT_PASSWORD" Environment="MINIO_DOMAIN=$S3_HOST" ExecStart=/usr/local/bin/minio server /var/lib/minio/data --certs-dir /var/lib/minio/certs Restart=on-failure [Install] WantedBy=multi-user.target - name: Start and enable MinIO service ansible.builtin.systemd_service: name: minio daemon_reload: true state: started enabled: true - name: Add storage host names to /etc/hosts on the control VM ansible.builtin.lineinfile: path: /etc/hosts line: "$S3_IP $S3_HOST $S3_BUCKET.$S3_HOST" state: present - name: Wait for MinIO health endpoint ansible.builtin.uri: url: "https://$S3_HOST:9000/minio/health/live" ca_path: /var/lib/minio/certs/public.crt status_code: 200 register: minio_health until: minio_health.status == 200 retries: 6 delay: 5 - name: Create backup bucket and user in MinIO ansible.builtin.command: argv: "{{ item }}" loop: - - /usr/local/bin/mc - --insecure - alias - set - s3repo - "https://$S3_HOST:9000" - "$MINIO_ROOT_USER" - "$MINIO_ROOT_PASSWORD" - - /usr/local/bin/mc - --insecure - mb - --ignore-existing - "s3repo/$S3_BUCKET" - - /usr/local/bin/mc - --insecure - admin - user - add - s3repo - "$S3_ACCESS_KEY_ID" - "$S3_SECRET_ACCESS_KEY" - - /usr/local/bin/mc - --insecure - admin - policy - attach - s3repo - readwrite - --user - "$S3_ACCESS_KEY_ID" become: false no_log: true - name: Configure database VMs for MinIO hosts: primary_instance_nodes become: true gather_facts: false vars: ansible_user: $SSH_USER ansible_ssh_private_key_file: $HOME/ssh-key-cluster-sa tasks: - name: Set SELinux to permissive mode ansible.builtin.command: cmd: setenforce 0 - name: Add storage host names to /etc/hosts ansible.builtin.lineinfile: path: /etc/hosts line: "$S3_IP $S3_HOST $S3_BUCKET.$S3_HOST" state: present - name: Verify storage host resolution ansible.builtin.getent: database: hosts key: "$S3_BUCKET.$S3_HOST" - name: Verify connection to MinIO ansible.builtin.uri: url: "https://$S3_HOST:9000/minio/health/live" validate_certs: false status_code: 200 EOFMINIO_DOMAINdeğişkeni, MinIO'nun sanal ana makine tarzı istekleri kabul etmesine olanak tanır. RPM düzenleyici, yedeklemeleri yazmak içinalloydb-backupkullanıcısını kullanır.readwritepolitikası, MinIO'nun yerleşik bir politikasıdır.- Başucu kitabını çalıştırın:
ansible-playbook s3_server.yaml -i deployment_spec.yamlPLAY RECAPçıkışındalocalhostve her veritabanı sanal makinesi içinfailed=0gösterildiğini doğrulayın. - Paketin mevcut olduğunu doğrulayın:
Çıkıştamc --insecure ls s3repoalloydb-backups/grubunun gösterildiğini doğrulayın.
5. Yedekleme planı oluştur
Yedekleme planı, bir kümenin yedeklerinin depolama konumunu, zaman çizelgesini ve saklama süresini içerir. Bu adımda, MinIO paketi için bir yedekleme planı oluşturursunuz.
- Kontrol sanal makinesinde yedekleme playbook'u ve durum playbook'u oluşturun.
Secret,BackupPlanveBackupkaynakları için yedekleme playbook'unu kullanıyorsunuz. Bir kaynağın durumunu göstermek için durum kılavuzunu kullanırsınız.cat > backup.yaml <<EOF - name: Manage AlloyDB Omni backups hosts: localhost roles: - role: google.alloydbomni_orchestrator.backup EOF cat > status.yaml <<EOF - name: Get resource status hosts: localhost roles: - role: google.alloydbomni_orchestrator.status EOF - S3 kimlik bilgileri için bir
Secretkaynağı oluşturun. Ardından kaynağı uygulayın:S3_KEY_ID_B64=$(printf '%s' "$S3_ACCESS_KEY_ID" | base64 -w 0) S3_KEY_B64=$(printf '%s' "$S3_SECRET_ACCESS_KEY" | base64 -w 0) cat > s3_secret.yaml <<EOF Secret: metadata: name: s3-backup-secret spec: type: Opaque data: access-key-id: "$S3_KEY_ID_B64" access-key: "$S3_KEY_B64" EOF ansible-playbook backup.yaml -i deployment_spec.yaml \ -e resource_spec=s3_secret.yamldatabölümündeki anahtar adlarıaccess-key-idveaccess-keyolmalıdır.BackupPlankaynağını uygulamadan önceSecretkaynağını uygulamanız gerekir. BackupPlankaynağını oluşturun ve ardından kaynağı uygulayın:cat > backup_plan.yaml <<EOF BackupPlan: metadata: name: s3-backup-plan spec: dbclusterRef: $CLUSTER backupLocation: type: S3 s3Options: bucket: $S3_BUCKET key: /backups endpoint: https://$S3_HOST:9000 region: $S3_REGION secretRef: name: s3-backup-secret caBundle: - | $(sed 's/^/ /' /var/lib/minio/certs/public.crt) EOF ansible-playbook backup.yaml -i deployment_spec.yaml \ -e resource_spec=backup_plan.yamlkeydeğeri, paketteki yedeklerin yoludur. Bu yol, eğik çizgiyle (/) başlamalıdır.caBundlealanı, S3 depolama sunucusunun sertifikasını doğrulayan PEM kodlu CA sertifikasını içerir.- Yedekleme planının hazır olduğunu doğrulayın:
ansible-playbook status.yaml -i deployment_spec.yaml \ -e resource_type=BackupPlan -e resource_name=s3-backup-planphasealanındaReadyifadesinin gösterildiğini doğrulayın. AşamaReadydeğilse bir dakika bekleyip komutu tekrar çalıştırın. - Yedek plan oluşturulduğunda RPM düzenleyici, otomatik olarak ilk tam yedeklemeyi başlatır. İsteğe bağlı yedekleme oluşturmadan önce bu ilk yedeklemenin tamamlandığını doğrulayın:
İlk yedekleme aşamasının başarılı olduğunu doğrulayın.ansible-playbook status.yaml -i deployment_spec.yaml \ -e resource_type=Backup
6. İsteğe bağlı yedekleme oluşturma
Bu adımda, kümenin isteğe bağlı bir yedeğini oluşturursunuz.
- Kontrol sanal makinesinde
Backupkaynağını oluşturun. Ardından kaynağı uygulayın:cat > create_backup.yaml <<EOF Backup: metadata: name: s3-backup-1 spec: backupPlanRef: s3-backup-plan dbclusterRef: $CLUSTER EOF ansible-playbook backup.yaml -i deployment_spec.yaml \ -e resource_spec=create_backup.yamlbackupPlanRefalanı, yedekleme planının adıdır.dbclusterRefalanı, kümenin adıdır. - Yedeklemenin tamamlandığını doğrulayın:
ansible-playbook status.yaml -i deployment_spec.yaml \ -e resource_type=Backup -e resource_name=s3-backup-1phasealanındaSucceededifadesinin gösterildiğini doğrulayın. AşamaSucceededdeğilse bir dakika bekleyip komutu tekrar çalıştırın. - Yedekleme dosyalarının pakette olduğunu doğrulayın:
Çıktıdamc --insecure tree "s3repo/$S3_BUCKET"dbklasörünü içeren birbackupklasörünün gösterildiğini doğrulayın.
7. Kümeyi yedekten geri yükleme
RPM orkestrasyonu, bir kümeyi yerinde geri yükler. Bu adımda bir tabloyu silip yedeklemeden geri yüklersiniz. Ardından, isteğe bağlı olarak kümeyi belirli bir zamana geri yükleyebilirsiniz.
Dikkat: Geri yükleme işlemi, veritabanı kümesindeki tüm verilerin üzerine yazar.
Yedekten geri yükle
- Kontrol VM'sinde
orderstablosunu silin. Ardından satırları sayın: İkinci komutun hata vererek başarısız olduğunu doğrulayın. Hata mesajında, ilişkinin mevcut olmadığı gösteriliyor. Örneğin, "HATA: "orders" tablosu mevcut değil"psql -c "DROP TABLE public.orders;" psql -c "SELECT pg_catalog.count(*) FROM public.orders;" - Geri yükleme başucu kitabını oluşturun:
cat > restore.yaml <<EOF - name: Restore AlloyDB Omni cluster hosts: localhost roles: - role: google.alloydbomni_orchestrator.restore EOF s3-backup-1yedeği içinRestorekaynağı oluşturun. Ardından kaynağı uygulayın:cat > restore_backup.yaml <<EOF Restore: metadata: name: s3-restore-1 spec: sourceDBCluster: $CLUSTER backup: s3-backup-1 EOF ansible-playbook restore.yaml -i deployment_spec.yaml \ -e resource_spec=restore_backup.yaml- Geri yükleme işleminin tamamlandığını doğrulayın:
ansible-playbook status.yaml -i deployment_spec.yaml \ -e resource_type=Restore -e resource_name=s3-restore-1phasealanındaProvisionSucceededifadesinin gösterildiğini doğrulayın. AşamaProvisionSucceededdeğilse bir dakika bekleyip komutu tekrar çalıştırın. - Geri yüklenen tablodaki satırları sayın:
Çıkıştapsql -c "SELECT pg_catalog.count(*) FROM public.orders;"1000gösterildiğini doğrulayın.
(İsteğe bağlı) Belirli bir zamana geri yükleme
Belirli bir noktaya geri yükleme işleminde yedekleme ve arşivlenmiş işlem günlüğü (WAL) kullanılır. Küme, yedekleme planının kurtarma penceresinde herhangi bir zamana geri yüklenebilir.
Hedef zamanla ilgili kurallar
Hedef zamanın değerini ve biçimini seçmek için tüm kurallara uymanız gerekir:
- UTC'de RFC 3339 biçimini kullanın:
YYYY-MM-DDThh:mm:ssZ. Örneğin,2026-06-19T14:30:00Z, 19 Haziran 2026'da 14:30:00 UTC'dir. Tarih ve saat,Tharfiyle ayrılır.Zharfi, UTC'yi gösterir. - Geçmiş bir zamanı kullanma
BackupPlanCRD'ninrecoveryWindowalanınınbegindeğerinden sonraki bir zamanı kullanın.
Geçerli saati RFC 3339 biçiminde göstermek için şu komutu çalıştırın:
date -u +%Y-%m-%dT%H:%M:%SZ
Yerel saati bu biçime dönüştürmek için date komutuna yerel saatin UTC farkını ekleyin. Örneğin, aşağıdaki komut UTC+02:00 saatinde 19 June 2026 üzerindeki 16:30:00 değerini değiştirir:
date -u -d "2026-06-19 16:30:00 +0200" +%Y-%m-%dT%H:%M:%SZ
Komut 2026-06-19T14:30:00Z değerini döndürür.
Kayıtlı bir zamana geri yükleme
Bu prosedürde, tabloya satırlar ekleyip bir zaman kaydedersiniz. Bir zaman kaydettiğinizde, veritabanının tamamen sağlam olduğu (tam olarak 1.500 satır içeren) anı işaretlersiniz. Ardından satırları siler ve kümeyi kaydedilen zamana geri yüklersiniz.
- Tabloya 500 satır ekleyin:
psql <<'SQL' INSERT INTO public.orders (id, item) SELECT g, 'item-' || g FROM pg_catalog.generate_series(1001, 1500) AS g; SQL - Zamanı kaydedin. Tabloda şu anda 1.500 satır var.
Çıkışınsleep 5 PITR_TIME=$(date -u +%Y-%m-%dT%H:%M:%SZ) echo "export PITR_TIME=$PITR_TIME" >> ~/.codelab.env echo "$PITR_TIME" sleep 5YYYY-MM-DDThh:mm:ssZbiçiminde bir zaman gösterdiğini doğrulayın (ör.2026-10-05T11:16:02Z). - Yanlışlıkla veri silme işlemini simüle etmek için tablodan satırları silin. Ardından yeni bir WAL dosyası başlatın:
psql -c "DELETE FROM public.orders WHERE id > 1000;" psql -c "SELECT pg_catalog.count(*) FROM public.orders;" psql -c "SELECT pg_catalog.pg_switch_wal();"countsorgusunun1000gösterdiğini doğrulayın.pg_switch_walişlevi, sunucunun yeni bir WAL dosyası başlatmasını sağlar. Ardından sunucu, değişikliklerinizi içeren WAL dosyasını arşivleyebilir. - Yedekleme planının kurtarma penceresinin, kaydedilen zamanı içerdiğini doğrulayın:
test -n "$PITR_TIME" || { echo "PITR_TIME is not set. Run step 2 again."; exit 1; } echo "$PITR_TIME" ansible-playbook status.yaml -i deployment_spec.yaml \ -e resource_type=BackupPlan -e resource_name=s3-backup-planPITR_TIMEdeğerinin,recoveryWindowalanınınbegindeğerinden sonra geldiğini doğrulayın. - Kayıtlı süre için
Restorekaynağı oluşturun. Ardından kaynağı uygulayın:cat > restore_pitr.yaml <<EOF Restore: metadata: name: s3-restore-pitr spec: sourceDBCluster: $CLUSTER pointInTime: "$PITR_TIME" EOF ansible-playbook restore.yaml -i deployment_spec.yaml \ -e resource_spec=restore_pitr.yaml - Geri yükleme işleminin tamamlandığını doğrulayın:
ansible-playbook status.yaml -i deployment_spec.yaml \ -e resource_type=Restore -e resource_name=s3-restore-pitrphasealanındaProvisionSucceededifadesinin gösterildiğini doğrulayın. AşamaProvisionSucceededdeğilse bir dakika bekleyip komutu tekrar çalıştırın. - Satırları sayın:
Çıkıştapsql -c "SELECT pg_catalog.count(*) FROM public.orders;"1500gösterildiğini doğrulayın.
8. Temizleme
Google Cloud hesabınızın ücretlendirilmesini önlemek için bu codelab'in ve RPM Orchestrator kullanarak GCE VM'lerinde AlloyDB Omni yüksek kullanılabilirlik kümesi dağıtma codelab'inin kaynaklarını silin. Önce yedekleme kaynaklarını, ardından kümeyi ve bilgi işlem ortamını silin.
- Kontrol VM'sinde silme playbook'unu oluşturun:
cat > delete.yaml <<EOF - name: Delete AlloyDB Omni resources hosts: localhost roles: - role: google.alloydbomni_orchestrator.delete EOF - Yedekleri listeleyin:
Çıkıştaansible-playbook status.yaml -i deployment_spec.yaml -e resource_type=Backups3-backup-1yedeklemenin gösterildiğini doğrulayın. s3-backup-1yedeğini silme:ansible-playbook delete.yaml -i deployment_spec.yaml \ -e resource_type=Backup -e resource_name=s3-backup-1- Yedekleme planını silme:
ansible-playbook delete.yaml -i deployment_spec.yaml \ -e resource_type=BackupPlan -e resource_name=s3-backup-plan - RPM Orchestrator kullanarak GCE VM'lerinde AlloyDB Omni yüksek kullanılabilirlik kümesi dağıtma adlı codelab'deki Kaynakları temizleme adımını kullanarak kümeyi ve bilgi işlem ortamını silin. MinIO sunucusu ve içindeki yedekler kontrol sanal makinesinde bulunur. Bilgi işlem ortamını sildiğinizde hem sunucuyu hem de yedekleri silersiniz.
9. Tebrikler
Tebrikler. RPM düzenleyiciyi kullanarak AlloyDB Omni için yüksek kullanılabilirlik (HA) kümesini S3 uyumlu nesne depolama alanına yedeklediniz. Ardından, kümeyi yedeklerden geri yüklediniz.
İşlediğimiz konular
- MinIO'yu S3 ile uyumlu nesne depolama alanı olarak yükleme ve çalıştırma
- Yedekleme planı ve isteğe bağlı yedekleme oluşturma
- Bir kümeyi yedekten ve belirli bir zamana geri yükleme
Daha fazla bilgi için aşağıdaki sayfalara bakın: