הגדרת משאב מותאם אישית של שכפול v1.7.0

בחירת גרסת תיעוד:

סכמת המפרט

‫ReplicationSpec מגדיר את המצב הרצוי של הרפליקציה.

dbcluster:
  name: string
downstream:
  control: string
  host: string
  password:
    name: string
    namespace: string
  port: integer
  replicationSlotName: string
  username: string
upstream:
  applicationName: string
  logReplicationSlot: boolean
  logicalReplication:
    databaseName: string
    pluginName: string
  password:
    name: string
    namespace: string
  replicationSlotName: string
  synchronous: string
  username: string

שדה

סוג
חובה או אופציונלי

 

תיאור
dbcluster
object
אופציונלי
‫DBCluster הוא ה-DBCluster שאליו שייך ה-Replication הזה.
dbcluster.name
string
אופציונלי
שם הגורם המפנה. מידע נוסף זמין במאמר שמות.
downstream
object
אופציונלי
‫Downstream מכיל מפרטים לשכפול מסד נתונים במורד הזרם.
downstream.control
string
חובה
הפקודה Control מציינת את פעולת השכפול שתתבצע במסד הנתונים הזה. הערכים המותרים הם setup,‏ promote ו-rewind.
downstream.host
string
חובה
המארח הוא נקודת הקצה של החיבור של מסד הנתונים במעלה הזרם, שאליה מסד הנתונים הזה יכול לגשת לצורך שכפול.
downstream.password
object
חובה
הסיסמה היא ההפניה לסוד שמאוחסן במסד הנתונים של המקור, סיסמת המשתמש לשכפול.
downstream.password.name
string
אופציונלי
השם הוא ייחודי במרחב שמות כדי להתייחס למשאב סודי.
downstream.password.namespace
string
אופציונלי
מרחב השמות מגדיר את המרחב שבו שם הסוד חייב להיות ייחודי.
downstream.port
integer
אופציונלי
היציאה היא היציאה של מסד הנתונים במעלה הזרם, שמסד הנתונים הזה יכול לגשת אליה לצורך שכפול. ברירת המחדל היא 5432.
downstream.replicationslotname
string
חובה
‫ReplicationSlotName הוא השם של משבצת השכפול שנוצרה במסד הנתונים במעלה הזרם. הוא משמש את מסד הנתונים הזה לשכפול.
downstream.username
string
חובה
‫Username הוא השם של משתמש הרפליקציה שנוצר במסד הנתונים במעלה הזרם. מסד הנתונים הזה משתמש בו כדי להתחבר ל-upstream לצורך רפליקציה.
upstream
object
אופציונלי
המאגר upstream מכיל מפרט לשכפול מסד נתונים upstream.
upstream.applicationName
string
אופציונלי
‫applicationName הוא המזהה של החיבור לרפליקציה סינכרונית. הערך הזה נדרש אם הערך של Synchronous מוגדר כ-"true".
upstream.logReplicationSlot
boolean
אופציונלי
אם המדיניות LogReplicationSlot מוגדרת כ-true, אפשר לכתוב את משבצת השכפול הזו לקובצי WAL שנוצרו על ידי המופע הראשי.
מומלץ להפעיל את האפשרות הזו, במיוחד בשכפולים חוצי-אזורים. חשוב לוודא שגם ב-DBCluster הראשי מופעלת האפשרות ReplayReplicationSlotsOnStandbys, כדי שמשבצת הרפליקציה שנכתבה לקובצי WAL תופעל מחדש ב-HA standbys.
אם שתי האפשרויות מופעלות, במקרה של יתירות כשל או מעבר לזמינות גבוהה ב-DBCluster הראשי, המכונה הראשית החדשה עם הזמינות הגבוהה תשמור את קובצי ה-WAL שעדיין לא התקבלו ב-DBCluster המשני.
שימו לב: שינוי השדה הזה יגרום להפעלה מחדש של מסד הנתונים הראשי.
upstream.logicalReplication
object
אופציונלי
‫LogicalReplication מציין את הגדרת השכפול הלוגי של משבצת השכפול. אם הוא ריק, משבצת הרפליקציה מוגדרת כמשבצת רפליקציה פיזית.
upstream.logicalReplication.databaseName
string
אופציונלי
‫DatabaseName הוא מסד הנתונים שמשויך למשבצת הזו. רק שינויים ממסד הנתונים הזה מועברים בסטרימינג דרך המשבצת.
upstream.logicalReplication.pluginName
string
אופציונלי
‫PluginName הוא הפלאגין לפענוח שמשויך למשבצת הזו. פרטים נוספים זמינים במאמר הסבר על פענוח לוגי.
upstream.password
object
חובה
הסיסמה היא ההפניה לסוד שבו מאוחסנת הסיסמה של משתמש השכפול. אם לא מספקים סיסמה, נוצרת סיסמה שנשמרת בסוד שמוצג בסטטוס.
upstream.password.name
string
אופציונלי
השם הוא ייחודי במרחב שמות כדי להתייחס למשאב סודי.
upstream.password.namespace
string
אופציונלי
מרחב השמות מגדיר את המרחב שבו שם הסוד חייב להיות ייחודי.
upstream.replicationslotname
string
אופציונלי
‫ReplicationSlotName הוא השם של משבצת השכפול שתשמש לשכפול. אם לא מציינים שם, נוצר שם למשבצת הרפליקציה והוא מוצג בסטטוס.
upstream.synchronous
string
אופציונלי
ההגדרה Synchronous מציינת אם צריך להגדיר את משבצת השכפול לשכפול סינכרוני. אם הערך הוא True, המאפיין applicationName מתווסף לרשימת הגיבויים הסינכרוניים. ברירת המחדל היא false.
הערה: יכול להיות שהפעולה הזו תשפיע לרעה על הביצועים.
upstream.username
string
אופציונלי
שם המשתמש הוא השם של משתמש השכפול שישמש לשכפול. אם לא מספקים שם משתמש, המערכת יוצרת שם משתמש ומציגה אותו בסטטוס.

סכימת סטטוס

‫ReplicationStatus מגדיר את המצב שנצפה של Replication.

conditions:
- lastTransitionTime: string
  message: string
  observedGeneration: integer
  reason: string
  status: string
  type: string
criticalIncidents:
- code: string
  createTime: string
  message: string
  messageTemplateParams: object
  resource:
    component: string
    location:
      cluster: string
      group: string
      kind: string
      name: string
      namespace: string
      version: string
  stackTrace:
  - component: string
    message: string
  transientUntil: string
downstream:
  physicalDownstream:
    passwordResourceVersion: string
    setupStrategies:
      endedAt: string
      message: string
      retries: integer
      startedAt: string
      state: string
      strategy: string
    state: string
observedGeneration: integer
reconciled: boolean
upstream:
  host: string
  password:
    name: string
    namespace: string
  port: integer
  replicationSlotName: string
  username: string

שדה

סוג
חובה או אופציונלי

 

תיאור
conditions[]
object
אופציונלי
המאפיין Conditions מייצג את התצפיות האחרונות שזמינות לגבי המצב הנוכחי של הישות.
conditions[].lastTransitionTime
string
חובה
‫lastTransitionTime הוא הזמן האחרון שבו התנאי עבר מסטטוס אחד לסטטוס אחר, וזה קורה כשהתנאי הבסיסי השתנה. אם לא ידוע מתי התנאי הבסיסי השתנה, צריך להשתמש בשעה שבה השדה של ה-API השתנה.
conditions[].message
string
חובה
ההודעה היא הודעה קריאה (לבני אדם) שמציינת פרטים על המעבר. הערך יכול להיות מחרוזת ריקה.
conditions[].observedGeneration
integer
אופציונלי
‫observedGeneration מייצג את הערך של ‎ .metadata.generation שעליו התבססה הגדרת התנאי. לדוגמה, אם הערך של ‎ .metadata.generation הוא 12, אבל הערך של ‎.status.conditions[x].observedGeneration הוא 9, התנאי לא עדכני ביחס למצב הנוכחי של המופע.
conditions[].reason
string
חובה
הסיבה מכילה מזהה פרוגרמטי שמציין את הסיבה למעבר האחרון של התנאי. יוצרים של סוגי תנאים ספציפיים יכולים להגדיר ערכים ומשמעויות צפויים לשדה הזה, וגם אם הערכים נחשבים ל-API מובטח. הערך חייב להיות מחרוזת CamelCase. השדה הזה לא יכול להיות ריק.
conditions[].status
string
חובה
הסטטוס של התנאי, אחד מהערכים True,‏ False או Unknown.
conditions[].type
string
חובה
סוג התנאי ב-CamelCase או ב-foo.example.com/CamelCase. ערכים רבים של ‎.condition.type עקביים במשאבים כמו Available. מכיוון שתנאים שרירותיים יכולים להיות שימושיים (ראו ‎ .node.status.conditions), היכולת לפתור התנגשויות היא חשובה. הביטוי הרגולרי שתואם לו הוא (dns1123SubdomainFmt/)?(qualifiedNameFmt).
criticalIncidents[]
object
חובה
‫CriticalIncidents היא רשימה של כל האירועים הקריטיים הפעילים.
criticalIncidents[].code
string
חובה
הקוד הוא קוד השגיאה של השגיאה הספציפית הזו. קודי השגיאה הם מחרוזות של DBSE+numeric, כמו DBSE1012.
criticalIncidents[].createTime
string
חובה
‫CreateTime היא חותמת הזמן שבה האירוע נוצר במקור.
criticalIncidents[].message
string
אופציונלי
ההודעה מתארת את האירוע או את השגיאה שהתרחשו.
criticalIncidents[].messageTemplateParams
object
אופציונלי
‫MessageTemplateParams מכיל צמדי מפתח/ערך שנדרשים כדי ליצור גרסה ידידותית למשתמש ומבוססת-נתונים של Message בממשק המשתמש.
criticalIncidents[].resource
object
חובה
המשאב מכיל מידע על רכיב Database Service שדיווח על האירוע, וגם מידע על המשאב ב-Kubernetes.
criticalIncidents[].resource.component
string
חובה
רכיב הוא מזהה פנימי של מערכת המשנה של שירות מסד הנתונים שדיווחה על האירוע.
criticalIncidents[].resource.location
object
אופציונלי
מיקום.
criticalIncidents[].resource.location.cluster
string
אופציונלי
שם האשכול של המשאב המושפע ב-Kubernetes.
criticalIncidents[].resource.location.group
string
אופציונלי
שם הקבוצה של המשאב ב-Kubernetes.
criticalIncidents[].resource.location.kind
string
אופציונלי
הסוג של המשאב ב-Kubernetes.
criticalIncidents[].resource.location.name
string
אופציונלי
השם של משאב ב-Kubernetes שהושפע.
criticalIncidents[].resource.location.namespace
string
אופציונלי
מרחב השמות של המשאב המושפע ב-Kubernetes.
criticalIncidents[].resource.location.version
string
אופציונלי
הגרסה של משאב ב-Kubernetes.
criticalIncidents[].stackTrace[]
object
אופציונלי
רשימה לא מובנית של הודעות מדוח קריסות.
criticalIncidents[].stackTrace[].component
string
אופציונלי
השם של רכיב בשירות מסד הנתונים שרשם את ההודעה ביומן.
criticalIncidents[].stackTrace.message
string
אופציונלי
הודעה ביומן.
criticalIncidents[].transientUntil
string
אופציונלי
אם המאפיין TransientUntil קיים, המשמעות היא שצריך להתייחס לבעיה כאל בעיה חולפת עד למועד שצוין.
downstream
object
אופציונלי
‫Downstream מכיל את המצב שנצפה במסד הנתונים של הרפליקציה במורד הזרם.
downstream.physicalDownstream
object
אופציונלי
downstream.physicalDownstream.passwordResourceVersion
string
אופציונלי
‫PasswordResourceVersion היא גרסת המשאב של הסיסמה הסודית. הגרסה הזו מייצגת את המועד שבו הסיסמה עודכנה לאחרונה במסד הנתונים.
downstream.physicalDownstream.setupStrategies
object
אופציונלי
השדה SetupStrategies מכיל מידע על הביצוע של כל אסטרטגיית הגדרה שניסיתם. הן מופיעות ברשימה הזו באותו סדר שבו הוגדרו במפרט.
downstream.physicalDownstream.setupStrategies.endedAt
string
אופציונלי
‫EndedAt הוא הזמן שבו הסתיים הניסיון האחרון של האסטרטגיה הזו.
downstream.physicalDownstream.setupStrategies.message
string
אופציונלי
ההודעה היא תיאור של הסיבה לכך שניסיון ההגדרה נמצא במצב הנוכחי.
downstream.physicalDownstream.setupStrategies.retries
integer
אופציונלי
הערך של "ניסיונות חוזרים" הוא מספר הפעמים שהמערכת ניסתה להפעיל את האסטרטגיה הזו.
downstream.physicalDownstream.setupStrategies.startedAt
string
אופציונלי
השדה StartedAt מציין את השעה שבה התחיל הניסיון האחרון של האסטרטגיה הזו.
downstream.physicalDownstream.setupStrategies.state
string
חובה
הסטטוס הנוכחי של שיטת ההגדרה הזו. אפשר להזין בו את הערכים הבאים:
InProgress: האסטרטגיה פועלת כרגע.
Success: האסטרטגיה הושלמה בהצלחה ולא יתבצעו ניסיונות נוספים להגדרת אסטרטגיות.
Error: השיטה נכשלה אבל המערכת תנסה שוב. בשדה 'ניסיונות חוזרים' יופיע מספר הפעמים שהשיטה הזו נוסתה מחדש.
Fallback: השיטה נכשלה ולא יתבצע ניסיון נוסף. במקום זאת, המערכת תעבור לשיטת הבידינג הזמינה הבאה, אם היא קיימת.
Unknown
downstream.physicalDownstream.setupStrategies.strategy
string
חובה
השם של סוג השיטה שהסטטוס הזה מתייחס אליו.
downstream.physicalDownstream.state
object
אופציונלי
הסטטוס הוא סטטוס הרפליקציה כפי שמופיע בטבלה pg_stat_wal_receiver של שרת מסד הנתונים במורד הזרם.
observedgeneration
integer
אופציונלי
פנימי: הדור שנצפה על ידי הבקר.
reconciled
boolean
אופציונלי
פנימי: האם המשאב הותאם על ידי הבקר.
upstream
object
אופציונלי
השדה Upstream מכיל את המצב שנצפה במסד הנתונים של הרפליקציה במעלה הזרם.
upstream.host
string
אופציונלי
המאפיין Host הוא נקודת הקצה של החיבור למסד הנתונים הזה, שמסדי הנתונים במורד הזרם יכולים לגשת אליה כדי לשכפל את הנתונים.
upstream.password
object
אופציונלי
הסיסמה היא ההפניה לסוד שבו מאוחסנת סיסמת המשתמש לשכפול של מסד הנתונים הזה.
upstream.password.name
string
אופציונלי
השם הוא ייחודי במרחב שמות כדי להתייחס למשאב סודי.
upstream.password.namespace
string
אופציונלי
מרחב השמות מגדיר את המרחב שבו שם הסוד חייב להיות ייחודי.
upstream.port
integer
אופציונלי
היציאה היא היציאה של מסד הנתונים הזה, שמסדי נתונים במורד הזרם יכולים לגשת אליה לצורך שכפול.
upstream.replicationslotname
string
אופציונלי
‫ReplicationSlotName הוא השם של משבצת השכפול שנוצרה במסד הנתונים הזה. מסדי נתונים במורד הזרם יכולים להשתמש במשבצת השכפול הזו לשכפול.
upstream.username
string
אופציונלי
שם המשתמש הוא השם של משתמש הרפליקציה במסד הנתונים הזה. מסדי נתונים במורד הזרם יכולים להשתמש במשתמש הזה כדי להתחבר למסד הנתונים הזה לצורך שכפול.