שדות RootSync ו-RepoSync

בדף הזה מופיע מידע על השדות באובייקטים RootSync, RepoSync ו-ResourceGroup. מידע נוסף על אופן הפעולה של האובייקטים האלה זמין במאמר בנושא ארכיטקטורת סנכרון תצורות.

שדות של RootSync ו-RepoSync

לאובייקטים של משאבים מסוג RootSync ו-RepoSync יש את אותם שדות, למעט השדות הבאים שקיימים רק ב-RootSync:

  • spec.helm.namespace
  • spec.helm.deployNamespace
  • spec.override.roleRefs

הגדרות של פורמט המקור

מפתח תיאור
spec.sourceFormat מציין את הפורמט של מקור המידע האמין. זה שינוי אופציונלי.
האימות של השדה הזה הוא תלוי אותיות רישיות.
  • עבור אובייקטים מסוג RootSync, הערך צריך להיות אחד מהערכים הבאים: hierarchy או unstructured. ערך ברירת המחדל הוא hierarchy אם לא מציינים ערך, אבל מומלץ להשתמש בערך unstructured.
  • באובייקטים מסוג RepoSync, ברירת המחדל היא unstructured ואי אפשר לשנות אותה.
למידע נוסף, אפשר לעיין במדריכים בנושא פורמטים לא מובנים והיררכיים.

הגדרה של סוג המקור

מפתח תיאור
spec.sourceType המאפיין sourceType מציין את סוג המקור המהימן. צריך להשתמש באחד מהערכים הבאים: git, oci או helm. זה שינוי אופציונלי.
אם לא מציינים ערך, ברירת המחדל היא git. האימות של השדה הזה הוא תלוי אותיות רישיות.

הגדרות למאגר Git

מפתח תיאור
spec.git.auth סוג הסוד שהוגדר לגישה למאגר Git. חייב להיות אחד מהערכים הבאים: ssh, cookiefile, gcenode, gcpserviceaccount, githubapp, token או none. האימות של השדה הזה הוא תלוי אותיות רישיות. חובה.
spec.git.gcpServiceAccountEmail חשבון השירות Google Cloud שמשמש להוספת הערות ל-RootSync או לחשבון השירות של Kubernetes של בקר RepoSync. השדה הזה משמש רק אם הערך של spec.git.auth הוא gcpserviceaccount.
spec.git.branch ההסתעפות ב-Git של המאגר שממנו רוצים לסנכרן. השדה הזה הוא אופציונלי, וערך ברירת המחדל שלו הוא master. מומלץ להשתמש בשדה spec.git.revision כדי לציין שם של ענף. אם משתמשים בשני השדות, השדה spec.git.revision מקבל קדימות על פני השדה spec.git.branch.
spec.git.dir הנתיב המוחלט במאגר Git לספריית הבסיס שמכילה את ההגדרה שרוצים לסנכרן. ברירת מחדל: ספריית השורש (/) של המאגר.
spec.git.period משך הזמן בין סנכרונים עוקבים. ברירת מחדל: 15s.
spec.git.repo כתובת ה-URL של מאגר Git שממנו יתבצע הסנכרון. חובה.
spec.git.revision הגרסה ב-Git (הסתעפות, תג או קומיט) שממנה יתבצע הסנכרון. השדה הזה הוא אופציונלי וערך ברירת המחדל הוא HEAD. כשמשתמשים בגיבוב, הוא חייב להיות גיבוב מלא ולא קיצור.
spec.git.secretRef.name השם של הסוד שמשמש לחיבור למקור האמת של Git.
spec.git.noSSLVerify1 ההגדרה noSSLVerify קובעת אם להפעיל או להשבית את האימות של אישור ה-SSL. ברירת מחדל: false.
אם noSSLVerify מוגדר כ-true, ‏ Git מדלג על אימות אישור ה-SSL.
spec.git.caCertSecretRef.name1 השם של הסוד שמכיל את האישור של רשות האישורים (CA). אם השדה הזה מסופק, שרת ה-Git חייב להשתמש באישור שהונפק על ידי רשות האישורים הזו. אישור CA צריך להיות מאוחסן בסוד במפתח בשם cert.

הגדרת שרת Proxy למאגר Git

אם מדיניות האבטחה של הארגון מחייבת ניתוב תעבורת נתונים דרך שרת proxy מסוג HTTP(S), אפשר להשתמש ב-URI של השרת כדי להגדיר את סנכרון תצורות לתקשורת עם מארח Git.

מפתח תיאור
spec.git.proxy כתובת ה-URL של ה-proxy עם הסכימה להגדרת גישה למאגר Git באמצעות proxy. לדוגמה, https://proxy.internal.business.co:443.
הפרוקסי של Git מקבל https, http וכתובות URL ללא קישוטים, אבל http לא מומלץ בגלל בעיות אבטחה.
אם משתמשים ב-http או בכתובת URL פשוטה, צריך לוודא שהתקשורת בין שרת ה-proxy לבין מארח Git מאובטחת.
השדה הזה משפיע רק כשהערך של spec.git.auth הוא cookiefile,‏ none או token.

הגדרה לתמונת OCI

סנכרון תצורות דורש ששכבת ה-OCI תהיה דחוסה בפורמט tar או tar+gzip.

פורמטים אחרים (לדוגמה, tar+bz2) לא יזוהו על ידי סנכרון תצורות. מעבר ממאגר REPO תקין לתמונת OCI בפורמט לא נתמך יגרום לגיזום של משאבים מנוהלים ללא שגיאה.

מפתח תיאור
spec.oci.auth סוג האימות שהוגדר לגישה לתמונת OCI. הערך חייב להיות gcenode, k8sserviceaccount, gcpserviceaccount, token או none. האימות של השדה הזה הוא תלוי אותיות רישיות. חובה.
spec.oci.gcpServiceAccountEmail חשבון השירות Google Cloud שמשמש להוספת הערות ל-RootSync או לחשבון השירות של Kubernetes של בקר RepoSync. השדה הזה משמש רק אם הערך של spec.oci.auth הוא gcpserviceaccount.
spec.oci.secretRef.name השם של הסוד שמשמש לגישה למאגר OCI. השדה הזה משמש רק אם הערך של spec.oci.auth הוא token.
spec.oci.dir הנתיב המוחלט בתמונת OCI לספריית הבסיס שמכילה את ההגדרה שרוצים לסנכרן. ברירת מחדל: ספריית השורש (/) של התמונה.
spec.oci.period משך הזמן בין סנכרונים עוקבים. ברירת מחדל: 15s.
spec.oci.image כתובת ה-URL של תמונת ה-OCI שממנה מתבצע הסנכרון. חובה.
spec.oci.caCertSecretRef.name1

השם של הסוד שמכיל את האישור של רשות האישורים (CA). אם השדה הזה מסופק, שרת ה-OCI חייב להשתמש באישור שהונפק על ידי ה-CA הזה. אישור CA צריך להיות מאוחסן בסוד במפתח בשם cert.

הגדרות למאגר Helm

מפתח תיאור
spec.helm.auth סוג האימות שהוגדר לגישה למאגר Helm. חייב להיות token, gcenode, k8sserviceaccount, gcpserviceaccount או none. האימות של השדה הזה הוא תלוי אותיות רישיות. חובה.
spec.helm.gcpServiceAccountEmail חשבון השירות Google Cloud שמשמש להוספת הערות ל-RootSync או לחשבון השירות של Kubernetes של בקר RepoSync. השדה הזה משמש רק אם הערך של spec.helm.auth הוא gcpserviceaccount.
spec.helm.secretRef.name השם של הסוד שמשמש לגישה למאגר Helm. השדה הזה משמש רק אם הערך של spec.helm.auth הוא token.
spec.helm.repo כתובת ה-URL של מאגר Helm שממנו יתבצע הסנכרון. חובה.
spec.helm.chart השם של תרשים Helm. חובה.
spec.helm.version

מספר הגרסה של תרשים Helm. ברירת מחדל: הגרסה האחרונה.

אפשר לציין את השדה version כערך סטטי, כטווח של גרסאות שמתוכן סנכרון תצורות שולף את הגרסה האחרונה, או להשאיר אותו ריק כדי לציין שסנכרון תצורות צריך לשלוף את התרשים האחרון. ‫סנכרון תצורות קובע את הגרסה העדכנית ביותר על סמך ניהול גרסאות סמנטיות. אם מציינים טווח או משאירים את השדה ריק, סנכרון תצורות מושך מחדש את התרשים כל שעה כברירת מחדל. אפשר להגדיר את התקופה שבה מתבצעת משיכה מחדש באמצעות השדה spec.helm.period. אם הגרסה מצוינת כמחרוזת הטקסט 'latest', התרשים נטען מחדש בהתאם ל-spec.helm.period, בדיוק כמו בטווחי גרסאות או בגרסאות ריקות.

התחביר של טווח הגרסאות זהה לתחביר של טווח הגרסאות שנתמך על ידי Helm CLI.

אם מציינים את הגרסה כטווח או משאירים את הערך ריק, יכול להיות שיהיה שימוש גבוה במעבד בתרשימים גדולים עם הרבה גרסאות. אפשר להשתמש ב-spec.override כדי להגדיל את בקשת ה-CPU עבור קונטיינר helm-sync, כמו בדוגמה הבאה:

    spec:
      override:
        resources:
        - containerName: helm-sync
          cpuRequest: "200m"
    
spec.helm.period

משך הזמן ש-סנכרון תצורות ממתין לפני שהוא שולף מחדש את התרשים.

ערך ברירת המחדל הוא שעה אחת. השדה מקבל ערכים מסוג מחרוזת, לדוגמה ‎"30s" או ‎ "5m". מידע נוסף זמין במאמרי העזרה בנושא Go על קלט תקין.

אם גרסת התרשים היא טווח, אם נעשה שימוש בתג המילולי latest או אם היא נשארת ריקה כדי לציין ש-סנכרון תצורות צריך לשלוף את הגרסה העדכנית, התרשים נשלף מחדש בהתאם ל-spec.helm.period. אם גרסת התרשים מוגדרת כגרסה סטטית יחידה, התרשים לא נשלף מחדש.

spec.helm.releaseName השם של גרסת Helm.
spec.helm.namespace המדד הזה בלעדי למדד spec.helm.deployNamespace. ‫
namespace מגדיר את מרחב השמות של היעד לגרסה. השדה הזה משמש רק עם אובייקטים מסוג RootSync. הוא מגדיר מרחב שמות רק למשאבים שמכילים את namespace: {{ .Release.Namespace }} בתבניות שלהם. הערך שצוין ב-spec.helm.namespace משמש רק כערך של Release.Namespace שמוצהר בתבניות Helm. למשאבים שאין להם namespace: {{ .Release.Namespace }} בתבניות שלהם, ייעשה שימוש במרחב השמות default. ברירת מחדל: default
spec.helm.deployNamespace המדד הזה בלעדי למדד spec.helm.namespace. ‫
deployNamespace מציין את מרחב השמות שבו יופעל התרשים. הגדרת השדה הזה מפעילה את הפונקציה kpt set-namespace, שגורמת ל-סנכרון תצורות להחליף את השדות namespace של משאבים בתרשים, כולל metadata.namespace של משאבים בהיקף של מרחב שמות, metadata.name של אובייקטים של מרחב שמות והפניות למרחב שמות בסוגים מסוימים של משאבים מיוחדים.
אם לא מוגדר deployNamespace, משאבים שלא מוגדר להם metadata.namespace נפרסים במרחב השמות שמוגדר כברירת מחדל.
spec.helm.values

ערכים לשימוש במקום ערכי ברירת המחדל שמצורפים לתרשים. מעצבים את הערכים באותו אופן באמצעות הקובץ default values.yaml. לדוגמה:

values:
  foo:
    bar: val1
  quz:
  - val2
  - val3

אם מציינים גם את valuesFileRefs, השדות מ-values מחליפים את השדות מ-valuesFileRefs.

מידע נוסף זמין בדוגמה של מניפסט Helm.

spec.helm.includeCRDs מציין אם תבנית Helm צריכה ליצור CustomResourceDefinitions. ברירת מחדל: false.
spec.helm.valuesFileRefs

רשימה של הפניות לאובייקטים באשכול שמייצגים ערכים לשימוש במקום ערכי ברירת המחדל שמצורפים לתרשים. יש תמיכה רק ב-ConfigMaps. ה-ConfigMap צריך להיות בלתי ניתן לשינוי ובאותו מרחב שמות כמו RootSync או RepoSync.

אי אפשר לשנות את ConfigMaps. כדי לשנות את valuesFile אחרי הסנכרון, צריך ליצור ConfigMap עם שם אחר ולעדכן את RootSync או RepoSync spec.valuesFileRefs.name.

כשמציינים כמה קבצים של ערכים, מפתחות כפולים בקבצים מאוחרים יותר מחליפים את הערך מקבצים קודמים. זה שווה להעברה של כמה קבצים עם ערכים אל Helm CLI. אם מציינים גם את spec.helm.values, השדות מ-values מחליפים את השדות מ-valuesFileRefs.

כל פריט ברשימה חייב להכיל את הפרטים הבאים:

  • name (חובה): השם של אובייקט ConfigMap
  • dataKey (אופציונלי): מפתח הנתונים באובייקט שממנו צריך לקרוא את הערכים. ברירת מחדל: values.yaml

דוגמה לאופן שינוי הערכים מופיעה במאמר בנושא סנכרון תרשימי Helm.

spec.helm.caCertSecretRef.name1

השם של הסוד שמכיל את האישור של רשות האישורים (CA). אם השדה הזה מסופק, שרת Helm חייב להשתמש באישור שהונפק על ידי רשות האישורים הזו. אישור CA צריך להיות מאוחסן בסוד במפתח בשם cert.

הגדרה של ביטול בקשות המשאבים והמגבלות של reconciler בסיס או במרחב שמות

אפשר לבטל את ההגדרות של מאגרי התגים git-sync, oci-sync, helm-sync,‏ hydration-controller ו-reconciler. אפשר לבצע שינוי חלקי של ברירת המחדל: אם לא מציינים ערך לשינוי של בקשת משאב או מגבלה, המערכת משתמשת בערך ברירת המחדל של המשאב עבור הבקשה או המגבלה.

באשכולות Autopilot,‏ Config Sync מתעלם משינויים במגבלות משאבים. החלפת בקשות למשאבים מתבצעת רק אם יש בקשה אחת או יותר למשאבים שהערך שלהן גבוה מהערך של הפלט המותאם שמוצהר בהערה, או אם יש בקשה אחת או יותר למשאבים שהערך שלהן נמוך מהערך של הקלט שמוצהר בהערה. מידע נוסף זמין במאמר בנושא דרישות של אשכולות ל-סנכרון תצורות.

מפתח תיאור
spec.override.resources1 רשימת הביטולים של בקשות ושל מגבלות של משאבי מאגר תגים. זה שינוי אופציונלי.
כל פריט ברשימה מכיל שלושה שדות:
  • containerName: השדה הזה יכול להכיל את הערכים הבאים: git-sync,‏ oci-sync,‏ helm-sync, hydration-controller או reconciler.
  • cpuRequest (אופציונלי)
  • cpuLimit (אופציונלי)
  • memoryRequest (אופציונלי)
  • memoryLimit (אופציונלי)

אם לא מציינים ערך לשינוי ברירת המחדל של בקשה או מגבלה של משאב, המערכת משתמשת בערך ברירת המחדל של המשאב עבור הבקשה או המגבלה.

הגדרה של ביטול רמת היומן של מאגר ב-root או ב-namespace reconciler

אם לא מגדירים ערך לשינוי רמת היומן, רמת היומן מוגדרת כערך ברירת המחדל. רמת ברירת המחדל של היומן לכל המאגרים בכלי RootSync או RepoSync היא 0, חוץ מהמאגר git-sync שבו ברירת המחדל היא 5. ערך קביל של שינוי רמת היומן הוא בין 0 ל-10 כולל.

מפתח תיאור
spec.override.logLevels רשימת ערכי ברירת המחדל של רמת היומן של מאגר התגים. זה שינוי אופציונלי.
כל פריט ברשימה מכיל שני שדות:
  • containerName: השדה הזה יכול להכיל את הערכים הבאים: git-sync,‏ oci-sync,‏ helm-sync, hydration-controller או reconciler.
  • logLevel

אם לא מציינים ערך חלופי לרמת היומן של מאגר התגים, נעשה שימוש בערך ברירת המחדל של רמת היומן.

הגדרה של מספר הקומיטים ב-Git שיש לאחזר

מפתח תיאור
spec.override.gitSyncDepth1 המאפיין gitSyncDepth מאפשר לכם לשנות את מספר הקומיטים של Git שיש לאחזר.
הערך חייב להיות לפחות 0.
אם הערך בשדה הזה הוא 0, סנכרון תצורות מבצע שיבוט מלא. אם הערך בשדה הזה גדול מ-0, הוא מבצע שיבוט חלקי.
אם לא מציינים את השדה הזה, סנכרון תצורות מגדיר אותו באופן אוטומטי.

הגדרה של סטטוס ברמת המשאב

מפתח תיאור
spec.override.statusMode1 statusMode מאפשר להפעיל או להשבית את התיעוד של הסטטוס ברמת המשאב.
ברירת המחדל היא enabled.
כדי להשבית את התיעוד של הסטטוס ברמת המשאב, צריך להגדיר את השדה הזה ל-disabled.

הגדרה לשינוי ברירת המחדל של הזמן הקצוב לתפירת נתונים

מפתח תיאור
spec.override.reconcileTimeout1 reconcileTimeout מאפשרת לכם לשנות את ערך הסף של משך ההמתנה למשאבים בקבוצת החלה כדי לבצע התאמה לפני שמוותרים. כל המשאבים בהתחייבות יכולים להיות בכמה קבוצות החלה על סמך התלויות.
ערך ברירת המחדל של הזמן הקצוב לתפוגה הוא 5m.
משתמשים במחרוזת כדי לציין את הערך של השדה הזה, כמו 30s, ‏ 5m.

הגדרה לביטול הזמן הקצוב לתפוגה של בקשות לשרת ה-API

מפתח תיאור
spec.override.apiServerTimeout1 apiServerTimeout מאפשרת לכם לשנות את הגדרת הזמן הקצוב לתפוגה של בקשות לשרת ה-API. הזמן הקצוב לתפוגה שמוגדר כברירת מחדל הוא 15 שניות, והוא מצוין כ-15s
. משתמשים במחרוזת כדי לציין את הערך של השדה הזה, כמו 30s או 5m.

הגדרה של גישה למעטפת בתהליך הרינדור

מפתח תיאור
spec.override.enableShellInRendering1 enableShellInRendering קובעת אם להפעיל או להשבית את הגישה למעטפת בתהליך העיבוד. בסיסים מרוחקים של Kustomize דורשים גישה למעטפת. הגדרה של השדה הזה לערך true מאפשרת גישה למעטפת בתהליך העיבוד, ותומכת בשליפה של בסיסים מרוחקים ממאגרים ציבוריים.
ברירת המחדל היא false.

הגדרה של שיטת מרחב שמות (RootSync בלבד)

מפתח תיאור
spec.override.namespaceStrategy1 ההגדרה namespaceStrategy קובעת איך כלי ההתאמה מטפל בהגדרות חסרות של מרחב שמות של אובייקטים בהיקף מרחב השמות שהוגדרו במקור. ההגדרה הזו רלוונטית רק כשמשתמשים ב-unstructured sourceFormat.
  • implicit: אם מרחבי השמות לא קיימים, המערכת ליצירת התאמות תיצור אותם באופן מרומז, גם אם הם לא הוגדרו במקור. מרחבי שמות מרומזים נוצרים עם אנוטציית מניעת מחיקה ומנוהלים על ידי סנכרון תצורות.
  • explicit: הכלי להשוואה יצור רק מרחבי שמות שמוצהרים במפורש במקור.

ברירת המחדל היא implicit.

הגדרות לקישורי RBAC (רק ב-RootSync)

מפתח תיאור
spec.override.roleRefs1 roleRefs היא רשימה של תפקידים או תפקידים ברמת האשכול ליצירת קישורים. כל פריט ברשימה מכיל את השדות הבאים:
  • kind (חובה): מתייחס לסוג של משאב RBAC. הערכים הקבילים הם Role ו-ClusterRole.
  • name (חובה): השם של משאב Role או ClusterRole.
  • namespace (אופציונלי): מציין את מרחב השמות שבו צריך ליצור RoleBinding. עבור אובייקטים של ClusterRole, המערכת תקבע אם נוצר RoleBinding או ClusterRoleBinding. באובייקטים של Role, צריך להגדיר את מרחב השמות הזהה לזה של Role.

אם לא מוגדר, ייווצר ClusterRoleBinding ל-cluster-admin.

הסטטוס של האובייקטים

מפתח תיאור
status.observedGeneration הדור (metadata.generation) של המפרט של משאב RootSync או RepoSync שנצפה לאחרונה על ידי סנכרון תצורות ובוצעה בו פעולה. אפשר להשוות את הערך הזה ל-metadata.generation, שהוא מספר שלם שמתעדכן בשינוי המפרט על ידי שרת ה-API.
status.reconciler שם תהליך ההתאמה שמתאים למשאב הסנכרון.
status.source.gitStatus.repo כתובת ה-URL של מאגר Git שממנו מתבצעת האחזור.
status.source.gitStatus.revision הגרסה של Git (תג, קומיט או גיבוב) שאותה מאחזרים.
status.source.gitStatus.branch ענף Git של המאגר שאותו מאחזרים.
status.source.gitStatus.dir הנתיב המוחלט במאגר Git לספריית הבסיס שמכילה את ההגדרה שמסנכרנים אליה.
status.source.ociStatus.image כתובת ה-URL של תמונת ה-OCI שאותה מאחזרים.
status.source.ociStatus.dir הנתיב המוחלט בתמונת ה-OCI לספריית הבסיס שמכילה את ההגדרה שאתם מסנכרנים אליה.
status.source.helmStatus.repo כתובת ה-URL של מאגר Helm שממנו מתבצעת האחזור.
status.source.helmStatus.version גרסת תרשים ה-Helm שאותה מאחזרים.
status.source.helmStatus.chart השם של תרשים ה-Helm שאותו מאחזרים.
status.source.commit הגיבוב (hash) של הקומיט או התקציר האחרון שאוחזר מכתובת ה-URL של המקור.
status.source.errors השגיאות שנתקלו בהן במהלך הקריאה והניתוח של ההגדרות ממקור האמת. יכול להיות שהדוח לא יכלול את כל השגיאות שנתקלתם בהן, כי סנכרון תצורות מקצר את השגיאות אם יש יותר מדי שגיאות.
status.source.errorSummary.totalCount מספר שלם שמייצג את המספר הכולל של השגיאות שנתקלו בהן במהלך הקריאה והניתוח של ההגדרות ממקור האמת.
status.source.errorSummary.truncated ערך בוליאני שמציין אם השדה status.source.errors כולל את כל השגיאות שנתקלו בהן במהלך הקריאה והניתוח של ההגדרות ממקור האמת.
status.source.errorSummary.errorCountAfterTruncation מספר שלם שמציין את מספר השגיאות בשדה status.source.errors.
status.rendering.gitStatus.repo כתובת ה-URL של מאגר Git שמוצגת.
status.rendering.gitStatus.revision הגרסה של Git (תג, קומיט או גיבוב) שמוצגת.
status.rendering.gitStatus.branch הענף של מאגר Git שמוצג.
status.rendering.gitStatus.dir הנתיב המוחלט במאגר Git לספריית הבסיס שמכילה את ההגדרה שאתם מעבדים.
status.rendering.ociStatus.image כתובת ה-URL של תמונת ה-OCI שמוצגת.
status.rendering.ociStatus.dir הנתיב המוחלט בתמונת ה-OCI לספריית הבסיס שמכילה את ההגדרה שאתם מעבדים.
status.rendering.helmStatus.repo כתובת ה-URL של מאגר Helm שמוצגת.
status.rendering.helmStatus.version הגרסה של תרשים ה-Helm שמוצגת.
status.rendering.helmStatus.chart השם של תרשים ה-Helm שמוצג.
status.rendering.commit הגיבוב של הקומיט או התקציר האחרונים שעברו עיבוד. הערך הזה מתעדכן גם אם סנכרון של קומיט או תקציר מתבצע רק באופן חלקי בגלל שגיאה.
status.rendering.errors רשימה של שגיאות שנתקלו בהן במהלך העיבוד של המשאבים מהשינוי שמסומן על ידי status.rendering.commit. יכול להיות שהרשימה לא תכלול את כל השגיאות שנתקלתם בהן, כי סנכרון תצורות מקצר את השגיאות אם יש יותר מדי שגיאות.
status.rendering.errorSummary.totalCount מספר שלם שמייצג את המספר הכולל של השגיאות שהתרחשו במהלך תהליך העיבוד של ההגדרות ממקור האמת.
status.rendering.errorSummary.truncated ערך בוליאני שמציין אם השדה status.rendering.errors כולל את כל השגיאות שנתקלו בהן במהלך תהליך העיבוד של ההגדרות מתוך מקור האמת.
status.rendering.errorSummary.errorCountAfterTruncation מספר שלם שמציין את מספר השגיאות בשדה status.rendering.errors.
status.sync.gitStatus.repo כתובת ה-URL של מאגר Git שמסונכרן.
status.sync.gitStatus.revision הגרסה ב-Git (תג, קומיט או hash) שמסונכרנת.
status.sync.gitStatus.branch ענף Git של המאגר שמסונכרן.
status.sync.gitStatus.dir הנתיב המוחלט במאגר Git לספריית הבסיס שמכילה את ההגדרה שמסנכרנים אליה.
status.sync.ociStatus.image כתובת ה-URL של תמונת ה-OCI שמסונכרנת.
status.sync.ociStatus.dir הנתיב המוחלט בתמונת ה-OCI לספריית הבסיס שמכילה את ההגדרה שאתם מסנכרנים אליה.
status.sync.helmStatus.repo כתובת ה-URL של מאגר Helm שמסונכרן.
status.sync.helmStatus.version גרסת תרשים ה-Helm שמסונכרנת.
status.sync.helmStatus.chart השם של תרשים ה-Helm שמסונכרן.
status.sync.commit הגיבוב של הקומיט או התקציר האחרון שסונכרן לאשכול. הערך הזה מתעדכן גם אם סינכרון של קומיט או תקציר מתבצע רק באופן חלקי בגלל שגיאה.
status.sync.errors רשימה של כל השגיאות שהתרחשו במהלך החלת המשאבים מהשינוי שמסומן על ידי status.sync.commit. יכול להיות שלא כל השגיאות שנתקלו בהן ייכללו בדוח, כי סנכרון תצורות מקצר את השגיאות אם יש יותר מדי שגיאות.
status.sync.errorSummary.totalCount מספר שלם שמייצג את המספר הכולל של השגיאות שנתקלנו בהן במהלך החלת ההגדרות ממקור האמת.
status.sync.errorSummary.truncated ערך בוליאני שמציין אם השדה status.sync.errors כולל את כל השגיאות שנתקלו בהן במהלך החלת ההגדרות ממקור המידע המהימן.
status.sync.errorSummary.errorCountAfterTruncation מספר שלם שמציין את מספר השגיאות בשדה status.sync.errors.
status.conditions רשימת תנאים למעקב אחרי המצב הנוכחי של אובייקט RootSync או RepoSync.
כשהשדה type של תנאי הוא Reconciling או Stalled:
  • המצב הזה מציין את הסטטוס של Reconciler Manager ביצירה ובניהול של הכלי להשוואה לאובייקט RootSync או RepoSync הזה.
  • בשדה errors של התנאי מתועדות השגיאות שמתגלות במהלך תהליך ההתאמה של אובייקט RootSync או RepoSync.
  • בשדה errorSummary של התנאי מוצג סיכום של השגיאות בשדה errors של התנאי.
  • השדה errorsSourceRefs של התנאי ריק.
כשהסוג של תנאי הוא Syncing:
  • התנאי הזה מציין את הסטטוס של הכלי להשוואת נתונים בסנכרון משאבים לאשכול.
  • אין שימוש בשדה errors של התנאי, וצריך להתעלם ממנו.
  • השדה errorsSourceRefs של התנאי עוקב אחרי המקורות של השגיאות. מקור השגיאות יכול להיות status.rendering.errors, status.source.errors או status.sync.errors.
  • בשדה errorSummary של התנאי מופיע סיכום של השגיאות שמוזכרות בשדה errorsSourceRefs.

1 אם יצרתם קובץ הגדרה של RootSync אחרי ההתקנה באמצעות מסוף Google Cloud או Google Cloud CLI, אתם יכולים להחליף את הערך בשדה הזה.

שדות ResourceGroup

שדות המפרט והסטטוס

מפתח תיאור
spec.resources רשימת המזהים (Group, ‏ Kind, ‏ Namespace, ‏ Name) של משאבים שמוחלים על האשכול ממאגר Git שצוין ב-RepoSync CR או ב-RootSync CR. זה שינוי אופציונלי.
כל פריט ברשימה מכיל ארבעה שדות: group,‏ kind,‏ namespace ו-name.

שדות סטטוס

מפתח תיאור
status.observedGeneration הדור (metadata.generation) של המפרט של משאב RootSync או RepoSync שנצפה לאחרונה על ידי בקר ResourceGroup ובוצעה בו פעולה. אפשר להשוות את הערך הזה ל-metadata.generation, שהוא מספר שלם שמתעדכן בשינוי המפרט על ידי שרת ה-API.
status.conditions התנאים האחרונים שנצפו עבור ResourceGroup הנוכחי. יש שני סוגים שונים של תנאים: Reconciling ו-Stalled. אם התנאי מסוג Reconciling הוא true, המשמעות היא שה-ResourceGroup הנוכחי נמצא בתהליך של התאמה. אם התנאי של סוג Stalled הוא true, המשמעות היא שהסנכרון תקוע. אם שניהם במצב false, המשמעות היא שקבוצת המשאבים הנוכחית עברה תיאום והסטטוס מעודכן.
status.resourceStatuses רשימת הסטטוסים של משאבים שנכללים ב-.spec.resources. כל פריט מכיל את המזהה (Group,‏ Kind,‏ Namespace או Name) ואת הסטטוס של משאב. הסטטוס הוא אחד מהערכים הבאים: InProgress,‏ Current,‏ Failed, Terminating,‏ NotFound או Unknown.

שדות לא מנוהלים של סנכרון שורש

השדות הבאים של RootSync בשם root-sync לא מנוהלים על ידי שירות ה-Fleet ‏ (GKE Fleet) ואפשר לערוך אותם באמצעות כל לקוח Kubernetes:

מפתח תיאור
spec.helm כל השדות להגדרת מאגר Helm.
spec.override כל השדות לביטול הגדרות ברירת המחדל.
spec.git.noSSLVerify ההגדרה קובעת אם להפעיל או להשבית את האימות של אישור ה-SSL עבור Git. ערך ברירת המחדל הוא false.
spec.git.caCertSecretRef.name השם של הסוד שמכיל את אישור רשות האישורים (CA) למאגר Git.
spec.oci.caCertSecretRef.name השם של הסוד שמכיל את אישור רשות האישורים (CA) למאגר OCI.

מידע נוסף על שדות מנוהלים ולא מנוהלים באובייקטים של RootSync זמין במאמר איך שירות Fleet מנהל אובייקטים של RootSync.

דוגמאות ל-CR

בקטעים הבאים מוצגות דוגמאות ל-CR‏ RootSync ול-CR‏ RepoSync.

RootSync CR

בדוגמה הבאה מוצג אובייקט RootSync.

# root-sync.yaml
apiVersion: configsync.gke.io/v1beta1
kind: RootSync
metadata:
  name: root-sync
  namespace: config-management-system
spec:
  sourceType: git
  sourceFormat: unstructured
  git:
    repo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    branch: main
    dir: config-sync-quickstart/multirepo/root
    auth: none
    period: 30s

RepoSync CR

בדוגמה הבאה מוצג אובייקט RepoSync.

# repo-sync.yaml
apiVersion: configsync.gke.io/v1beta1
kind: RepoSync
metadata:
  name: repo-sync
  namespace: gamestore
spec:
  sourceType: git
  sourceFormat: unstructured
  git:
    repo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    branch: main
    dir: config-sync-quickstart/multirepo/root
    auth: none
    period: 30s

המאמרים הבאים