אתם יכולים לשנות את המאפיינים הבאים של אשכול מסד הנתונים באמצעות מסוף GDC או gdcloud CLI:
- סיסמת מסד הנתונים של המשתמש עם הרשאת אדמין
- חיבורים חיצוניים (מופעלים/מושבתים)
- רמת הזמינות
- הגיבוי מופעל ומספר ימי השמירה של הגיבוי
- דגלים לניהול מסד נתונים
- מעבד (CPU), זיכרון או נפח אחסון שמוקצים לאשכול מסד הנתונים
כדי ללמוד איך לשנות מאפיין, קראו את תהליך העבודה שמתאים לסוג המאפיין שאתם רוצים לעדכן:
המסוף
זמינות גבוהה
הפעלה או השבתה של זמינות גבוהה באותו אזור. מידע נוסף מופיע בקטע הגדרת זמינות גבוהה.
הגנה על נתונים
בכל סוגי האשכולות של מסדי הנתונים, אפשר להפעיל או להשבית את ההגנה על הנתונים:
- עוברים אל הגנה על נתונים ולוחצים על עריכה עריכה כדי לגשת לטופס הגדרות ההגנה על הנתונים. אם הגיבויים האוטומטיים מופעלים, אפשר גם להגדיר את משך הזמן שבו הגיבויים יישמרו.
- אחרי שמבצעים את השינויים, לוחצים על Save כדי להחיל את העדכונים על אשכול מסד הנתונים.
קישוריות
בכל סוגי אשכולות מסדי הנתונים, אתם יכולים לבחור אם תהיה גישה לאשכול מסד הנתונים רק מתוך הפרויקט ב-GDC, או גם מחוץ לפרויקט:
- עוברים לקטע קישוריות ולוחצים על סמל העריכה עריכה.
- מעדכנים את הגדרות הקישוריות.
לוחצים על Save כדי לעדכן את השינויים.
מכונות
בכל סוגי האשכולות של מסדי הנתונים, אפשר לערוך את המאפיינים של המכונה הראשית:
- עוברים אל Primary Instance ולוחצים על סמל העריכה Edit.
בוחרים בין הגדרות ביצועים גבוהים, רגיל, מינימום או בהתאמה אישית. האפשרות Custom מאפשרת לבחור את מספר המעבדים, הזיכרון והאחסון של המכונה הראשית.
כדי לעדכן את המעבד (CPU), הזיכרון או האחסון של המכונה הראשית, צריך להפעיל אותה מחדש. כדי להחיל את השינויים, לוחצים על שמירה והפעלה מחדש.
בכל סוגי האשכולות של מסדי הנתונים, הטופס הזה מאפשר גם להוסיף, לשנות או להסיר דגלים לניהול מסד נתונים. קבוצת הדגלים הזמינים נקבעת מראש על ידי GDC. מידע נוסף זמין בקטע הגדרת דגלים לניהול מסד נתונים.
gdcloud
כדי לעדכן אשכול של מסד נתונים, משתמשים בפקודה הבאה:
gdcloud database clusters update CLUSTER_NAME [options]
מחליפים את CLUSTER_NAME בשם של אשכול מסד הנתונים שרוצים לעדכן.
כדי לראות את הרשימה המלאה של האפשרויות, אפשר לעיין בחומרי העזר בנושא פקודות או להריץ את הפקודה:
gdcloud database clusters update --help
API
הגנה על נתונים
בכל סוגי אשכולות מסדי הנתונים, אפשר להפעיל את תכונת ההגנה על הנתונים על ידי יצירת משאב BackupPlan לאשכול מסד הנתונים.
apiVersion: postgresql.dbadmin.gdc.goog/v1
kind: BackupPlan
metadata:
name: DBCLUSTER_NAME-backupplan
namespace: USER_PROJECT
spec:
dbclusterRef: DBCLUSTER_NAME
backupRetainDays: RETENTION_DAYS
מחליפים את המשתנים הבאים:
-
DBCLUSTER_NAME: השם של אשכול מסד הנתונים שרוצים להפעיל בו את ההגנה על הנתונים. -
USER_PROJECT: השם של פרויקט המשתמש שבו ייווצר אשכול מסד הנתונים. -
RETENTION_DAYS: מספר הימים שבהם המפעיל שומר את הגיבוי הזה. הערך חייב להיות מספר שלם בין 1 ל-90.
אפשר גם לקבוע את הגדרות ההגנה על הנתונים, כמו ימי השמירה, על ידי עריכה של המשאב BackupPlan המתאים.
כדי להשבית את ההגנה על הנתונים של אשכול מסד נתונים, צריך למחוק את המשאב BackupPlan התואם שנוצר קודם לכן.
איפוס סיסמה של משתמש אדמין
בכל סוגי אשכולות מסדי הנתונים, אתם יכולים לאפס את סיסמת מסד הנתונים של המשתמש האדמין.
יוצרים סוד לסיסמה.
apiVersion: v1 kind: Secret metadata: name: db-pw-DBCLUSTER_NAME namespace: USER_PROJECT type: Opaque data: DBCLUSTER_NAME: "BASE64_PASSWORD"מתקנים את ה-DBCluster.
kubectl patch dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"primarySpec": {"adminUser": {"passwordRef": {"name": "db-pw-DBCLUSTER_NAME"}}}}}' --type=merge -n USER_PROJECT
מחליפים את המשתנים הבאים:
-
DBCLUSTER_NAME: השם של אשכול מסד הנתונים. -
USER_PROJECT: שם הפרויקט של המשתמש שבו אשכול מסד הנתונים יעודכן. -
BASE64_PASSWORD: קידוד base64 של סיסמת האדמין של מסד הנתונים.
הסיסמה החדשה תיכנס לתוקף תוך כדקה.
הגדרת דגלים לניהול מסדי נתונים
קובצי האימג' של מסדי הנתונים שמגיעים עם GDC כוללים הגדרות ברירת מחדל. עם זאת, אתם יכולים להתאים אישית את המנוע של מסד הנתונים שמוגדר כברירת מחדל כדי לעמוד בדרישות של האפליקציות שלכם. באשכולות של מסדי נתונים יש דגלים מוגדרים מראש שאפשר להגדיר באמצעות מסוף GDC או gdcloud CLI:
המסוף
בתפריט הניווט, בוחרים באפשרות Database Service.
ברשימת אשכולות מסדי הנתונים, לוחצים על אשכול מסד הנתונים שרוצים להגדיר לו דגלים לניהול מסד נתונים.
בקטע Instances in your database cluster, לוחצים על Edit Primary.

בקטע Flags, לוחצים על Add a Database Flag.
בוחרים את הדגל ומזינים את הערך. אם הערך שהזנתם לא תקין, במסוף GDC תקבלו הוראות איך להזין את הטווח או את סוג הערך הנדרש.
לוחצים על סיום.
כדי להגדיר את התצורה, לוחצים על שמירה. כדי שחלק מהדגלים ייכנסו לתוקף, צריך להפעיל מחדש את אשכול מסד הנתונים. במקרה כזה, לוחצים על Save and Restart.
כדי לוודא שהדגל החדש הוגדר, חוזרים לקטע Instances in your database cluster באשכול מסד הנתונים ומוודאים שהדגל והערך החדשים מופיעים.
כדי לערוך את הדגלים לניהול מסד הנתונים, חוזרים לקטע Flags ומשנים את הדגלים הקיימים. כדי להסיר דגל לניהול מסד נתונים, מעבירים את העכבר מעל רכיב הדגל ולוחצים על סמל המחיקה .
gdcloud
אתם יכולים להגדיר דגלים חדשים לניהול מסד הנתונים של האשכול, או לאפס את כל הדגלים הקיימים לערכי ברירת המחדל שלהם:
כדי להגדיר דגל לניהול מסד נתונים באשכול של מסדי נתונים, מריצים את הפקודה:
gdcloud database clusters update CLUSTER_NAME \ --database-flags DB_FLAGSמחליפים את מה שכתוב בשדות הבאים:
-
CLUSTER_NAME: השם של אשכול מסד הנתונים. -
DB_FLAGS: רשימה מופרדת בפסיקים של דגלים לניהול מסד נתונים שצריך להגדיר במסד הנתונים שפועל באשכול מסדי הנתונים. כל דגל לניהול מסד נתונים וערך מוגדרים כצמד מפתח/ערך. אפשר להגדיר דגלים בלי ערך, בלי מחרוזת אחרי התו=.
לדוגמה, הפקודה הבאה מגדירה כמה דגלים לניהול מסד הנתונים
test-db-cluster:gdcloud database clusters update test-db-cluster \ --database-flags max_allowed_packet=55555,skip_grant_tables=,log_output=1-
כדי לאפס את כל הדגלים לניהול מסד הנתונים להגדרות ברירת המחדל שלהם, מריצים את הפקודה:
gdcloud database clusters update CLUSTER_NAME --clear-database-flagsמחליפים את
CLUSTER_NAMEבשם של אשכול מסד הנתונים.
API
כדי להגדיר דגלים לניהול מסד הנתונים באשכול של מסד הנתונים, מריצים את הפקודה:
kubectl patch dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"primarySpec": {"parameters": DB_FLAGS}}}' --type=merge -n USER_PROJECTמחליפים את המשתנים הבאים:
-
DBCLUSTER_NAME: השם של אשכול מסד הנתונים. -
USER_PROJECT: השם של פרויקט המשתמש שבו נוצר אשכול מסד הנתונים. -
DB_FLAGS: הפרמטרים של הגדרות מסד הנתונים שצריך להוסיף או לעדכן. האובייקט צריך להיות בפורמט JSON של צמדי מפתח/ערך, שבהם המפתחות הם שמות הפרמטרים של מסד הנתונים והערכים הם ההגדרות שלהם. לדוגמה, הפקודה הבאה מגדירה כמה דגלים לניהול מסד נתונים:
"autovacuum": "on", "autovacuum_analyze_threshold": "2147483647", "dbs.enable_anon": "on"-
כדי לאפס את כל הדגלים לניהול מסד הנתונים להגדרות ברירת המחדל שלהם, מריצים את הפקודה:
kubectl patch dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME --type=json -p='[{"op": "remove", "path": "/spec/primarySpec/parameters"}]' -n USER_PROJECTמחליפים את המשתנים הבאים:
-
DBCLUSTER_NAME: השם של אשכול מסד הנתונים. -
USER_PROJECT: השם של פרויקט המשתמש שבו נוצר אשכול מסד הנתונים.
-
דגלים זמינים לניהול מסדי נתונים
| דגל | טווח | סוג | נדרשת הפעלה מחדש |
|---|---|---|---|
| google_columnar_engine.enabled | מופעל, מושבת | בוליאני | TRUE |
| google_columnar_engine.memory_size_in_mb | [128, 2147483647] | מספר שלם | TRUE |
| anon.algorithm | String | לא נכון | |
| anon.maskschema | String | לא נכון | |
| anon.restrict_to_trusted_schemas | מופעל, מושבת | בוליאני | לא נכון |
| anon.salt | String | לא נכון | |
| anon.sourceschema | String | לא נכון | |
| dbs.enable_anon | on, off | בוליאני | TRUE |
| dbs.enable_pg_bigm | on, off | בוליאני | TRUE |
| dbs.enable_pg_cron | on, off | בוליאני | TRUE |
| dbs.enable_pg_hint_plan | on, off | בוליאני | TRUE |
| dbs.enable_pg_squeeze | on, off | בוליאני | TRUE |
| dbs.enable_pg_wait_sampling | on, off | בוליאני | TRUE |
| pg_bigm.enable_recheck | מופעל, מושבת | בוליאני | לא נכון |
| pg_bigm.gin_key_limit | [0, 2147483647] | מספר שלם | לא נכון |
| pg_bigm.similarity_limit | [0, 1] | Float | לא נכון |
| pg_hint_plan.debug_print | off, on, detailed, verbose, 0, 1, 2, 3, no, yes, false, true | טיפוסים בני מנייה (enum) | TRUE |
| pg_hint_plan.enable_hint | מופעל, מושבת | בוליאני | לא נכון |
| pg_hint_plan.enable_hint_table | מופעל, מושבת | בוליאני | לא נכון |
| pg_hint_plan.message_level | debug5, debug4, debug3, debug2, debug1, debug, info, notice, warning, error, log | טיפוסים בני מנייה (enum) | לא נכון |
| pg_hint_plan.parse_messages | debug5, debug4, debug3, debug2, debug1, debug, info, notice, warning, error, log | טיפוסים בני מנייה (enum) | לא נכון |
| pg_stat_statements.max | [100, 2147483647] | מספר שלם | TRUE |
| pg_stat_statements.save | מופעל, מושבת | בוליאני | לא נכון |
| pg_stat_statements.track | none, top, all | טיפוסים בני מנייה (enum) | לא נכון |
| pg_stat_statements.track_utility | מופעל, מושבת | בוליאני | לא נכון |
| pg_wait_sampling.history_period | [1, 2147483647] | מספר שלם | לא נכון |
| pg_wait_sampling.history_size | [1, 2147483647] | מספר שלם | לא נכון |
| pg_wait_sampling.profile_period | [1, 2147483647] | מספר שלם | לא נכון |
| pg_wait_sampling.profile_pid | מופעל, מושבת | בוליאני | לא נכון |
| pg_wait_sampling.profile_queries | מופעל, מושבת | בוליאני | לא נכון |
| pgaudit.log | read, write, function, role, ddl, misc, misc_set, all, none , -read, -write, -function, -role, -ddl, -misc, -misc_set, -all, -none |
מחרוזת חוזרת | לא נכון |
| pgaudit.log_client | מופעל, מושבת | בוליאני | לא נכון |
| pgaudit.log_parameter | מופעל, מושבת | בוליאני | לא נכון |
| pgaudit.log_level | debug5, debug4, debug3, debug2, debug1, info, notice, warning, error, log |
טיפוסים בני מנייה (enum) | לא נכון |
| pgaudit.log_relation | מופעל, מושבת | בוליאני | לא נכון |
| pgaudit.log_catalog | מופעל, מושבת | בוליאני | לא נכון |
| pgaudit.role | String | לא נכון | |
| pgaudit.log_statement_once | מופעל, מושבת | בוליאני | לא נכון |
| pglogical.batch_inserts | מופעל, מושבת | בוליאני | TRUE |
| pglogical.conflict_log_level | debug5, debug4, debug3 , debug2, debug1 , info, notice , warning, error , log, fatal , panic | טיפוסים בני מנייה (enum) | לא נכון |
| pglogical.conflict_resolution | error, apply_remote, keep_local, last_update_wins, first_update_wins | טיפוסים בני מנייה (enum) | לא נכון |
| pglogical.extra_connection_options | String | לא נכון | |
| pglogical.synchronous_commit | מופעל, מושבת | בוליאני | TRUE |
| pglogical.use_spi | מופעל, מושבת | בוליאני | TRUE |
| pgtt.enabled | מופעל, מושבת | בוליאני | לא נכון |
| plv8.execution_timeout | [1, 65536] | מספר שלם | לא נכון |
| plv8.memory_limit | [256, 3096] | מספר שלם | לא נכון |
| plv8.start_proc | String | לא נכון |