פרוס משאבי קיוטנס בצורה מבוקרת ומסודרת

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

Svelto יכולה לעזור לך לפתור בעיה זו על ידי הרשאה לך לציין את הסדר שבו משאבי Kubernetes מופעלים.

סדר ClusterProfile

A ClusterProfile is a Kubernetes custom resource definition (CRD) that defines the resources that you want to deploy on a set of Kubernetes clusters.

ClusterProfile מאפשר ללקוחות להגדיר סדר:

  • באמצעות השדה helmCharts: השדה helmCharts מאפשר לך לציין רשימה של תרמילי Helm שצריך להפעיל. Svelto יפעיל את תרמילי ה-Helm בסדר שהם מופיעים בשדה זה.
  • באמצעות השדה policyRefs: השדה policyRefs מאפשר לך להתייחס לרשימה של משאבי ConfigMap ו-Secret שמספקים את התוכן הדרוש להפעלה. Svelto יפעיל את המשאבים בסדר שהם מופיעים בשדה זה.

הנה כמה דוגמאות:

  • ה-ClusterProfile הבא יפעיל תחילה את תרמיל ה-Prometheus ואז את תרמיל ה-Grafana:
YAML

 

apiVersion: config.projectsveltos.io/v1alpha1
kind: ClusterProfile
metadata:
  name: prometheus-grafana
spec:
  clusterSelector: env=fv
  syncMode: Continuous
  helmCharts:
  - repositoryURL:    https://prometheus-community.github.io/helm-charts
    repositoryName:   prometheus-community
    chartName:        prometheus-community/prometheus
    chartVersion:     23.4.0
    releaseName:      prometheus
    releaseNamespace: prometheus
    helmChartAction:  Install
  - repositoryURL:    https://grafana.github.io/helm-charts
    repositoryName:   grafana
    chartName:        grafana/grafana
    chartVersion:     6.58.9
    releaseName:      grafana
    releaseNamespace: grafana
    helmChartAction:  Install

סדר פרוספטת משאבים עם אירועים

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

Sveltos יכול לעזור לך לפתור בעיה זו על ידי שימוש באירועים לשליטה בפרוץ היישום שלך.

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

לאחר מכן באפשרותך להשתמש באירוע זה לעורר את הפרוץ של המשימה שיוצרת את השולחן במאגר המידע.

על ידי שימוש באירועים, באפשרותך להבטיח שהיישום שלך יופרש באופן מבוקר ומסודר.

בדוגמה לעיל, Sveltos מושלם ל:

  1. לפרוץ את פרוץ PostgreSQL והשירות
  2. לחכות עד שפרוץ PostgreSQL מוכן
  3. לפרוץ משימה שיוצרת שולחן ב-DB
  4. לחכות עד שהמשימה תשלים
  5. לפרוץ את todo-app, שיכול לגשת לפרוץ PostgreSQL
  6. לחכות עד שtodo-app בריא
  7. לפרוץ משימה שמוסיפה רשומה למאגר המידע באמצעות todo-app

כל ה-YAMLs לדוגמה זו ניתן למצוא בתיעוד של projectsveltos.

תמיכה בפרויקט זה

I hope you enjoyed this article! If you did, please check out the GitHub repo for the project. The repo contains the code, documentation, and examples, so it’s a great resource for getting started. 

בנוסף באפשרותך לכוון את הפרויקט אם אתה מוצא אותו מועיל.

תודה שקראת!

Source:
https://dzone.com/articles/deploy-kubernetes-resources-in-a-controlled-and-or