במאמר הזה נסביר איך לפרוס את אפליקציית ההפניה Cloud Foundry Spring Music באמצעות Kf, ונדגים כמה דברים:
פיתוח אפליקציות Java ממקור: המקור של Spring Music יפותח באשכול ולא באופן מקומי.
שילוב של מתווך שירותים: תיצרו מסד נתונים של PostgreSQL ותקשרו אותו לאפליקציית Spring Music.
Spring Cloud Connectors: האפליקציה Spring Music משתמשת ב-Spring Cloud Connectors כדי לזהות דברים כמו שירותי CF מקושרים. הם פועלים בצורה חלקה עם Kf.
הגדרת גרסת Java: תציינו את גרסת Java שבה אתם רוצים שה-buildpack ישתמש.
דרישות מוקדמות
אפשרות 1: Minibroker
האדמין של האשכול צריך לפעול לפי ההוראות האלה כדי להתקין את Minibroker מתווך שירותים באשכול. ה-Minibroker יאפשר לכם להקצות מסד נתונים של PostgreSQL ולהגדיר את האפליקציה כך שתשתמש בו.
כדי לוודא ש-Minibroker מותקן וזמין באשכול, מריצים את הפקודה kf
marketplace וצריך להופיע פלט דומה לזה:
$ kf marketplace
5 services can be used in Space "demo", use the --service flag to list the plans for a service
Broker Name Space Status Description
minibroker mariadb Active Helm Chart for mariadb
minibroker mongodb Active Helm Chart for mongodb
minibroker mysql Active Helm Chart for mysql
minibroker postgresql Active Helm Chart for postgresql
minibroker redis Active Helm Chart for redis
אפשרות 2: ברוקר שירותים אחר
אתם יכולים להשתמש במתווך שירותים אחר שמותקן, כל עוד הוא תומך ביצירת שירותי PostgreSQL. לדוגמה, gcp-service-broker.
כלים לפריסה
מקור השכפול
משכפלים את מאגר Spring Music.
git clone https://github.com/cloudfoundry-samples/spring-music.git spring-music cd spring-music
עורכים את
manifest.ymlומחליפים את התוכן שלו בתוכן הבא:--- applications: - name: spring-music memory: 1G random-route: true stack: org.cloudfoundry.stacks.cflinuxfs3 env: BP_AUTO_RECONFIGURATION_ENABLED: false
Push App
פריסה (בהנחה שכבר
kf targetתם מרחב; פרטים נוספים זמינים במסמכים האלה):kf push spring-musicמשתמשים בתכונת ה-proxy כדי לגשת לאפליקציה שנפרסה, ואז טוענים את
http://localhost:8080בדפדפן:kf proxy spring-music
האפליקציה שפרסת כוללת רכיב בממשק המשתמש שבו מוצג פרופיל Spring (אם יש כזה) שנמצא בשימוש. לא נעשה כאן שימוש בפרופיל, מה שמצביע על כך שנעשה שימוש במסד נתונים בזיכרון.
יצירה וקישור של מסד נתונים
יצירת שירות PostgreSQL באמצעות הברוקר שהותקן בזירת המסחר:
kf create-service postgresql 11-7-0 spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'מקשרים את מופע השירות לאפליקציית Spring Music:
kf bind-service spring-music spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'מפעילים מחדש את האפליקציה כדי שהקישור לשירות יהיה זמין דרך משתנה הסביבה
VCAP_SERVICES:kf restart spring-music(אופציונלי) צופים בפרטי הקישור:
kf bindingskf proxyלאפליקציה שוב ולצפות בה בדפדפן האינטרנט. פרופיל Spring צריך להופיע, ולציין שנעשה שימוש בשירות PostgreSQL שיצרתם וקישרתם:
כיבוי סופי
מבטלים את הקישור של שירות PostgreSQL ומוחקים אותו:
kf unbind-service spring-music spring-music-db kf delete-service spring-music-dbמחיקת האפליקציה:
kf delete spring-music