אדמינים יוצרים תבניות סטנדרטיות של אפליקציות כדי לוודא שכל צוות פיתוח משתמש בארכיטקטורה המועדפת שלהם. כך תוכלו לשלוט במשאבים ובהגדרות שהמפתחים משתמשים בהם בפריסות של האפליקציות שלהם. אחרי שיוצרים תבנית רגילה, משתמשים אחרים במרחב יכולים לגשת אליה. אפשר גם להוסיף תבנית לקטלוג כדי לשתף אותה עם מרחבים אחרים.
מפתחים יכולים להשתמש בתבנית שלכם כדי ליצור ולפרוס אפליקציה, או שאתם יכולים להטמיע את התבנית שלכם כחלק מתבנית מורכבת גדולה יותר. כשמפתחים יוצרים אפליקציה, הם יכולים להגדיר כל רכיב מהתבנית, אבל הם לא יכולים להוסיף או להסיר רכיבים. התבנית יוצרת קוד Terraform, שמפתחים יכולים להוריד או לפרוס מ-App Design Center.
במאמר הזה מוסבר איך לעצב, להגדיר ולשתף תבנית של אפליקציה רגילה באמצעות App Design Center.
לפני שמתחילים
כדי לבצע את המשימות שמתוארות במסמך הזה, צריך לבקש מהאדמין להקצות לכם את התפקידים הנדרשים בתיקייה לניהול אפליקציות או בפרויקט הניהול, כמו שמופיע בטבלה הבאה:
| משימה | התפקידים הנדרשים |
|---|---|
| יצירה, עיצוב ועריכה של תבניות סטנדרטיות של אפליקציות | אדמין של Application Design Center (roles/designcenter.admin) או משתמש של Application Design Center (roles/designcenter.user) |
| פרסום או שיתוף של תבניות רגילות בקטלוג | אדמין של Application Design Center (roles/designcenter.admin) |
מידע נוסף על תפקידים זמין במאמר בקרת גישה באמצעות IAM.
יצירת תבנית רגילה של אפליקציה
יוצרים תבניות סטנדרטיות של אפליקציות כדי לשתף את עיצוב הארכיטקטורה עם צוותי הפיתוח. אפשר להוסיף את הרכיבים הבאים לעיצוב התבנית:
נכסים: משאבים ברמה גבוהה שעוזרים לכם לשלוט במשאבים אחרים, כמו חשבונות שירות.
שירותים: ממשקי רשת או ממשקי API שנצרכים ברשת, כמו Cloud Storage ו-Vertex AI.
עומסי עבודה: פריסות בינאריות שמבצעות פונקציות עסקיות, כמו Cloud Run ו-Compute Engine.
אפשר לבחור מבין הרכיבים הבאים:
- רכיבים שתוכננו על ידי Google, שמשלבים Google Cloud שיטות מומלצות והגדרות אבטחה שמוגדרות כברירת מחדל.
- רכיבים משלכם שאתם מייבאים, על סמך מודולים משלכם ב-Terraform.
במהלך עיצוב התבנית, App Design Center יוצר קוד Terraform שמשקף את העיצוב ואת פרטי ההגדרות.
ציון פרטי התבנית
פרטי התבנית עוזרים לכם לסווג את התבנית ולמפתחים להחליט אם להשתמש בה.
כדי להזין פרטים לתבנית:
קנבס העיצוב
בתפריט הניווט, לוחצים על תבניות.
לוחצים על יצירת תבנית.
השדה מזהה התבנית מאוכלס באופן אוטומטי. אפשרות אחרת היא להזין מזהה ייחודי לתבנית. חובה למלא את השדה הזה.
בשדה שם התבנית, מזינים מזהה שקל לקרוא כדי שיוצג במסוף Google Cloud .
אם לא מספקים שם, מזהה התבנית מועתק לשדה הזה.
בשדה תיאור, מזינים הסבר קצר על מטרת האפליקציה.
לוחצים על יצירת תבנית. יוצג אזור העריכה.
CLI של gcloud
יוצרים תבנית חדשה של אפליקציה.
gcloud design-center spaces application-templates create APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE \
--display-name=DISPLAY_NAME \
--description=DESCRIPTION
מחליפים את מה שכתוב בשדות הבאים:
-
APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שרוצים ליצור. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב. -
DISPLAY_NAME: שם שיוצג במסוף Google Cloud . -
DESCRIPTION: תיאור קצר.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates create.
עיצוב התבנית
מעצבים את התבנית על ידי הוספה וחיבור של רכיבים. בדוגמה הבאה יש שלושה רכיבים מחוברים בבד הציור של העיצוב.
אתם יכולים לעצב את התבנית על ידי הוספת רכיבים לנקודות ההתחלה הבאות:
- לוח ציור ריק.
- תבנית שסופקה על ידי Google.
- תבנית שנוצרה בעזרת Gemini.
כדי לעזור למפתחים להגדיר אפליקציה על סמך התבנית שלכם, צריך להגדיר משתני קלט ופלט ספציפיים. המשתנים עוזרים לכם להגדיר את הדברים הבאים:
קלט ספציפי שמפתחים צריכים לספק כשהם יוצרים אפליקציה על סמך התבנית שלכם. לדוגמה, אתם יכולים לספק ערכים שונים של משתנים לכל סביבה כשאתם פורסים אפליקציה בסביבות פיתוח, ייצור ובדיקה. המשתנים האלה נחשפים אוטומטית בקובצי
variables.tfו-outputs.tfשל Terraform שנוצרו.קשרים בין שתי תבניות אפליקציה רגילות שמוטמעות בתבנית מורכבת. לדוגמה, כדי ליצור קישור בתבנית מורכבת, תבנית של מסד נתונים עשויה להפיק משתנה של שם מסד נתונים שמשמש כקלט לתבנית של לוגיקת אפליקציה.
כדי לעצב את התבנית:
קנבס העיצוב
בשטח העיצוב, לוחצים על עיצוב כדי לראות את השטח.
כדי להתחיל, מבצעים אחת מהפעולות הבאות:
כדי להתחיל מאפס, באזור רכיבים, לוחצים על רכיב כדי להוסיף אותו לאזור הסצנה.
כדי להתחיל מתבנית שסופקה על ידי Google, לוחצים על שם התבנית באזור Get Started (תחילת העבודה) ב-Canvas.
כדי להשתמש בצ'אט בשפה טבעית כדי ליצור תבנית, לוחצים על Custom Application with Gemini (אפליקציה בהתאמה אישית עם Gemini).
כדי ליצור ערוץ תקשורת בין רכיבים, מבצעים אחת מהפעולות הבאות:
כדי לחבר שני רכיבים באזור העריכה, גוררים מנקודה כחולה ברכיב אחד לנקודה כחולה ברכיב אחר.
כדי להוסיף לרכיב קיים, לוחצים על Add (הוספה) ובוחרים את הרכיב שרוצים להוסיף.
פרטים על החיבור מופיעים במסמכי התיעוד של ההגדרות לכל משאב נתמך.
כדי להסיר רכיב או חיבור:
באזור העריכה, לוחצים על הרכיב או על החיבור.
באזור הגדרה, לוחצים על מחיקה.
בשדה, מזינים delete.
לוחצים על Delete.
כדי להגדיר משתני קלט ופלט לתבנית:
לוחצים על פרטי התבנית.
בחלונית פרטי התבנית, לוחצים על הכרטיסייה משתנים.
באזור Edit Variable (עריכת משתנה), מבצעים את הפעולות הבאות.
ברשימה Component, בוחרים את הרכיב שמהווה את הבסיס למשתנה.
מהרשימה סוג משתנה בוחרים באחת מהאפשרויות הבאות:
פלט: הרכיב מוציא ערך שאולי נדרש לחיבור. לדוגמה, שירות Cloud Run עשוי להפיק כתובת IP.
קלט: הרכיב דורש קלט מהמפתח או מתבנית אפליקציה רגילה אחרת. לדוגמה, תבנית לעיבוד נתונים עשויה לדרוש שם של מסד נתונים מתבנית לאחסון נתונים.
כדי ליצור עוד משתנה, לוחצים על הוספת משתנה וחוזרים על השלבים האלה.
CLI של gcloud
מזהים את כתובות ה-URI של גרסאות התבנית עבור רכיבי קטלוג Google שרוצים להוסיף לתבנית.
gcloud design-center spaces shared-templates list \ --google-catalog \ --location=us-central1מידע נוסף זמין במאמר gcloud design-center spaces shared-templates list.
מוסיפים רכיב לתבנית האפליקציה.
gcloud design-center spaces application-templates components create COMPONENT \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --application-template=APPLICATION_TEMPLATE \ --shared-template-revision-uri=SHARED_TEMPLATE_URIמחליפים את מה שכתוב בשדות הבאים:
-
COMPONENT: מזהה הרכיב שרוצים להוסיף לתבנית. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב. -
APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שבה מוסיפים את הרכיב. -
SHARED_TEMPLATE_URI: ה-URI של תבנית הרכיב המשותפת. לדוגמה,projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates components create.
-
מוסיפים רכיב שני לתבנית.
gcloud design-center spaces application-templates components create COMPONENT_2 \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --application-template=APPLICATION_TEMPLATE \ --shared-template-revision-uri=SHARED_TEMPLATE_URI_2מחליפים את מה שכתוב בשדות הבאים:
-
COMPONENT_2: מזהה הרכיב של הרכיב השני שרוצים להוסיף לתבנית. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב. -
APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שבה מוסיפים את הרכיב. -
SHARED_TEMPLATE_URI_2: הרכיב השני הוא ה-URI של תבנית משותפת. לדוגמה,projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates components create.
-
יוצרים חיבור בין שני הרכיבים.
gcloud design-center spaces application-templates components connections create CONNECTION \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --application-template=APPLICATION_TEMPLATE \ --component=COMPONENT \ --destination-component-uri=COMPONENT_2מחליפים את מה שכתוב בשדות הבאים:
-
CONNECTION: מזהה החיבור של החיבור שרוצים להוסיף לתבנית. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב. -
APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שבה מוסיפים את החיבור. -
COMPONENT: מזהה רכיב המקור. -
COMPONENT_2: מזהה רכיב היעד.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates components connections create.
-
מוסיפים משתני קלט ופלט כדי לדרוש קלט מהמפתח, או כדי להתחבר לרכיבים אחרים בתבניות מורכבות.
gcloud design-center spaces application-templates update APPLICATION_TEMPLATE \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --add-root-input-variables=componentUri=COMPONENT_URI,variable=VARIABLE \ --add-root-output-variables=componentUri=COMPONENT_URI,variable=VARIABLEמחליפים את מה שכתוב בשדות הבאים:
-
APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שבה מוסיפים משתנים. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב. -
COMPONENT_URI: ה-URI של הרכיב שמשמש כבסיס למשתנה. -
VARIABLE: משתנה הרכיב שרוצים להזין או להוציא. לדוגמה, יכול להיות שלרכיב מסד נתונים יש משתנהdatabase_nameשתרצו להציג או לדרוש קלט ממפתחים.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates update.
-
הגדרת ערכי ברירת מחדל לרכיבים
לכל רכיב שמוסיפים לתבנית, אפשר לציין פרטים של הגדרות ברירת מחדל, כמו הפרויקט של המשאב ומיקום הפריסה. כשיוצרים אפליקציה מהתבנית הזו, Application Design Center מחיל את הגדרות ברירת המחדל האלה.
מפתחי אפליקציות יכולים גם לשנות את פרטי החיבור אם הגדרת ברירת המחדל לא עונה על הדרישות שלהם. לדוגמה, יכול להיות שתצטרכו לשנות את שמות המפתחות של משתני הסביבה, לשנות את יציאות החיבור או להוסיף תפקידים נוספים לחשבונות שירות כשאתם יוצרים אפליקציה.
לפני שמפתחים פורסים אפליקציה, הם יכולים לראות ולשנות את ערכי ברירת המחדל שהגדרתם בתבנית. המפתחים צריכים להגדיר את הפרטים הנדרשים לכל משאב נתמך.
כדי להגדיר רכיבים וחיבורים:
קנבס העיצוב
באזור העיצוב, לוחצים על רכיב.
באזור Configuration, ברשימה מזהה פרויקט, בוחרים את הפרויקט שבו רוצים לפרוס את המשאב. בוחרים פרויקט שעומד בדרישות הבאות:
הפרויקט צריך להיות צאצא של התיקייה שנבחרה עם האפליקציה.
הפרויקט לא יכול להיות פרויקט ניהול.
קובעים הגדרות נוספות למשאב. לדוגמה, ב-Cloud SQL, אפשר להגדיר את הדברים הבאים:
- אזור
- הגדרת הגיבוי
- דגלים של מסדי נתונים
- תצורת IP
קישורים למסמכי ההגדרה של כל רכיב מופיעים במאמר משאבים נתמכים.
כשמחברים רכיבים באזור העיצוב, נעשה שימוש בערכי ברירת מחדל של ההגדרה כדי ליצור את החיבור. כדי להוסיף או לשנות פרטי חיבור:
באזור העיצוב, לוחצים על החיבור בין שני רכיבים. נפתחת החלונית חיבור ומוצגים בה פרמטרים של החיבור.
מבצעים אחת מהפעולות הבאות:
כדי לשנות פרמטר קיים של חיבור, לוחצים על עריכה.
כדי להוסיף פרמטר חיבור חדש, לוחצים על הוספת פרמטר.
מעדכנים את השדות מפתח וערך. לדוגמה, יכול להיות שתרצו לשנות את הפרטים הבאים:
- השמות של מפתחות משתני הסביבה צריכים להתאים לדרישות של האפליקציה.
- ערך יציאת החיבור.
- התפקידים שנוספו לחשבון השירות.
לוחצים על Save.
CLI של gcloud
כדי לראות את הפרמטרים של הרכיב, מתארים כל רכיב בתבנית האפליקציה.
gcloud design-center spaces application-templates components describe COMPONENT \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --application-template=APPLICATION_TEMPLATEמחליפים את מה שכתוב בשדות הבאים:
-
COMPONENT: מזהה הרכיב של הרכיב שרוצים לתאר. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב. -
APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates components describe.
-
לכל רכיב שרוצים לשנות, יוצרים קובץ JSON בספריית הבית שמכיל את ערכי הפרמטרים.
לדוגמה, אפשר ליצור את הקובץ הבא לרכיב Cloud Run:
[ { "key": "service_name", "value": "frontend-service" }, { "key": "project_id", "value": "DEPLOYMENT_PROJECT" } ]מעדכנים כל רכיב בתבנית האפליקציה כדי להגדיר את הפרמטרים הנדרשים.
gcloud design-center spaces application-templates components update COMPONENT \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --parameters=PARAMETERS_FILE_PATH \ --application-template=APPLICATION_TEMPLATEמחליפים את מה שכתוב בשדות הבאים:
-
COMPONENT: מזהה הרכיב שרוצים לעדכן. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב. -
PARAMETERS_FILE_PATH: קובץ JSON שכולל פרמטרים של רכיבים. -
APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates components update.
-
מתארים את החיבורים בין הרכיבים.
gcloud design-center spaces application-templates components connections describe CONNECTION \ --component=COMPONENT \ --application-template=APPLICATION_TEMPLATE \ --project=PROJECT \ --location=LOCATION \ --space=SPACEמחליפים את מה שכתוב בשדות הבאים:
-
CONNECTION: מזהה החיבור. -
COMPONENT: מזהה הרכיב. -
APPLICATION_TEMPLATE: מזהה התבנית. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates components connections describe.
-
עורכים את פרמטרי החיבור של הרכיב.
gcloud design-center spaces application-templates components connections update CONNECTION \ --component=COMPONENT \ --application-template=APPLICATION_TEMPLATE \ --project=PROJECT \ --location=LOCATION \ --space=SPACE \ --source-component-parameters='[{"key": SOURCE_KEY, "value": SOURCE_VALUE}]'מחליפים את מה שכתוב בשדות הבאים:
-
CONNECTION: מזהה החיבור. -
COMPONENT: מזהה הרכיב. -
APPLICATION_TEMPLATE: מזהה התבנית. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב. -
SOURCE_KEY: מפתח הפרמטר החדש. SOURCE_VALUE: ערך הפרמטר החדש.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates components connections update.
-
עריכת קוד Terraform
במהלך העיצוב של תבנית האפליקציה, App Design Center יוצר קוד Terraform שמשקף את פרטי העיצוב וההגדרה. אפשר לערוך את Terraform כדי לציין את פרטי ההגדרה של הרכיב.
המערכת יוצרת את קובצי Terraform הבאים:
-
main.tf: קוד תשתית שכולל מודול לכל רכיב בתבנית. -
outputs.tf: חושף מידע על רכיבי תשתית שנפרסו. -
variables.tf: מגדיר את השם, הסוג והתיאור של המשתנים שמשמשים בקובץmain.tf. -
input.tfvars: מגדיר ערכים למשתנים שמשמשים בקובץmain.tf. -
providers.tf: מגדיר תוויות שעוזרות ל-Terraform ליצור אינטראקציה עם ממשקי API ומשאבים של Google Cloud .
מידע נוסף זמין במאמר סקירה כללית על Terraform ב-Google Cloud.
כדי לערוך את קוד Terraform:
באזור העיצוב, לוחצים על קוד. המערכת מציגה את קובצי Terraform שנוצרו.
לוחצים על main.tf. המערכת מציגה את מודול Terraform לכל רכיב.
עריכת פרטי ההגדרה. מידע נוסף זמין במסמכי התיעוד בנושא הגדרות של כל משאב נתמך.
המערכת מאמתת את העריכות באופן אוטומטי, ואם הן לא תקינות היא מציגה שגיאות.
כדי להדגיש ולהשוות את העריכות:
לוחצים על הצגת ההבדלים.
כדי לבטל שינוי, לוחצים בשוליים על Click to revert change (לחיצה לביטול השינוי).
לוחצים על הצגת ההבדלים כדי לסגור את תצוגת ההשוואה.
כדי לשמור את השינויים, לוחצים על שמירת שינויים בקוד.
כדי לאמת את השינויים, מבצעים את הפעולות הבאות.
- לוחצים על עיצוב.
- לוחצים על רכיב ובודקים את פרטי ההגדרה שלו.
אימות התבנית
לפני שמשתפים את התבנית עם מפתחים, חשוב לוודא שהיא פועלת כמו שרציתם. כדי לאמת את התבנית:
- יוצרים אפליקציה עם ההגדרות הבאות:
- מהרשימה סביבה בוחרים באפשרות בדיקה.
- ברשימה רמת חשיבות, בוחרים באפשרות נמוכה.
- פורסים את האפליקציה. הוראות לפריסה מפורטות במאמר פריסת אפליקציה מהמסוף.
- בודקים את התשתית כדי לוודא שהיא עומדת בדרישות.
- כדי להימנע מעלויות חוזרות, צריך למחוק את פריסת הבדיקה.
שיתוף תבנית בקטלוג
אחרי שמאמתים את התבנית, אפשר לפרסם אותה בקטלוג. מפתחי אפליקציות שיש להם גישה למרחב שבו הקטלוג משותף יכולים להשתמש בתבנית.
- באזור העיצוב, לוחצים על הוספה לקטלוג.
- כדי לנהל את המרחבים שבהם הקטלוג משותף, אפשר לעיין במאמר בנושא ניהול קטלוגים.
תיקון ושיתוף מחדש של התבנית
ככל שתצברו יותר ניסיון בשימוש באפליקציה והצרכים העסקיים שלכם ישתנו, יכול להיות שתרצו לעדכן את התבנית. לדוגמה, יכול להיות שתחליטו לשפר את הביצועים של שירות לקצה העורפי על ידי הוספה של שירות Memorystore לצורך שמירה במטמון.
כשמשנים תבנית, נוצרת גרסה מתוקנת של התבנית. כדי להחיל את השינויים על אפליקציות קיימות, המפתחים צריכים לפרוס את האפליקציות באמצעות הגרסה.
התבניות לא מתפרסמות אוטומטית בקטלוגים ב-App Design Center. כדי לשתף את הגרסה האחרונה, מפרסמים שוב את התבנית בקטלוג.
כדי ליצור גרסה חדשה:
בתפריט הניווט, לוחצים על תבניות.
בוחרים את תבנית האפליקציה שרוצים לשנות. אזור העריכה ייפתח.
משנים את התבנית בהתאם לדרישות החדשות. לדוגמה, להוסיף ולהגדיר רכיב חדש.
כדי לשתף את הגרסה האחרונה עם מרחבים אחרים, מוסיפים את התבנית לקטלוג שוב.
מחיקת תבנית
אם אתם לא צריכים יותר תבנית מסוימת, אתם יכולים למחוק אותה.
קנבס העיצוב
- באזור העיצוב, לוחצים על פעולות.
- לוחצים על Delete.
CLI של gcloud
מחיקה של תבנית אפליקציה.
```sh
gcloud design-center spaces application-templates delete APPLICATION_TEMPLATE \
--project=PROJECT \
--location=LOCATION \
--space=SPACE
```
מחליפים את מה שכתוב בשדות הבאים:
-
APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שרוצים למחוק. -
PROJECT: מזהה פרויקט הניהול. -
LOCATION: האזור של תבנית האפליקציה. -
SPACE: מזהה המרחב.
מידע נוסף זמין במאמר gcloud design-center spaces application-templates delete.
המאמרים הבאים
- כדי לשתף את התבניות עם מרחבים אחרים, צריך לנהל את קטלוג התבניות.
- כדי להשתמש במודולים של Terraform בתבניות שלכם, צריך לייבא רכיבים.
- במאמר ניהול אפליקציות מוסבר איך לעדכן, לשנות את גודל המשאבים ולמחוק אותם.