הגדרת משאב מותאם אישית של PgBouncer גרסה 1.3.0

בחירת גרסה של מאמר העזרה:

סכימת המפרט

‫PgBouncerSpec מגדיר את המצב שנבחר של PgBouncer.

accessMode: string
allowSuperUserAccess: boolean
dbclusterRef: string
parameters: object
podSpec:
  image: string
  resources:
    cpu: integer or string
    memory: integer or string
  schedulingconfig:
    nodeaffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
        preference:
          matchExpressions:
          - key: string
            operator: string
            values: string
          matchFields:
          - key: string
            operator: string
            values: string
        weight: integer
      requiredDuringSchedulingIgnoredDuringExecution:
        nodeSelectorTerms:
          matchExpressions:
          - key: string
            operator: string
            values: string
          matchFields:
          - key: string
            operator: string
            values: string
    podAffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
      - podAffinityTerm:
          labelSelector:
            matchExpressions:
            - key: string
              operator: string
              values: string
            matchLabels: object
          namespaceSelector:
            matchExpressions:
            - key: string
              operator: string
              values: string
            matchLabels: object
            namespaces: string
            topologyKey: string
        weight: integer
      requiredDuringSchedulingIgnoredDuringExecution:
        labelSelector:
          matchExpressions:
          - key: string
            operator: string
            values: string
          matchLabels: object
        namespaceSelector:
          matchExpressions:
          - key: string
            operator: string
            values: string
          matchLabels: object
        namespaces: string
        topologyKey: string
    podAntiAffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
        podAffinityTerm:
          labelSelector:
            matchExpressions:
            - key: string
              operator: string
              type: string
            matchLabels: object
          namespaceSelector:
            matchExpressions:
            - key: string
              operator: string
              values: string
            matchLabels: object
          namespaces: string
          topologyKey: string
        weight: integer
      requiredDuringSchedulingIgnoredDuringExecution:
        labelSelector:
          matchExpressions:
          - key: string
            operator: string
            values: string
          matchLabels: object
        namespaceSelector:
          matchExpressions:
          - key: string
            operator: string
            type: string
          matchLabels: object
        namespaces: string
        topologyKey: string
    tolerations:
    - effect: string
      key: string
      operator: string
      tolerationSeconds: integer
      value: string
replicaCount: integer
serverTLS:
  certSecret:
    name: string
serviceOptions:
  annotations: object
  gcp:
    loadBalancerIP: string
    loadBalancerType: string
  type: object

שדה

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

 

תיאור
accessMode
string
אופציונלי
ההגדרה הזו מגדירה את מצבי הגישה rw קריאה-כתיבה או ro קריאה בלבד לחיבורי PgBouncer. ערך ברירת המחדל הוא ro.
allowSuperUserAccess
boolean
אופציונלי
הערך של AllowSuperUserAccess יכול להיות true או false
dbclusterRef
string
חובה
‫DBClusterRef הוא שם ה-DBCluster ש-PgBouncer מאגד את החיבורים שלו. צריך ליצור את אובייקט PgBouncer באותו מרחב שמות כמו אובייקט DBCluster שאליו הוא מפנה. השדה הזה נדרש לאיגום חיבורים של PgBouncer.
parameters
object
אופציונלי
הפרמטרים יכילו צמדי מפתח-ערך של הגדרות שונות של PgBouncer שאפשר להגדיר. אפשר לקרוא על האפשרויות השונות שזמינות בכתובת https://www.pgbouncer.org/config.html. יצירת שירות PgBouncer כולל כמה דוגמאות למפרט הזה.
podspec
object
חובה
‫PodSpec מכיל את המפרטים של ה-Pod של PgBouncer. הוא מכיל את משאבי התמונה, המחשוב והאחסון שמשרתים את ה-pod של PgBouncer, יחד עם אפשרויות תזמון.
podSpec.image
string
חובה
התמונה היא מזהה משאב אחיד (URI) של תמונת pgbouncer מותאמת אישית במאגר הארטיפקטים.
podSpec.resources
object
חובה
הקטע Resources (משאבים) מייצג את התצורה הנוכחית של הזיכרון והמעבד.
podSpec.resources.cpu
integer or string
חובה
כמות המעבד שהוקצתה למאגר pgbouncer.
podSpec.resources.memory
integer or string
חובה
נפח הזיכרון שהוקצה למאגר PgBouncer.
podSpec.schedulingConfig
object
אופציונלי
משתמשים בשדה SchedulingConfig כדי לציין איך המכונה מתוזמנת בצמתים של Kubernetes. שינוי של שדה כלשהו בהגדרות התזמון עלול לגרום ל-Kubernetes לתזמן מחדש את ה-Pod בצומת אחר, בהתאם להגדרה החדשה.
podSpec.schedulingConfig.nodeAffinity
object
אופציונלי
המאפיין NodeAffinity מתאר כללי תזמון של שיוך צומת למופע.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution
object
אופציונלי
בשדה הזה אפשר לציין העדפות של שיוך לתזמון של פודים. מתזמן המשימות מנסה למקם את ה-Pods בצמתים שתואמים להעדפות שלכם. עם זאת, לא תמיד אפשר לעשות את זה. המתזמן מחשב 'משקל' לכל צומת על סמך מידת ההתאמה שלו להעדפות שלכם, ובוחר את הצומת עם המשקל הגבוה ביותר.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference
object
חובה
מונח לבחירת צומת, שמשויך למשקל המתאים.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions
object
אופציונלי
רשימה של דרישות לבחירת צמתים לפי התוויות של הצומת.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.key
string
חובה
מפתח התווית שהבורר חל עליו.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.operator
string
חובה
מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקפים הם In,‏ NotIn,‏ Exists,‏ DoesNotExist,‏ Gt ו-Lt.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchExpressions.values
string
אופציונלי
מערך של ערכי מחרוזת. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. אם האופרטור הוא Gt או Lt, מערך הערכים חייב להכיל רכיב יחיד, שמפורש כמספר שלם. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields
object
אופציונלי
רשימה של דרישות לבחירת צומת לפי השדות של הצומת.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.key
string
חובה
מפתח התווית שהבורר חל עליו.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.operator
string
חובה
מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקפים הם In,‏ NotIn,‏ Exists,‏ DoesNotExist,‏ Gt ו-Lt.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.preference.matchFields.values
string
אופציונלי
מערך של ערכי מחרוזת. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. אם האופרטור הוא Gt או Lt, מערך הערכים חייב להכיל רכיב יחיד, שמתפרש כמספר שלם. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
integer
חובה
המשקל שמשויך להתאמה של nodeSelectorTerm המתאים הוא בטווח 1 עד 100 (כולל).
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
object
אופציונלי
אם הדרישות של השדה הזה לא מתקיימות, מתזמן המשימות לא מתזמן את ה-Pod בצומת. אם הדרישות של ההעדפה שצוינו בשדה הזה לא מתקיימות בשלב מסוים במהלך ההפעלה של ה-Pod, למשל בגלל עדכון, יכול להיות שהמערכת תנסה בסופו של דבר להוציא את ה-Pod מהצומת שלו, ויכול להיות שלא.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms
object
חובה
רשימה של תנאים לבחירת צמתים. התנאים מופרדים באמצעות OR.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions
object
אופציונלי
רשימה של דרישות לבחירת צמתים לפי התוויות של הצומת.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.key
string
חובה
מפתח התווית שהבורר חל עליו.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.operator
string
חובה
מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקפים הם In,‏ NotIn,‏ Exists,‏ DoesNotExist,‏ Gt ו-Lt.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions.values
string
אופציונלי
מערך של ערכי מחרוזת. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. אם האופרטור הוא Gt או Lt, מערך הערכים חייב להכיל רכיב יחיד, שמתפרש כמספר שלם. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields
object
אופציונלי
רשימה של דרישות לבחירת צומת לפי השדות של הצומת.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.key
string
חובה
מפתח התווית שהבורר חל עליו.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.operator
string
חובה
מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקפים הם In,‏ NotIn,‏ Exists,‏ DoesNotExist,‏ Gt ו-Lt.
podSpec.schedulingConfig.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields.values
string
אופציונלי
מערך של ערכי מחרוזת. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. אם האופרטור הוא Gt או Lt, מערך הערכים חייב להכיל רכיב יחיד, שמתפרש כמספר שלם. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.podAffinity
object
אופציונלי
המאפיין PodAffinity מתאר כללי תזמון של שיוך פודים למופע.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution
object
אופציונלי
מתזמן המשימות נותן עדיפות לצמתים שתואמים לביטויי הקרבה שצוינו בשדה הזה כשמתזמנים את ה-Pods. יכול להיות שהמתזמן עדיין יבחר צומת שלא עומד בקריטריונים באופן מלא. הצומת המועדף ביותר הוא זה עם המשקל הכולל הגבוה ביותר. המשקל הזה מחושב על ידי סיכום הערכים של כל צומת שמקיים את כל דרישות התזמון (כמו בקשות למשאבים או ביטויי שייכות שנדרשים במהלך התזמון). לכל podAffinityTerm תואם, המשקל של הצומת עולה, והצמתים עם המשקל הכולל הגבוה ביותר נבחרים כצמתים המועדפים ביותר.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm
object
חובה
מונח של קרבה בין פודים, שמשויך למשקל המתאים.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector
object
אופציונלי
שאילתת תווית על קבוצה של משאבים, במקרה הזה, pods.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions
object
אופציונלי
כדי שתתרחש התאמה, כל הביטויים של matchExpression ברשימה צריכים להיות true.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.key
string
חובה
מפתח התווית שהבורר חל עליו.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operator
string
חובה
אופרטור מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקינים הם In, NotIn, Exists ו-DoesNotExist.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.values
string
אופציונלי
‫values הוא מערך של ערכי מחרוזות. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabels
object
אופציונלי
‫matchLabels היא מפה של צמדי {key,value}. צמד יחיד {key,value} במפה matchLabels שווה לאלמנט של matchExpressions, ששדה המפתח שלו הוא 'key', האופרטור הוא 'In', ומערך הערכים מכיל רק 'value'. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector
object
אופציונלי
שאילתת תווית על קבוצת מרחבי השמות שהמונח חל עליהם. המונח חל על איחוד מרחבי השמות שנבחרו בשדה הזה ועל אלה שמופיעים בשדה של מרחבי השמות. אם הבורר הוא null ורשימת מרחבי השמות היא null או ריקה, המשמעות היא 'מרחב השמות של הפוד הזה'. בורר ריק ({}) תואם לכל מרחבי השמות.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions
object
אופציונלי
‫matchExpressions היא רשימה של דרישות לבחירת תוויות. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.key
string
חובה
‫key הוא מפתח התווית שהסלקטור חל עליו.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operator
string
חובה
אופרטור מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקינים הם In, NotIn, Exists ו-DoesNotExist.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.values
string
אופציונלי
‫values הוא מערך של ערכי מחרוזות. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabels
object
אופציונלי
‫matchLabels היא מפה של צמדי {key,value}. צמד יחיד {key,value} במפה matchLabels שווה לאלמנט של matchExpressions, ששדה המפתח שלו הוא 'key', האופרטור הוא 'In', ומערך הערכים מכיל רק 'value'. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
string
אופציונלי
‫namespaces מציין רשימה סטטית של שמות מרחבי שמות שהמונח חל עליהם. המונח חל על איחוד מרחבי השמות שמופיעים בשדה הזה ועל אלה שנבחרו על ידי namespaceSelector. רשימת מרחבי שמות ריקה או null ו-namespaceSelector ריק או null פירושם 'מרחב השמות של הפוד הזה'.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.topologyKey
string
חובה
ה-Pod הזה צריך להיות ממוקם באותו מיקום (affinity) או לא באותו מיקום (anti-affinity) עם ה-Pods שתואמים ל-labelSelector במרחבי השמות שצוינו. הגדרה של מיקום משותף היא הפעלה בצומת שערך התווית שלו עם מפתח topologyKey תואם לערך של צומת כלשהו שבו מופעלים אחד מהפודים שנבחרו. אסור להשתמש ב-topologyKey ריק.
podSpec.schedulingConfig.podAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
integer
חובה
משקל שמשויך להתאמה של podAffinityTerm המתאים, בטווח 1-100.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution
object
אופציונלי
אם הדרישות לזיקה שצוינו בשדה הזה לא מתקיימות בזמן התזמון, ה-Pod לא יתוזמן לצומת. אם הדרישות של ההעדפה שצוינו בשדה הזה לא מתקיימות בשלב מסוים במהלך ההפעלה של ה-Pod – למשל, בגלל עדכון של תווית ה-Pod – יכול להיות שהמערכת תנסה בסופו של דבר להוציא את ה-Pod מהצומת שלו, ויכול להיות שלא. אם יש כמה רכיבים, המערכת מבצעת חיתוך בין רשימות הצמתים שמתאימות לכל podAffinityTerm, כלומר כל התנאים צריכים להתקיים.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
object
אופציונלי
שאילתת תווית על קבוצה של משאבים, במקרה הזה, pods.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
object
אופציונלי
שאילתת תווית על קבוצה של משאבים, במקרה הזה, pods.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions
object
אופציונלי
כדי שתתרחש התאמה, כל הביטויים של matchExpression ברשימה צריכים להיות true.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key
string
חובה
‫key הוא מפתח התווית שהסלקטור חל עליו.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operator
string
חובה
אופרטור מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקינים הם In, NotIn, Exists ו-DoesNotExist.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.values
string
אופציונלי
‫values הוא מערך של ערכי מחרוזות. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchLabels
object
אופציונלי
‫matchLabels היא מפה של צמדי {key,value}. צמד יחיד {key,value} במפה matchLabels שווה לאלמנט של matchExpressions, ששדה המפתח שלו הוא 'key', האופרטור הוא 'In', ומערך הערכים מכיל רק 'value'. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector
object
אופציונלי
שאילתת תווית על קבוצת מרחבי השמות שהמונח חל עליהם. המונח חל על איחוד מרחבי השמות שנבחרו בשדה הזה ועל אלה שמופיעים בשדה של מרחבי השמות. אם הבורר הוא null ורשימת מרחבי השמות היא null או ריקה, המשמעות היא 'מרחב השמות של הפוד הזה'. בורר ריק ({}) תואם לכל מרחבי השמות.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions
object
אופציונלי
‫matchExpressions היא רשימה של דרישות לבחירת תוויות. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.key
string
חובה
‫key הוא מפתח התווית שהסלקטור חל עליו.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operator
string
חובה
אופרטור מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקפים הם In,‏ NotIn,‏ Exists,‏ DoesNotExist,‏ Gt ו-Lt.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.values
string
אופציונלי
‫values הוא מערך של ערכי מחרוזות. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
object
אופציונלי
‫matchLabels היא מפה של צמדי {key,value}. צמד יחיד {key,value} במפה matchLabels שווה לאלמנט של matchExpressions, ששדה המפתח שלו הוא 'key', האופרטור הוא 'In', ומערך הערכים מכיל רק 'value'. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
object
אופציונלי
‫matchLabels היא מפה של צמדי {key,value}. צמד יחיד {key,value} במפה matchLabels שווה לאלמנט של matchExpressions, ששדה המפתח שלו הוא 'key', האופרטור הוא 'In', ומערך הערכים מכיל רק 'value'. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
string
אופציונלי
‫namespaces מציין רשימה סטטית של שמות מרחבי שמות שהמונח חל עליהם. המונח חל על איחוד מרחבי השמות שמופיעים בשדה הזה ועל אלה שנבחרו על ידי namespaceSelector. רשימת מרחבי שמות ריקה או null ו-namespaceSelector ריק או null פירושם 'מרחב השמות של הפוד הזה'.
podSpec.schedulingConfig.podAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKey
string
חובה
ה-Pod הזה צריך להיות ממוקם באותו מיקום (affinity) או לא באותו מיקום (anti-affinity) עם ה-Pods שתואמים ל-labelSelector במרחבי השמות שצוינו. הגדרה של מיקום משותף היא הפעלה בצומת שערך התווית שלו עם מפתח topologyKey תואם לערך של צומת כלשהו שבו מופעלים אחד מהפודים שנבחרו. אסור להשתמש ב-topologyKey ריק.
podSpec.schedulingConfig.podAntiAffinity
object
אופציונלי
‫PodAntiAffinity מתאר כללי תזמון של אנטי-אפיניות של פודים עבור המופע.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution
object
אופציונלי
המתזמן מעדיף לתזמן פודים לצמתים שעומדים בביטויים של אנטי-אפיניות שצוינו בשדה הזה, אבל יכול להיות שהמתזמן יבחר צומת שלא עומד באחד או יותר מהביטויים. הצומת המועדף ביותר הוא זה עם סכום המשקלים הגדול ביותר. במילים אחרות, לכל צומת שעומד בכל דרישות התזמון (בקשת משאבים, ביטויי אנטי-זיקה שנדרשים במהלך התזמון וכו'), המערכת מחשבת סכום על ידי איטרציה של רכיבי השדה הזה והוספת 'משקל' לסכום, אם לצומת יש פודים שתואמים ל-podAffinityTerm המתאים. הצמתים עם הסכום הגבוה ביותר הם המועדפים ביותר.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm
object
חובה
מונח של קרבה בין פודים, שמשויך למשקל המתאים.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector
object
אופציונלי
שאילתת תווית על קבוצה של משאבים, במקרה הזה, pods.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions
object
אופציונלי
‫matchExpressions היא רשימה של דרישות לבחירת תוויות. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.key
string
חובה
‫key הוא מפתח התווית שהסלקטור חל עליו.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.operator
string
חובה
אופרטור מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקינים הם In, NotIn, Exists ו-DoesNotExist.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchExpressions.values
string
אופציונלי
‫values הוא מערך של ערכי מחרוזות. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.labelSelector.matchLabels
object
אופציונלי
‫matchLabels היא מפה של צמדי {key,value}. צמד יחיד {key,value} במפה matchLabels שווה לאלמנט של matchExpressions, ששדה המפתח שלו הוא 'key', האופרטור הוא 'In', ומערך הערכים מכיל רק 'value'. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector
object
אופציונלי
שאילתת תווית על קבוצת מרחבי השמות שהמונח חל עליהם. המונח חל על איחוד מרחבי השמות שנבחרו בשדה הזה ועל אלה שמופיעים בשדה של מרחבי השמות. אם הבורר הוא null ורשימת מרחבי השמות היא null או ריקה, המשמעות היא 'מרחב השמות של הפוד הזה'. בורר ריק ({}) תואם לכל מרחבי השמות.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions
object
אופציונלי
‫matchExpressions היא רשימה של דרישות לבחירת תוויות. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.key
string
חובה
‫key הוא מפתח התווית שהסלקטור חל עליו.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.operator
string
חובה
אופרטור מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקינים הם In, NotIn, Exists ו-DoesNotExist.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchExpressions.values
string
אופציונלי
‫values הוא מערך של ערכי מחרוזות. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaceSelector.matchLabels
object
אופציונלי
מפה של צמדי מפתח/ערך. כל צמד מפתח/ערך משמש כדרישה. מתזמן המשימות מתאים בין ה-Pods לבין הצמתים שיש להם את כל התוויות שצוינו ב-matchLabels.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.namespaces
string
אופציונלי
‫namespaces מציין רשימה סטטית של שמות מרחבי שמות שהמונח חל עליהם. המונח חל על איחוד מרחבי השמות שמופיעים בשדה הזה ועל אלה שנבחרו על ידי namespaceSelector. רשימת מרחבי שמות ריקה או null ו-namespaceSelector ריק או null פירושם 'מרחב השמות של הפוד הזה'.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.podAffinityTerm.topologyKey
string
חובה
ה-Pod הזה צריך להיות ממוקם באותו מיקום (affinity) או לא באותו מיקום (anti-affinity) עם ה-Pods שתואמים ל-labelSelector במרחבי השמות שצוינו. הגדרה של מיקום משותף היא הפעלה בצומת שערך התווית שלו עם מפתח topologyKey תואם לערך של צומת כלשהו שבו מופעלים אחד מהפודים שנבחרו. אסור להשתמש ב-topologyKey ריק.
podSpec.schedulingConfig.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution.weight
integer
חובה
משקל שמשויך להתאמה של podAffinityTerm המתאים, בטווח 1-100.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution
object
אופציונלי
אם הדרישות למניעת קרבה שצוינו בשדה הזה לא מתקיימות בזמן התזמון, הפוד לא מתזמן לצומת. אם הדרישות למניעת קרבה שצוינו בשדה הזה לא מתקיימות בשלב מסוים במהלך ההפעלה של ה-Pod (לדוגמה, בגלל עדכון של תווית ה-Pod), יכול להיות שהמערכת תנסה בסופו של דבר להוציא את ה-Pod מהצומת שלו, ויכול להיות שלא. אם יש כמה רכיבים, המערכת מבצעת חיתוך בין רשימות הצמתים שמתאימות לכל podAffinityTerm, כלומר כל התנאים צריכים להתקיים.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector
object
אופציונלי
שאילתת תווית על קבוצה של משאבים, במקרה הזה, pods.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions
object
אופציונלי
‫matchExpressions היא רשימה של דרישות לבחירת תוויות. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.key
string
חובה
‫key הוא מפתח התווית שהסלקטור חל עליו.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.operator
string
חובה
אופרטור מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקינים הם In, NotIn, Exists ו-DoesNotExist.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchExpressions.values
string
אופציונלי
‫values הוא מערך של ערכי מחרוזות. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.labelSelector.matchLabels
object
אופציונלי
‫matchLabels היא מפה של צמדי {key,value}. צמד יחיד {key,value} במפה matchLabels שווה לאלמנט של matchExpressions, ששדה המפתח שלו הוא 'key', האופרטור הוא 'In', ומערך הערכים מכיל רק 'value'. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector
object
אופציונלי
שאילתת תווית על קבוצת מרחבי השמות שהמונח חל עליהם. המונח חל על איחוד מרחבי השמות שנבחרו בשדה הזה ועל אלה שמופיעים בשדה של מרחבי השמות. אם הבורר הוא null ורשימת מרחבי השמות היא null או ריקה, המשמעות היא 'מרחב השמות של הפוד הזה'. בורר ריק ({}) תואם לכל מרחבי השמות.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions
object
אופציונלי
‫matchExpressions היא רשימה של דרישות לבחירת תוויות. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.key
string
חובה
‫key הוא מפתח התווית שהסלקטור חל עליו.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.operator
string
חובה
אופרטור מייצג את הקשר של מפתח לקבוצת ערכים. האופרטורים התקינים הם In,‏ NotIn,‏ Exists ו-DoesNotExist.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchExpressions.values
string
אופציונלי
‫values הוא מערך של ערכי מחרוזות. אם האופרטור הוא In או NotIn, מערך הערכים לא יכול להיות ריק. אם האופרטור הוא Exists או DoesNotExist, מערך הערכים חייב להיות ריק. המערך הזה מוחלף במהלך תיקון מיזוג אסטרטגי.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaceSelector.matchLabels
object
אופציונלי
‫matchLabels היא מפה של צמדי {key,value}. צמד יחיד {key,value} במפה matchLabels שווה לאלמנט של matchExpressions, ששדה המפתח שלו הוא 'key', האופרטור הוא 'In', ומערך הערכים מכיל רק 'value'. הדרישות מחוברות באמצעות AND.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.namespaces
string
אופציונלי
‫namespaces מציין רשימה סטטית של שמות מרחבי שמות שהמונח חל עליהם. המונח חל על איחוד מרחבי השמות שמופיעים בשדה הזה ועל אלה שנבחרו על ידי namespaceSelector. רשימת מרחבי שמות ריקה או null ו-namespaceSelector ריק או null פירושם 'מרחב השמות של הפוד הזה'.
podSpec.schedulingConfig.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution.topologyKey
string
חובה
ה-Pod הזה צריך להיות ממוקם באותו מיקום (affinity) או לא באותו מיקום (anti-affinity) עם ה-Pods שתואמים ל-labelSelector במרחבי השמות שצוינו. הגדרה של מיקום משותף היא הפעלה בצומת שערך התווית שלו עם מפתח topologyKey תואם לערך של צומת כלשהו שבו מופעלים אחד מהפודים שנבחרו. אסור להשתמש ב-topologyKey ריק.
podSpec.schedulingConfig.tolerations
object
אופציונלי
ההגדרות האלה מאפשרות לנהל את האפשרות לתזמן מופע בצומת Kubernetes שמוחל עליו taint ספציפי.
podSpec.schedulingConfig.tolerations.effect
string
אופציונלי
ההשפעה מציינת את השפעת ההכתמה שתואמת. אם השדה ריק, המשמעות היא התאמה לכל ההשפעות של כתמי הצבע. אם מציינים ערך, הערכים האפשריים הם NoSchedule, ‏ PreferNoSchedule ו-NoExecute.
podSpec.schedulingConfig.tolerations.key
string
אופציונלי
‫Key הוא מפתח ההכתמה שהסבילות חלה עליו. אם השדה ריק, כל מפתחות ה-taint מתאימים. אם המפתח ריק, המפעיל חייב להיות Exists. השילוב הזה אומר שצריך להתאים את כל הערכים ואת כל המפתחות.
podSpec.schedulingConfig.tolerations.operator
string
אופציונלי
האופרטור מייצג את הקשר בין מפתח לערך. האופרטורים התקפים הם Exists ו-Equal. ברירת המחדל היא Equal. הערך Exists שווה לתו כללי לחיפוש של ערך, כך ש-Pod יכול לסבול את כל הכתמים מקטגוריה מסוימת.
podSpec.schedulingConfig.tolerations.tolerationSeconds
integer
אופציונלי
‫TolerationSeconds מייצג את משך הזמן שבו הטולרנטיות (שחייבת להיות מסוג NoExecute, אחרת המערכת מתעלמת מהשדה הזה) סובלת את הדחייה (taint). כברירת מחדל, השדה הזה לא מוגדר, מה שאומר שההגדרה תהיה תקפה לנצח (לא תתבצע העברה). המערכת מתייחסת לערכים אפס ושליליים כאל 0 (הסרת נתונים מיידית).
podSpec.schedulingConfig.tolerations.value
string
אופציונלי
הערך הוא ערך הדחייה (taint) שהטולרנטיות תואמת לו. אם האופרטור הוא Exists, הערך חייב להיות ריק. אחרת, הוא חייב להיות מחרוזת רגילה.
replicaCount
integer
אופציונלי
ההגדרה ReplicaCount מגדירה את מספר העותקים של PgBouncer שייפרסו.
serverTLS
object
אופציונלי
הפרמטר ServerTLSSpec מגדיר את הסוד של האישור לתקשורת מוצפנת שמשמש את PgBouncer כדי להתחבר לאשכול מסדי נתונים לצורך שאילתת אימות.
serverTLS.certSecret
object
אופציונלי
‫CertSecret מפנה לסוד של האישור באותו מרחב שמות. הסוד צריך להכיל את הרשומות ca.crt (אישור CA),‏ tls.key (מפתח פרטי) ו-tls.crt (אישור עלה). הערכים בתוך הסוד הזה משמשים לאכלוס של server_tls_ca_file,‏ server_tls_cert_file ו-server_tls_key_file ב-pgbouncer.ini. אישור ה-CA צריך להיות זהה ל-CA שחתם על אישור העלה של אשכול מסד הנתונים. אישור העלה חייב להכיל את השם הנפוץ alloydbpgbouncer.
serverTLS.certSecret.name
string
אופציונלי
'שם הגורם המפנה. מידע נוסף: עבודה עם אובייקטים#שמות.
serviceOptions
object
חובה
ההגדרה ServiceOptions מגדירה את אפשרויות הקישוריות לגישה ל-pods של PgBouncer.
serviceOptions.annotations
object
אופציונלי
ההערה שסופקה על ידי הלקוח תתווסף לאובייקט השירות מסוג loadbalancer.
serviceOptions.gcp
object
אופציונלי
‫GCP מכיל מאפיינים ספציפיים ל-Google Cloud עבור Kubernetes LoadBalancer.
serviceOptions.gcp.loadBalancerIP
integer or string
אופציונלי
‫LoadBalancerIP היא כתובת IP סטטית, ראו שמירת כתובת IP חיצונית סטטית.
serviceOptions.gcp.loadBalancerType
string
אופציונלי
מאזן העומסים יכול להיות פנימי או חיצוני. מידע נוסף זמין במאמר בנושא מאזן עומסים פנימיים.
serviceOptions.type
string
חובה
סוג שירות Kubernetes לגישה לקבוצת ה-Pod של PgBouncer. הערך יכול להיות LoadBalancer או ClusterIP.

סכימת סטטוס

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

ipAddress: string
phase: string

שדה

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

 

תיאור
ipAddress
string
חובה
‫ipAddress היא נקודת הקצה של PgBouncer שאפשר להתחבר אליה כדי לגשת למסד הנתונים.
phase
string
חובה
השלב מתאר את המצב של פריסת PgBouncer. כאן מופיעים ערכים כמו WaitingForDeploymentReady,‏ Acquiring IP ו-Ready.