סכימת המפרט
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חובה | הפקד מציין את פעולת הרפליקציה שתתבצע במסד הנתונים הזה. הערכים המותרים הם setup, promote ו-rewind. |
downstream.host
| |
stringחובה | המארח הוא נקודת הקצה של החיבור של מסד הנתונים במעלה הזרם, שמסד הנתונים הזה יכול לגשת אליה לצורך שכפול. |
downstream.password
| |
objectחובה | הסיסמה היא ההפניה לסוד שבו מאוחסנת סיסמת המשתמש לשכפול של מסד הנתונים במעלה הזרם. |
downstream.password.name
| |
stringאופציונלי | השם הוא ייחודי במרחב שמות כדי להפנות למשאב סודי. |
downstream.password.namespace
| |
stringאופציונלי | namespace מגדיר את המרחב שבו שם הסוד חייב להיות ייחודי. |
downstream.port
| |
integerאופציונלי | היציאה היא היציאה של מסד הנתונים במעלה הזרם, שמסד הנתונים הזה יכול לגשת אליה לצורך שכפול. ברירת המחדל היא 5432. |
downstream.replicationslotname
| |
stringחובה | ReplicationSlotName הוא השם של משבצת הרפליקציה שנוצרה במסד הנתונים במעלה הזרם. מסד הנתונים הזה משתמש בו לשכפול. |
downstream.username
| |
stringחובה | Username הוא השם של משתמש הרפליקציה שנוצר במסד הנתונים במעלה הזרם. מסד הנתונים הזה משתמש בו כדי להתחבר למעלה לצורך שכפול. |
upstream
| |
objectאופציונלי | השדה Upstream מכיל מפרט לשכפול מסד נתונים במעלה הזרם. |
upstream.applicationName
| |
stringאופציונלי | applicationName הוא המזהה של החיבור לרפליקציה סינכרונית. הערך הזה נדרש אם הערך של Synchronous מוגדר כ-"true". |
upstream.logReplicationSlot
| |
booleanאופציונלי |
אם הערך של LogReplicationSlot מוגדר כ-true, משבצת השכפול הזו תוכל להיכתב לקובצי WAL שנוצרו על ידי המכונה הראשית. מומלץ להפעיל את האפשרות הזו, במיוחד ברפליקציות בין אזורים. חשוב לוודא שגם ב-DBCluster הראשי מופעלת האפשרות ReplayReplicationSlotsOnStandbys, כדי שמשבצת השכפול שנכתבה לקובצי WAL תופעל מחדש במצב המתנה של HA. אם שתי האפשרויות מופעלות, במקרה של יתירות כשל או מעבר לזמינות גבוהה ב-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אופציונלי | namespace מגדיר את המרחב שבו שם הסוד חייב להיות ייחודי. |
upstream.replicationslotname
| |
stringאופציונלי | ReplicationSlotName הוא השם של משבצת הרפליקציה שמשמשת לרפליקציה. אם לא מציינים שם, נוצר שם למשבצת הרפליקציה והוא מוצג בסטטוס. |
upstream.synchronous
| |
stringאופציונלי |
הערך Synchronous מציין אם צריך להגדיר את משבצת הרפליקציה לרפליקציה סינכרונית. אם הערך הוא True, המאפיין applicationName מתווסף לרשימת הגיבויים הסינכרוניים. ברירת המחדל היא false.הערה: יכול להיות שתהיה לכך השפעה שלילית על הביצועים. |
upstream.username
| |
stringאופציונלי | שם המשתמש הוא השם של משתמש הרפליקציה שמשמש לרפליקציה. אם לא תספקו שם משתמש, המערכת תיצור שם משתמש ותציג אותו בסטטוס. |
סכימת סטטוס
ReplicationStatus מגדיר את המצב הנצפה של הרפליקציה.
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[].lastTransitionTime
| |
stringחובה | lastTransitionTime הוא הזמן האחרון שבו התנאי עבר מסטטוס אחד לאחר, וזה קורה כשהתנאי הבסיסי משתנה. אם לא ידוע מתי השתנה המצב הבסיסי, צריך להשתמש בזמן שבו השתנה השדה ב-API. |
conditions[].message
| |
stringחובה | message הוא הודעה קריאה לאנשים שמציינת פרטים על המעבר. הערך בשדה הזה יכול להיות מחרוזת ריקה. |
conditions[].observedGeneration
| |
integerאופציונלי | observedGeneration מייצג את .metadata.generation שעליו התנאי מבוסס. לדוגמה, אם הערך של .metadata.generation הוא 12, אבל הערך של .status.conditions[x].observedGeneration הוא 9, התנאי לא מעודכן ביחס למצב הנוכחי של המכונה. |
conditions[].reason
| |
stringחובה | השדה reason מכיל מזהה פרוגרמטי שמציין את הסיבה למעבר האחרון של התנאי. יוצרים של סוגי תנאים ספציפיים יכולים להגדיר ערכים ומשמעויות צפויים לשדה הזה, ולקבוע אם הערכים נחשבים ל-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 מכיל צמדי מפתח/ערך שנדרשים כדי ליצור גרסה ידידותית למשתמש של ההודעה בממשק המשתמש, שמבוססת על נתונים. |
criticalIncidents[].resource
| |
objectחובה | המשאב מכיל מידע על רכיב Database Service שדיווח על האירוע, וגם מידע על המשאב ב-Kubernetes. |
criticalIncidents[].resource.component
| |
stringחובה | הרכיב הוא מזהה פנימי של תת-המערכת של Database Service שדיווחה על האירוע. |
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אופציונלי | השם של רכיב Database Service שתיעד את ההודעה ביומן. |
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אופציונלי | הערך של Retries הוא מספר הפעמים שהמערכת ניסתה להפעיל את האסטרטגיה הזו. |
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אופציונלי | השדה State הוא מצב הרפליקציה כפי שמופיע בטבלה pg_stat_wal_receiver של שרת מסד הנתונים במורד הזרם. |
observedgeneration
| |
integerאופציונלי | פנימי: הדור שנצפה על ידי הבקר. |
reconciled
| |
booleanאופציונלי | פנימי: אם המשאב הותאם על ידי הבקר. |
upstream
| |
objectאופציונלי | השדה Upstream מכיל את המצב שנצפה במסד הנתונים של הרפליקציה במעלה הזרם. |
upstream.host
| |
stringאופציונלי | המארח הוא נקודת הקצה של החיבור של מסד הנתונים הזה, שמסדי הנתונים במורד הזרם יכולים לגשת אליה לצורך שכפול. |
upstream.password
| |
objectאופציונלי | הסיסמה היא ההפניה לסוד שבו מאוחסנת סיסמת המשתמש לשכפול של מסד הנתונים הזה. |
upstream.password.name
| |
stringאופציונלי | השם הוא ייחודי במרחב שמות כדי להפנות למשאב סודי. |
upstream.password.namespace
| |
stringאופציונלי | namespace מגדיר את המרחב שבו שם הסוד חייב להיות ייחודי. |
upstream.port
| |
integerאופציונלי | היציאה היא היציאה של מסד הנתונים הזה, שמסדי נתונים במורד הזרם יכולים לגשת אליה לצורך שכפול. |
upstream.replicationslotname
| |
stringאופציונלי | ReplicationSlotName הוא השם של משבצת השכפול שנוצרה במסד הנתונים הזה. מסדי נתונים במורד הזרם יכולים להשתמש במשבצת השכפול הזו לשכפול. |
upstream.username
| |
stringאופציונלי | שם המשתמש הוא השם של משתמש הרפליקציה במסד הנתונים הזה. מסדי נתונים במורד הזרם יכולים להשתמש במשתמש הזה כדי להתחבר למסד הנתונים הזה לצורך שכפול. |