alloydbctl ו-Ansible כדי להחיל את ההגדרות האלה של קובץ המניפסט ולבצע אוטומציה של גיבויים ל-Cloud Storage, לקטגוריות רגילות של Amazon S3 או לתוכנה שתואמת ל-S3, כמו MinIO.
כדי להפעיל גיבוי ושחזור רציפים של AlloyDB Omni, צריך ליצור תוכנית גיבוי לכל אשכול מסד נתונים. הגיבויים מתבצעים על סמך לוחות הזמנים לגיבוי שמוגדרים במשאב BackupPlan. אפשר לשחזר באמצעות משאב גיבוי או כל חותמת זמן בחלון השחזור ברמת דיוק של שניות.
AlloyDB Omni מנהל גיבויים ושחזורים אוטומטיים באמצעות קובצי מניפסט:
-
BackupPlan: לכל אשכול מסדי נתונים יכול להיות מניפסט אחד או יותר שלBackupPlanעם הגדרות ולוחות זמנים שונים ברמות גיבוי שונות. -
Backup: יוזם גיבויים מלאים, דיפרנציאליים או מצטברים על סמך המניפסטים שלכם.BackupPlan -
Restore: מפעיל שחזור במקום של אשכול מסדי הנתונים באמצעות גיבוי ספציפי או נקודת זמן מסוימת.
לפני שמתחילים
לפני שמגדירים את תוכנית הגיבוי, חשוב לוודא שיש לכם את הדברים הבאים:
מיקום אחסון לגיבויים: AlloyDB Omni מאחסן גיבויים באחת מאפשרויות האחסון הבאות:
- Cloud Storage: קטגוריה של Cloud Storage. במאמר יצירת קטגוריה מוסבר איך ליצור קטגוריות.
- Amazon S3: קטגוריה ב-Amazon S3. במאמר יצירת קטגוריה מוסבר איך ליצור קטגוריות S3.
- אחסון שתואם ל-S3: קטגוריה בתוכנה שתואמת ל-S3, כמו MinIO. מידע על יצירת קטגוריות MinIO זמין במסמכי MinIO.
אמצעי אימות: אם אפשרות האחסון שלכם דורשת מפתחות אימות כמו Amazon S3, MinIO או Cloud Storage עם חשבון שירות ספציפי, אתם צריכים ליצור משאב
Secretשמכיל את אמצעי האימות האלה לפני שאתם יוצרים את תוכנית הגיבוי. הוראות מפורטות מופיעות במאמר יצירת משאב Secret לאימות אחסון.
יצירת משאב Secret לאימות אחסון
אם האחסון שבו אתם משתמשים דורש אימות, אתם צריכים ליצור משאב Secret לפני שאתם יוצרים את תוכנית הגיבוי.
יצירת משאב Secret ל-Cloud Storage
- יוצרים חשבון שירות כדי להוסיף גיבויים לדלי.
- מקצים לחשבון השירות את התפקיד
roles/storage.objectAdminלניהול זהויות והרשאות גישה בקטע. - יצירת מפתח לחשבון שירות בפורמט JSON.
- מקודדים את התוכן של קובץ מפתח ה-JSON שהורדתם בקידוד base64. מריצים את
base64 -w 0או מוודאים שהטקסט המוצפן הוא שורה רציפה אחת. יוצרים מניפסט של משאב
Secret. שם המפתח בקטעdataחייב להיותkey.json.Secret: metadata: name: SECRET_NAME spec: type: Opaque data: key.json: "BASE64_ENCODED_JSON_KEY"מחליפים את מה שכתוב בשדות הבאים:
-
SECRET_NAME: השם של משאבSecret. -
BASE64_ENCODED_JSON_KEY: התוכן בקידוד base64 של קובץ מפתח ה-JSON של חשבון השירות.
-
יצירת משאב Secret לאחסון S3 או לאחסון שתואם ל-S3
- מקודדים את מזהה מפתח הגישה ל-S3 ב-base64.
- מקודדים את מפתח הגישה הסודי של S3 ב-base64.
יוצרים מניפסט של משאב
Secret. שמות המפתחות בקטעdataצריכים להיותaccess-key-idו-access-key.Secret: metadata: name: SECRET_NAME spec: type: Opaque data: access-key-id: "BASE64_ENCODED_ACCESS_KEY_ID" access-key: "BASE64_ENCODED_SECRET_ACCESS_KEY"מחליפים את מה שכתוב בשדות הבאים:
-
SECRET_NAME: השם של משאבSecret. -
BASE64_ENCODED_ACCESS_KEY_ID: מזהה מפתח הגישה ל-S3 בקידוד base64. -
BASE64_ENCODED_SECRET_ACCESS_KEY: מפתח הגישה הסודי של S3 בקידוד base64.
-
החלת משאב Secret
מחילים את מניפסט המשאבים Secret לפני שמחילים את מניפסט BackupPlan.
אפשר להחיל את מניפסט המשאבים Secret באחת מהשיטות הבאות:
alloydbctl
כדי להחיל את מניפסט המשאבים Secret באמצעות alloydbctl, מריצים את הפקודה הבאה:
alloydbctl apply -d "DEPLOYMENT_SPEC_PATH" -r "SECRET_MANIFEST"מחליפים את המשתנים הבאים:
-
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni. -
SECRET_MANIFEST: הנתיב למניפסט המשאבSecretשיצרתם.
Ansible
כדי להחיל את מניפסט המשאבים Secret באמצעות Ansible, מבצעים את הפעולות הבאות:
יוצרים מדריך הפעלה למניפסט המשאבים של
Secret:- name: Create Secret hosts: localhost become: true vars: ansible_user: ANSIBLE_USER ansible_ssh_private_key_file: ANSIBLE_SSH_PRIVATE_KEY_FILE roles: - role: google.alloydbomni_orchestrator.backupמחליפים את המשתנים הבאים:
-
ANSIBLE_USER: משתמש במערכת ההפעלה שמשמש את Ansible כדי להתחבר לצמתים של AlloyDB Omni. -
ANSIBLE_SSH_PRIVATE_KEY_FILE: המפתח הפרטי שמשמש את Ansible לחיבור לצמתים של AlloyDB Omni באמצעות SSH.
-
מחילים את מניפסט המשאבים
Secret:ansible-playbook SECRET_PLAYBOOK -i "DEPLOYMENT_SPEC_PATH" \ -e resource_spec="SECRET_MANIFEST"מחליפים את המשתנים הבאים:
-
SECRET_PLAYBOOK: הנתיב ל-playbook שיצרתם עבור מניפסט המשאבים שלSecret. -
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni. -
SECRET_MANIFEST: הנתיב למניפסט המשאבSecretשיצרתם.
-
יצירת תוכנית גיבוי
יוצרים קובץ
BackupPlanמניפסט בפורמט של אפשרות האחסון:Cloud Storage
השדה
gcsOptionsהוא חובה.BackupPlan: metadata: name: BACKUP_PLAN_NAME spec: dbclusterRef: DBCLUSTER_NAME backupLocation: type: GCS gcsOptions: bucket: BUCKET_NAME key: BUCKET_PATH secretRef: name: SECRET_NAME backupRetainDays: RETAIN_DAYS backupSchedules: full: "FULL_SCHEDULE" differential: "DIFF_SCHEDULE" incremental: "INC_SCHEDULE"מחליפים את המשתנים הבאים:
BACKUP_PLAN_NAME: השם של קובץ המניפסטBackupPlan. לדוגמה,my-backup-plan-1.
DBCLUSTER_NAME: השם של אשכול מסד הנתונים שהגדרתם בשלב יצירת אשכול.
BUCKET_NAME: השם של הקטגוריה שיצרתם ב-Cloud Storage.
BUCKET_PATH: הנתיב לספרייה ב-Cloud Storage שאליה הגיבויים צריכים להיכתב. חובה לציין נתיב מוחלט שמתחיל ב-/. לדוגמה,/backups.SECRET_NAME(אופציונלי): שם משאבSecretשבו מאוחסנים מפתחות האימות.RETAIN_DAYS(אופציונלי): מספר הימים לשמירת הגיבויים לפני שהם יימחקו אוטומטית.FULL_SCHEDULE(אופציונלי): ביטוי לתזמון cron לגיבויים מלאים. לדוגמה,0 2 * * *.DIFF_SCHEDULE(אופציונלי): ביטוי ללוח זמנים של cron לגיבויים דיפרנציאליים. לדוגמה,0 2 * * *.INC_SCHEDULE(אופציונלי): ביטוי לתיזמון cron לגיבויים מצטברים. לדוגמה,0 2 * * *.
Amazon S3 או תואם ל-S3
השדה
s3Optionsהוא חובה.BackupPlan: metadata: name: BACKUP_PLAN_NAME spec: dbclusterRef: DBCLUSTER_NAME backupLocation: type: S3 s3Options: bucket: BUCKET_NAME key: BUCKET_PATH endpoint: ENDPOINT_URL region: REGION secretRef: name: SECRET_NAME backupRetainDays: RETAIN_DAYS backupSchedules: full: "FULL_SCHEDULE" differential: "DIFF_SCHEDULE" incremental: "INC_SCHEDULE"מחליפים את המשתנים הבאים:
BACKUP_PLAN_NAME: השם של קובץ המניפסטBackupPlan. לדוגמה,my-backup-plan-1.
DBCLUSTER_NAME: השם של אשכול מסד הנתונים שהגדרתם בשלב יצירת אשכול.
BUCKET_NAME: השם של קטגוריית ה-S3 שיצרתם.
BUCKET_PATH: הנתיב לספרייה בקטגוריית S3 שאליה הגיבויים ייכתבו. חובה לציין נתיב מוחלט שמתחיל ב-/. לדוגמה,/backups.
ENDPOINT_URL: כתובת URL של נקודת קצה בהתאמה אישית לחיבור לתוכנה שתואמת ל-S3, כמו MinIO. לדוגמה,http://minio.example.com:9000. בקטגוריות של Amazon S3, לא צריך לספק כתובת URL של נקודת קצה.
REGION_(אופציונלי): אזור של קטגוריית האחסון. נדרש כשמתחברים לקטגוריות סטנדרטיות ב-Amazon S3 או לתוכנה שתואמת ל-S3, שבה נאכפת אימות האזור.
SECRET_NAME: הפניה למשאבSecretשיצרתם קודם, שמכיל אתACCESS_KEY_IDו-SECRET_ACCESS_KEY.RETAIN_DAYS(אופציונלי): מספר הימים לשמירת הגיבויים לפני שהם יימחקו אוטומטית.FULL_SCHEDULE(אופציונלי): ביטוי לתזמון cron לגיבויים מלאים. לדוגמה,0 2 * * *.DIFF_SCHEDULE(אופציונלי): ביטוי ללוח זמנים של cron לגיבויים דיפרנציאליים. לדוגמה,0 2 * * *.INC_SCHEDULE(אופציונלי): ביטוי לתיזמון cron לגיבויים מצטברים. לדוגמה,0 2 * * *.
מיישמים את תוכנית הגיבוי באחת מהשיטות הבאות:
alloydbctlמימוש המשאב
BackupPlan:alloydbctl apply -d "DEPLOYMENT_SPEC_PATH" -r "BACKUP_PLAN_MANIFEST"מחליפים את המשתנים הבאים:
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
BACKUP_PLAN_MANIFEST: הנתיב אלBackupPlanהמניפסט שיצרתם קודם.
מוודאים ששדה הסטטוס,
status.phase, של קובץ המניפסטBackupPlanהואReady. אם קובץ המניפסט לא מוכן, צריך לחכות עד שהוא יהיה מוכן:alloydbctl get -d "DEPLOYMENT_SPEC_PATH" -t BackupPlan -n BACKUP_PLAN_NAME -o yaml
Ansible
יוצרים מדריך הפעלה למניפסט
BackupPlan:- name: BACKUP_PLAN_PLAYBOOK_NAME hosts: localhost vars: ansible_user: ANSIBLE_USER ansible_ssh_private_key_file: ANSIBLE_SSH_PRIVATE_KEY_FILE roles: - role: google.alloydbomni_orchestrator.backupמחליפים את המשתנים הבאים:
BACKUP_PLAN_PLAYBOOK_NAME: השם של קובץ ה-playbook של Ansible. לדוגמה,My BackupPlan. חשוב לשים לב לנתיב של ספר ההפעלה, כי תצטרכו אותו בשלב הבא.
ANSIBLE_USER: השם של משתמש מערכת ההפעלה שמשמש את Ansible כדי להתחבר לצמתים של AlloyDB Omni.
ANSIBLE_SSH_PRIVATE_KEY_FILE: המפתח הפרטי שמשמש את Ansible לחיבור לצמתים של AlloyDB Omni באמצעות SSH.
מימוש המשאב
BackupPlan:ansible-playbook BACKUP_PLAN_PLAYBOOK -i "DEPLOYMENT_SPEC_PATH" \ -e resource_spec="BACKUP_PLAN_MANIFEST"מחליפים את המשתנים הבאים:
BACKUP_PLAN_PLAYBOOK: הנתיב ל-playbook שיצרתם בשבילBackupPlanקובץ המניפסט קודם.
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
BACKUP_PLAN_MANIFEST: הנתיב אלBackupPlanהמניפסט שיצרתם קודם.
יוצרים
status.yamlplaybook אם עדיין לא עשיתם את זה. מידע על יצירת תוכנית הפעולה זמין במאמר הצגת הסטטוס ורשימת משאבי הגיבוי.מוודאים ששדה הסטטוס,
status.phase, של קובץ המניפסטBackupPlanהואReady. אם קובץ המניפסט לא מוכן, צריך לחכות עד שהוא יהיה מוכן:ansible-playbook status.yaml -i "DEPLOYMENT_SPEC_PATH" -e resource_type=BackupPlan \ -e resource_name=BACKUP_PLAN_NAME
עדכון של תוכנית גיבוי
כדי לעדכן תוכנית גיבוי ולשנות את לוח הזמנים של הגיבוי, לשנות את תקופת השמירה או להשהות גיבויים מתוזמנים, צריך לשנות את קובץ המניפסט BackupPlan ואז להחיל אותו מחדש.
פותחים את קובץ המניפסט
BackupPlanשיצרתם במאמר יצירת תוכנית גיבוי.משנים את השדות שרוצים לעדכן.
- כדי לעדכן את תזמון הגיבויים, משנים את ביטויי ה-cron בקטע
backupSchedules. - כדי לעדכן את תקופת השמירה, משנים את הערך של
backupRetainDays. - כדי להשהות גיבויים מתוזמנים, מוסיפים את השדה
pausedלקטעspecומגדירים אותו לערךtrue. כדי להמשיך את הגיבויים, צריך להגדיר את השדה לערךfalseאו להסיר את השדה.
לדוגמה, בדוגמה הבאה מעדכנים את מספר ימי השמירה ל-
30, משנים את לוחות הזמניםfullו-differential, מוסיפים לוח זמניםincrementalומשהים את תוכנית הגיבוי:BackupPlan: metadata: name: BACKUP_PLAN_NAME spec: dbclusterRef: DBCLUSTER_NAME backupLocation: type: GCS gcsOptions: bucket: BUCKET_NAME key: BUCKET_PATH secretRef: name: SECRET_NAME backupRetainDays: 30 backupSchedules: full: "0 4 * * *" differential: "0 0 * * 0" incremental: "0 12 * * *" paused: true- כדי לעדכן את תזמון הגיבויים, משנים את ביטויי ה-cron בקטע
כדי להחיל את תוכנית הגיבוי המעודכנת, משתמשים באחת מהשיטות הבאות:
alloydbctlמימוש המשאב
BackupPlan:alloydbctl apply -d "DEPLOYMENT_SPEC_PATH" -r "BACKUP_PLAN_MANIFEST"מחליפים את המשתנים הבאים:
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
BACKUP_PLAN_MANIFEST: הנתיב למניפסטBackupPlanששיניתם.
מוודאים ששדה הסטטוס,
status.phase, של קובץ המניפסטBackupPlanהואReady. אם קובץ המניפסט לא מוכן, צריך לחכות עד שהוא יהיה מוכן:alloydbctl get -d "DEPLOYMENT_SPEC_PATH" -t BackupPlan -n BACKUP_PLAN_NAME -o yaml
Ansible
מחילים את משאב
BackupPlanהמעודכן באמצעות ספר ההפעלה שיצרתם בשלב יצירת תוכנית גיבוי:ansible-playbook BACKUP_PLAN_PLAYBOOK -i "DEPLOYMENT_SPEC_PATH" \ -e resource_spec="BACKUP_PLAN_MANIFEST"מחליפים את המשתנים הבאים:
BACKUP_PLAN_PLAYBOOK: הנתיב ל-playbook שיצרתם עבור מניפסטBackupPlan.
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
BACKUP_PLAN_MANIFEST: הנתיב למניפסטBackupPlanששיניתם.
יוצרים
status.yamlplaybook אם עדיין לא עשיתם את זה. מידע על יצירת תוכנית הפעולה זמין במאמר הצגת הסטטוס ורשימת משאבי הגיבוי.מוודאים ששדה הסטטוס,
status.phase, של קובץ המניפסטBackupPlanהואReady. אם קובץ המניפסט לא מוכן, צריך לחכות עד שהוא יהיה מוכן לפני האימות:ansible-playbook status.yaml -i "DEPLOYMENT_SPEC_PATH" -e resource_type=BackupPlan \ -e resource_name=BACKUP_PLAN_NAME
מחיקת תוכנית גיבוי
כדי למחוק תוכנית גיבוי, משתמשים באחת מהשיטות הבאות:
alloydbctl
alloydbctl delete -d "DEPLOYMENT_SPEC_PATH" -t BackupPlan -n BACKUP_PLAN_NAMEמחליפים את המשתנים הבאים:
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
BACKUP_PLAN_NAME: השם של קובץ המניפסטBackupPlanשרוצים למחוק.
Ansible
יוצרים מדריך למחיקת המניפסט של
BackupPlan.- name: BACKUP_PLAN_DELETE_PLAYBOOK_NAME hosts: localhost vars: ansible_user: ANSIBLE_USER ansible_ssh_private_key_file: ANSIBLE_SSH_PRIVATE_KEY_FILE roles: - role: google.alloydbomni_orchestrator.deleteמחליפים את המשתנים הבאים:
BACKUP_PLAN_DELETE_PLAYBOOK_NAME: השם של קובץ ה-playbook של Ansible.
ANSIBLE_USER: משתמש במערכת ההפעלה שמשמש את Ansible כדי להתחבר לצמתים של AlloyDB Omni.
ANSIBLE_SSH_PRIVATE_KEY_FILE: המפתח הפרטי שמשמש את Ansible לחיבור לצמתים של AlloyDB Omni באמצעות SSH.
מריצים את הפקודה
ansible-playbookכדי למחוק את המניפסטBackupPlan.ansible-playbook BACKUP_PLAN_DELETE_PLAYBOOK_NAME -i "DEPLOYMENT_SPEC_PATH" -e resource_type=BackupPlan \ -e resource_name=BACKUP_PLAN_NAMEמחליפים את המשתנים הבאים:
BACKUP_PLAN_DELETE_PLAYBOOK_NAME: הנתיב ל-playbook שיצרתם למחיקתBackupPlanה-manifest בשלב הקודם.
DEPLOYMENT_SPEC_PATH: הנתיב אל מפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
BACKUP_PLAN_NAME: השם של קובץ המניפסטBackupPlanשרוצים למחוק.
יצירת גיבוי
כדי ליצור גיבוי ולהתחיל אותו, אפשר להשתמש באחת מהשיטות הבאות:
alloydbctl
יוצרים קובץ מניפסט
Backupבפורמט הבא:Backup: metadata: name: BACKUP_NAME spec: backupPlanRef: BACKUP_PLAN_NAME dbclusterRef: DBCLUSTER_NAME type: fullמחליפים את המשתנים הבאים:
BACKUP_NAME: השם של מניפסטBackup. לדוגמה,my-backup-1.
BACKUP_PLAN_NAME: השם שלBackupPlanהמאניפסט שיצרתם קודם. לדוגמה:my-backup-plan-1.
DBCLUSTER_NAME: השם של אשכול מסד הנתונים שהגדרתם בשלב יצירת אשכול.
type(אופציונלי): סוג ההפעלה של הגיבוי, שאפשר להגדיר אותו כ-full,diffאוincr. ברירת המחדל היאfull.
החלת המניפסט
Backup:alloydbctl apply -d "DEPLOYMENT_SPEC_PATH" -r "BACKUP_MANIFEST"מחליפים את המשתנים הבאים:
DEPLOYMENT_SPEC_PATH: הנתיב אל מפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
BACKUP_MANIFEST: הנתיב אלBackupהמניפסט שיצרתם קודם.
מוודאים ששדה הסטטוס,
status.phase, במניפסטBackupהואSucceeded. אם המניפסט לא הצליח, מחכים עד שהוא יצליח:alloydbctl get -d "DEPLOYMENT_SPEC_PATH" -t Backup -n BACKUP_NAME -o yamlכדי לוודא שקובצי הגיבוי זמינים בדלי, בודקים אם התיקייה
/backup/dbקיימת.
Ansible
יוצרים קובץ מניפסט
Backupבפורמט הבא:Backup: metadata: name: BACKUP_NAME spec: backupPlanRef: BACKUP_PLAN_NAME dbclusterRef: DBCLUSTER_NAME type: fullמחליפים את המשתנים הבאים:
BACKUP_NAME: השם של מניפסטBackup. לדוגמה,my-backup-1.
BACKUP_PLAN_NAME: השם שלBackupPlanהמאניפסט שיצרתם קודם. לדוגמה:my-backup-plan-1.
DBCLUSTER_NAME: השם של אשכול מסד הנתונים שהגדרתם בשלב יצירת אשכול.
type(אופציונלי): סוג ההפעלה של הגיבוי, שאפשר להגדיר אותו כ-full,diffאוincr. ברירת המחדל היאfull.
יוצרים מדריך הפעלה למניפסט
Backup:- name: BACKUP_PLAYBOOK_NAME hosts: localhost vars: ansible_user: ANSIBLE_USER ansible_ssh_private_key_file: ANSIBLE_SSH_PRIVATE_KEY_FILE roles: - role: google.alloydbomni_orchestrator.backupמחליפים את המשתנים הבאים:
BACKUP_PLAYBOOK_NAME: השם של קובץ ה-playbook של Ansible. לדוגמה,My Backup.
ANSIBLE_USER: השם של משתמש מערכת ההפעלה שמשמש את Ansible כדי להתחבר לצמתים של AlloyDB Omni.
ANSIBLE_SSH_PRIVATE_KEY_FILE: המפתח הפרטי שמשמש את Ansible לחיבור לצמתים של AlloyDB Omni באמצעות SSH.
החלת המניפסט
Backup:ansible-playbook BACKUP_PLAYBOOK -i "DEPLOYMENT_SPEC_PATH" \ -e resource_spec="BACKUP_MANIFEST"מחליפים את המשתנים הבאים:
BACKUP_PLAYBOOK: הנתיב ל-playbook שיצרתם עבור מניפסטBackupשיצרתם קודם.
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
BACKUP_MANIFEST: הנתיב אלBackupהמניפסט שיצרתם קודם.
יוצרים
status.yamlplaybook אם עדיין לא עשיתם את זה. מידע על יצירת תוכנית הפעולה זמין במאמר הצגת הסטטוס ורשימת משאבי הגיבוי.מוודאים ששדה הסטטוס,
status.phase, במניפסטBackupהואSucceeded. אם המניפסט לא הצליח, צריך לחכות עד שהוא יצליח לפני האימות:ansible-playbook status.yaml -i "DEPLOYMENT_SPEC_PATH" -e resource_type=Backup \ -e resource_name=BACKUP_NAMEכדי לוודא שקובצי הגיבוי זמינים בדלי, בודקים אם התיקייה
/backup/dbקיימת.
מחיקת גיבוי
כדי למחוק גיבוי, מריצים אחת מהפקודות הבאות:
alloydbctl
alloydbctl delete -d "DEPLOYMENT_SPEC_PATH" -t Backup -n BACKUP_NAMEמחליפים את המשתנים הבאים:
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
BACKUP_NAME: השם של מניפסטBackupשרוצים למחוק.
Ansible
יוצרים מדריך למחיקת המניפסט של
Backup.- name: BACKUP_DELETE_PLAYBOOK_NAME hosts: localhost vars: ansible_user: ANSIBLE_USER ansible_ssh_private_key_file: ANSIBLE_SSH_PRIVATE_KEY_FILE roles: - role: google.alloydbomni_orchestrator.deleteמחליפים את המשתנים הבאים:
BACKUP_DELETE_PLAYBOOK_NAME: השם של קובץ ה-playbook של Ansible.
ANSIBLE_USER: משתמש במערכת ההפעלה שמשמש את Ansible כדי להתחבר לצמתים של AlloyDB Omni.
ANSIBLE_SSH_PRIVATE_KEY_FILE: המפתח הפרטי שמשמש את Ansible לחיבור לצמתים של AlloyDB Omni באמצעות SSH.
מריצים את הפקודה
ansible-playbookכדי למחוק את המניפסטBackup.ansible-playbook BACKUP_DELETE_PLAYBOOK -i "DEPLOYMENT_SPEC_PATH" -e resource_type=Backup \ -e resource_name=BACKUP_NAMEמחליפים את המשתנים הבאים:
BACKUP_DELETE_PLAYBOOK: הנתיב ל-playbook שיצרתם למחיקתBackupהמניפסט בשלב הקודם.
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.BACKUP_NAME: השם של מניפסטBackupשרוצים למחוק.
שחזור מגיבוי או מנקודה מסוימת בזמן (PITR)
כדי לשחזר נתונים מגיבוי, צריך להחיל Restoreמניפסט. הכלי לניהול RPM מבצע שחזור במקום, כלומר הוא משנה ישירות את אשכול מסד הנתונים של היעד בלי להפעיל אשכול משוכפל או לדרוש הפעלה ידנית של סקריפט.
כדי לשחזר מגיבוי, אפשר להשתמש באחת מהשיטות הבאות:
alloydbctl
יוצרים קובץ מניפסט
Restoreבפורמט הבא:- כדי לשחזר מגיבוי ספציפי עם שם:
Restore: metadata: name: RESTORE_NAME spec: sourceDBCluster: DBCLUSTER_NAME backup: BACKUP_NAMEכדי לבצע שחזור מנקודה מסוימת בזמן (PITR):
Restore: metadata: name: RESTORE_NAME spec: sourceDBCluster: DBCLUSTER_NAME pointInTime: "TIMESTAMP"
מחליפים את המשתנים הבאים:
RESTORE_NAME: השם של מניפסטRestore. לדוגמה,my-restore-1.
DBCLUSTER_NAME: השם של אשכול מסד הנתונים של היעד לשחזור במקום.
BACKUP_NAME: שם מניפסטBackupשהושלם שממנו רוצים לשחזר.
TIMESTAMP: חותמת זמן RFC 3339 שמזהה את הנקודה המדויקת בזמן שאליה רוצים לשחזר. לדוגמה,2026-06-19T14:30:00Z.
החלת המניפסט
Restore:alloydbctl apply -d "DEPLOYMENT_SPEC_PATH" -r "RESTORE_MANIFEST"מחליפים את המשתנים הבאים:
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה שיצרתם בקטע התקנת רכיבי AlloyDB Omni.
RESTORE_MANIFEST: הנתיב לקובץ מפרט המניפסטRestoreשיצרתם בשלב 1.
מוודאים ש-
status.phaseבמניפסטRestoreעובר ל-Succeeded:alloydbctl get -d "DEPLOYMENT_SPEC_PATH" -t Restore -n RESTORE_NAME -o yaml
Ansible
יוצרים קובץ מניפסט
Restoreבפורמט הבא:- כדי לשחזר מגיבוי ספציפי עם שם:
Restore: metadata: name: RESTORE_NAME spec: sourceDBCluster: DBCLUSTER_NAME backup: BACKUP_NAMEכדי לבצע שחזור מנקודה מסוימת בזמן (PITR):
Restore: metadata: name: RESTORE_NAME spec: sourceDBCluster: DBCLUSTER_NAME pointInTime: "TIMESTAMP"
מחליפים את המשתנים הבאים:
RESTORE_NAME: השם של מניפסטRestore. לדוגמה,my-restore-1.
DBCLUSTER_NAME: השם של אשכול מסד הנתונים של היעד לשחזור במקום.
BACKUP_NAME: שם מניפסטBackupשהושלם שממנו רוצים לשחזר.
TIMESTAMP: חותמת זמן RFC 3339 שמזהה את הנקודה המדויקת בזמן שאליה רוצים לשחזר. לדוגמה,2026-06-19T14:30:00Z.
יוצרים מדריך הפעלה למניפסט
Restore:- name: RESTORE_PLAYBOOK_NAME hosts: localhost vars: ansible_user: ANSIBLE_USER ansible_ssh_private_key_file: ANSIBLE_SSH_PRIVATE_KEY_FILE roles: - role: google.alloydbomni_orchestrator.restoreמחליפים את המשתנים הבאים:
RESTORE_PLAYBOOK_NAME: השם של Ansible playbook.
ANSIBLE_USER: משתמש במערכת ההפעלה שמשמש את Ansible כדי להתחבר לצמתים של AlloyDB Omni.
ANSIBLE_SSH_PRIVATE_KEY_FILE: המפתח הפרטי שמשמש את Ansible לחיבור לצמתים של AlloyDB Omni באמצעות SSH.
החלת המניפסט
Restore:ansible-playbook RESTORE_PLAYBOOK -i "DEPLOYMENT_SPEC_PATH" \ -e resource_spec="RESTORE_MANIFEST"מחליפים את המשתנים הבאים:
RESTORE_PLAYBOOK: הנתיב ל-playbook שיצרתם למניפסטRestoreבשלב 2.
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה.
RESTORE_MANIFEST: הנתיב לקובץ מפרט המניפסטRestoreשיצרתם בשלב 1.
יוצרים
status.yamlplaybook אם עדיין לא עשיתם את זה. מידע על יצירת תוכנית הפעולה זמין במאמר הצגת הסטטוס ורשימת משאבי הגיבוי.מוודאים ש-
status.phaseבמניפסטRestoreעובר ל-Succeeded:ansible-playbook status.yaml -i "DEPLOYMENT_SPEC_PATH" -e resource_type=Restore \ -e resource_name=RESTORE_NAME
צפייה בסטטוס וברשימת משאבי הגיבוי
כדי לראות את הסטטוס של משאבי BackupPlan, Backup ו-Restore או את הרשימה שלהם, אפשר להשתמש באחת מהשיטות הבאות:
alloydbctl
כדי להציג רשימה של כל המשאבים מסוג מסוים, מריצים את הפקודה alloydbctl get:
alloydbctl get -d "DEPLOYMENT_SPEC_PATH" -t RESOURCE_TYPEכדי לראות את הסטטוס של משאב ספציפי, מריצים את הפקודה alloydbctl get עם שם המשאב ופורמט הפלט שמוגדר ל-yaml:
alloydbctl get -d "DEPLOYMENT_SPEC_PATH" -t RESOURCE_TYPE -n RESOURCE_NAME -o yamlמחליפים את המשתנים הבאים:
-
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה. -
RESOURCE_TYPE: סוג המשאב. מגדירים את הערךBackupPlan, BackupאוRestore. -
RESOURCE_NAME: השם של המשאב שרוצים לראות את הסטטוס שלו.
Ansible
כדי להציג את הסטטוס של משאבים או את רשימת המשאבים באמצעות Ansible, משתמשים בתפקיד google.alloydbomni_orchestrator.status.
יוצרים playbook, לדוגמה
status.yaml, בפורמט הבא:- name: Get resource status hosts: localhost vars: ansible_user: ANSIBLE_USER ansible_ssh_private_key_file: ANSIBLE_SSH_PRIVATE_KEY_FILE roles: - role: google.alloydbomni_orchestrator.statusמחליפים את המשתנים הבאים:
-
ANSIBLE_USER: משתמש במערכת ההפעלה ש-Ansible משתמש בו כדי להתחבר לצמתים. -
ANSIBLE_SSH_PRIVATE_KEY_FILE: מפתח פרטי שמשמש את Ansible לחיבור לצמתים באמצעות SSH.
-
מפעילים את חוברת ההדרכה.
כדי להציג רשימה של כל המשאבים מסוג מסוים, מריצים את פלייבוק עם המשתנה
resource_type:ansible-playbook status.yaml -i "DEPLOYMENT_SPEC_PATH" -e resource_type=RESOURCE_TYPEכדי לראות את הסטטוס של משאב ספציפי, מריצים את ה-playbook עם המשתנים
resource_typeו-resource_name:ansible-playbook status.yaml -i "DEPLOYMENT_SPEC_PATH" -e resource_type=RESOURCE_TYPE \ -e resource_name=RESOURCE_NAMEמחליפים את המשתנים הבאים:
-
DEPLOYMENT_SPEC_PATH: הנתיב למפרט הפריסה. -
RESOURCE_TYPE: סוג המשאב. מגדירים את הערךBackupPlan, BackupאוRestore. -
RESOURCE_NAME: השם של המשאב שרוצים לראות את הסטטוס שלו.
-
מגבלות
- אם הסטטוס
BackupPlanמופיע עםConfigurationFailedועםfailed to create stanza(קוד יציאה39), אפשר להמשיך את תהליך ההתאמה על ידי הקצאת התפקידroles/storage.objectAdminבדלי והחלה מחדש של המניפסט. אין צורך למחוק אתBackupPlan.