פריסת Spring Cloud Config

במאמר הזה מוסבר איך לפרוס את Spring Cloud Config באשכול Kf.

Spring Cloud Config מספק דרך להפריד בין קוד האפליקציה לבין הגדרות זמן הריצה שלה. שרת ההגדרות של Spring Cloud Config יכול לקרוא קובצי תצורה ממאגרי Git, ממערכת הקבצים המקומית, משרתי HashiCorp Vault או מ-Cloud Foundry CredHub. אחרי ששרת ההגדרות קורא את ההגדרה, הוא יכול לעצב אותה ולהציג אותה כ-YAML, כ-Java Properties או כ-JSON דרך HTTP.

לפני שמתחילים

תצטרכו אשכול עם Kf מותקן וגישה ל-Kf CLI.

בנוסף, תצטרכו את התוכנות הבאות:

  • git: נדרש Git כדי לשכפל מאגר.

הורדת שרת ההגדרות של Spring Cloud Config

כדי להוריד את המקור של שרת ההגדרות:

  1. פותחים טרמינל.
  2. משכפלים את המקור של שרת ההגדרות:

    git clone --depth 1 "https://github.com/google/kf"

הגדרה ופריסה של שרת הגדרות

כדי לעדכן את ההגדרות של המופע:

  1. שינוי הספרייה ל-spring-cloud-config-server:

    cd kf/spring-cloud-config-server
  2. פותחים את manifest.yaml.

  3. משנים את משתנה הסביבה GIT_URI למזהה המשאבים האחיד (URI) של שרת ההגדרות של Git.

  4. אפשר לשנות את שם האפליקציה במניפסט.

  5. אופציונלי: אפשר להגדיר מאפיינים נוספים או מקורות מאפיינים חלופיים על ידי עריכת src/main/resources/application.properties.

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

    kf push --no-route spring-cloud-config

קישור אפליקציות לשרת ההגדרות

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

אופן ההגדרה שלהן תלוי בספרייה שבה משתמשים:

אפליקציות PCF

אפשר לקשר אפליקציות קיימות של PCF שמשתמשות בספריית הלקוח של Pivotal's Spring Cloud Services באמצעות השיטה הבאה:

  1. יוצרים שירות שסופק על ידי משתמש בשם config-server. צריך לבצע את השלב הזה רק פעם אחת לכל שרת הגדרות:

    kf cups config-server -p '{"uri":"http://spring-cloud-config"}' -t configuration
  2. לכל אפליקציה שצריכה לקבל פרטי כניסה, מריצים את הפקודה:

    kf bind-service application-name config-server
    kf restart application-name

    הפעולה הזו תיצור רשומה במשתנה הסביבה VCAP_SERVICES עבור שרת ההגדרות.

אפליקציות אחרות

אפליקציות שיכולות להתחבר ישירות לשרת הגדרות של Spring Cloud Config צריכות להיות מוגדרות כך שיקבלו גישה אליו באמצעות ה-URI הפנימי של האשכול:

http://spring-cloud-config
  • באפליקציות Spring שמשתמשות בספריית הלקוח Spring Cloud Config, אפשר להגדיר את המאפיין spring.cloud.config.uri במיקום המתאים באפליקציה. בדרך כלל זה קובץ application.properties או application.yaml.
  • במקרה של מסגרות אחרות, אפשר לעיין במידע העזר של הספרייה.

מחיקת שרת ההגדרות

כדי להסיר שרת הגדרות:

  1. כדי להסיר את כל הקישורים לשרת התצורה, מריצים את הפקודות הבאות לכל אפליקציה מקושרת:

    kf unbind-service application-name config-server
    kf restart application-name
  2. מסירים את רשומת השירות של שרת ההגדרות:

    kf delete-service config-server
  3. מחיקת אפליקציית שרת ההגדרות:

    kf delete spring-cloud-config

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

  • אפשר לקרוא מידע נוסף על סוגי מקורות ההגדרות שנתמכים ב-Spring Cloud Config.
  • כדי להבין איך אפשר להשתמש במשתנה הסביבה VCAP_SERVICES לאיתור שירותים, כדאי לקרוא על המבנה שלו.