במדריך הזה מוסבר איך להפוך את קידום האינטגרציה בין סביבות שונות בפרויקטים שונים של Google Cloud לאוטומטי באמצעות משתני הגדרה.
סקירה כללית
במדריך הזה תלמדו איך להפוך את הפריסות של Application Integration לאוטומטיות באמצעות משתנה הגדרה לשילוב לדוגמה. תהליך השילוב לדוגמה הזה קורא ל-API ומפרסם את התגובה מה-API לנושא Pub/Sub. הדוגמה הזו נועדה להמחיש את השימוש במשימות Call REST Endpoint ו-Connectors. אתם יכולים לאחסן את השילוב לדוגמה במאגרי GitHub שתואמים לסביבות ולפרויקטים השונים של Google Cloud .מטרות
במדריך הזה מוסבר איך לבצע את הפעולות הבאות בשילוב:
- יוצרים שילוב.
- יוצרים משתני הגדרות ומשתמשים בהם בשילוב.
- להעביר את השילוב לסביבה אחרת.
עלויות
במדריך הזה משתמשים ברכיבים הבאים של Google Cloud, והשימוש בהם כרוך בתשלום:
ההוראות במדריך הזה נועדו לוודא שהשימוש במשאבים יהיה במסגרת המגבלות של Google Cloud התכונות החינמיות בענן ותקופת הניסיון.
כשמסיימים את המשימות שמתוארות במסמך הזה אפשר למחוק את המשאבים שיצרתם כדי להימנע מחיובים נוספים. מידע נוסף זמין בקטע הסרת המשאבים.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אנחנו ממליצים למשתמשים חדשים ב- Google Cloudליצור חשבון כדי שיוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Secret Manager API, Connectors API APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Create a service account:
-
Ensure that you have the Create Service Accounts IAM role
(
roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles. -
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart. - Click Create and continue.
-
Grant the Pub/Sub Publisher (
roles/pubsub.publisher) role to the service account.To grant the role, find the Select a role list, then select Pub/Sub Publisher (
roles/pubsub.publisher). - Click Continue.
-
Click Done to finish creating the service account.
-
Ensure that you have the Create Service Accounts IAM role
(
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Secret Manager API, Connectors API APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Create a service account:
-
Ensure that you have the Create Service Accounts IAM role
(
roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles. -
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart. - Click Create and continue.
-
Grant the Pub/Sub Publisher (
roles/pubsub.publisher) role to the service account.To grant the role, find the Select a role list, then select Pub/Sub Publisher (
roles/pubsub.publisher). - Click Continue.
-
Click Done to finish creating the service account.
-
Ensure that you have the Create Service Accounts IAM role
(
יוצרים נושא Pub/Sub
נכנסים לדף Topics של Pub/Sub במסוף Google Cloud .
לוחצים על Create topic.
בשדה Topic ID, מזינים מזהה לנושא. מידע נוסף על מתן שמות לנושאים זמין במאמר הנחיות למתן שמות לנושא, למינוי, לסכימה או לתמונת מצב.
משאירים את האפשרות Add a default subscription.
אל תבחרו באפשרויות האחרות.
לוחצים על Create topic.
הגדרת מחבר Pub/Sub
- במסוףGoogle Cloud , נכנסים לדף Integration Connectors > Connections ובוחרים או יוצרים פרויקט ב- Google Cloud .
- לוחצים על + יצירת חיבור חדש כדי לפתוח את הדף יצירת חיבור.
- בקטע Location בוחרים את המיקום של החיבור.
- אזור: בוחרים מיקום מהרשימה הנפתחת.
לרשימה של כל האזורים הנתמכים, ראו מיקומים.
- לוחצים על הבא.
- אזור: בוחרים מיקום מהרשימה הנפתחת.
- בקטע Connection Details (פרטי החיבור), ממלאים את הפרטים הבאים:
- מחבר: בוחרים באפשרות Pub/Sub מהרשימה הנפתחת של המחברים הזמינים.
- גרסת המחבר: בוחרים את גרסת המחבר מהרשימה הנפתחת של הגרסאות הזמינות.
- בשדה Connection Name, מזינים
pub-sub-connector. - חשבון שירות: בוחרים חשבון שירות עם התפקידים הנדרשים.
- מזהה הפרויקט: מזהה הפרויקט ב- Google Cloud שבו נמצא המכונה של Pub/Sub.
- Topic ID: מזינים את השם של נושא Pub/Sub.
- לוחצים על הבא.
- בקטע אימות, לוחצים על הבא.
- בדיקה: בודקים את פרטי החיבור והאימות.
- לוחצים על יצירה.
יצירת שילוב חדש
אחרי שמגדירים את Application Integration, אפשר ליצור אינטגרציה חדשה:
- נכנסים לדף Application Integration במסוף Google Cloud.
- בתפריט הניווט שמימין, לוחצים על שילובים כדי לפתוח את הדף שילובים.
- לוחצים על Create integration וממלאים את הפרטים הבאים בדף Create Integration:
- שם השילוב: נותנים שם לשילוב. לדוגמה,
build-cicd. - תיאור: אם רוצים, אפשר להזין תיאור לשילוב. לדוגמה,
Demo integration created for CICD tutorial. - Region: בוחרים את האזור
us-central1מרשימת האזורים שהוקצו. אם האזור שאתם רוצים לבחור לא מוקצה, קראו את המאמר הקצאת אזור חדש. לרשימת האזורים הנתמכים, ראו מיקומי Application Integration. - חשבון שירות: השדה הזה מופיע אם הפעלתם את הפיקוח באזור שלכם. בוחרים את חשבון השירות לשילוב. איך מפעילים את הפיקוח באזור
- לוחצים על יצירה. ייפתח דף של כלי עריכת השילובים, שבו אפשר להוסיף את המשימות ואת הטריגרים כדי ליצור את השילוב.
- שם השילוב: נותנים שם לשילוב. לדוגמה,
יצירת תהליך שילוב
הוספת טריגר של API ונקודת קצה (endpoint) של קריאת REST
כדי להוסיף טריגר מסוג API trigger:- נכנסים לדף Application Integration במסוף Google Cloud .
- בתפריט הניווט, לוחצים על שילובים.
מופיע הדף Integrations List, שבו מפורטים כל השילובים שזמינים בפרויקט ב-Google Cloud.
- בוחרים את השילוב של
build-cicd.האינטגרציה תיפתח בעורך האינטגרציות.
- בסרגל הניווט של עורך השילובים, לוחצים על Triggers > API Trigger כדי להוסיף את הטריגר.
- בסרגל הניווט של עורך השילובים, לוחצים על Tasks > Call REST Endpoint כדי להוסיף את המשימה.
- מוסיפים חיבור קצה מהרכיב API trigger לרכיב Call REST Endpoint: מעבירים את העכבר מעל נקודת בקרה ברכיב API trigger, ואז לוחצים וגוררים קו לנקודת בקרה ברכיב המשימה Call REST Endpoint.
יצירת משתני הגדרות אישיות
כדי ליצור משתני הגדרות אישיות:- בסרגל הניווט של עורך השילובים, לוחצים על (החלפת מצב החלונית) כדי להציג את החלונית Variables.
- לוחצים על +יצירה.
- בחלונית Create Variable:
- בשדה Name, מזינים
url.ב-Application Integration, הקידומת
`CONFIG_מתווספת למשתני התצורה. אם אתם רוצים להוסיף את משתנה ההגדרה לשילוב באמצעות ממשקי API, השתמשו בפורמט הבא למשתני הגדרה:`CONFIG_CONFIG_VARIABLE_NAME`. במאמר העלאה והורדה של אינטגרציות מוסבר איך להוריד ולהעלות אינטגרציות. - בקטע Variable type (סוג המשתנה), בוחרים באפשרות Config Variable (משתנה הגדרה).
- בקטע סוג הנתונים, בוחרים באפשרות מחרוזת.
- לוחצים על יצירה.
משתנה ההגדרות מופיע בחלונית Variables (משתנים).
- בשדה Name, מזינים
- חוזרים על שלבים 2 ו-3 כדי להוסיף את משתנה ההגדרה הבא:
- שם:
connection_name - סוג המשתנה:
Config Variable - סוג הנתונים:
String
- שם:
הוספה והגדרה של נקודת קצה (endpoint) של Call REST
כדי ליצור משתנה הגדרה:- בעורך השילובים, לוחצים על המשימה Call REST Endpoint כדי לפתוח את חלונית הגדרת המשימה. לאחר מכן, מבצעים את הפעולות הבאות:
- מרחיבים את הקטע Task input.
- בקטע Endpoint base URL (כתובת URL בסיסית של נקודת קצה), לוחצים על Variable (משתנה) ומוסיפים את
$`CONFIG_url`$.
הוספה והגדרה של משימת מחברים
- בסרגל הניווט של עורך השילובים, לוחצים על Task > Connectors.
- לוחצים על Configure Connectors (הגדרת מחברים).
- ברשימה Region, בוחרים את האזור שבו יצרתם את המחבר ל-Pub/Sub.
- בשדה Connection, בוחרים את המחבר של Pub/Sub שיצרתם בשלב הקודם.
- בקטע סוג, בוחרים באפשרות פעולות.
- בקטע Set entities/actions, בוחרים באפשרות publishMessage בשדה Actions.
- בשדה ערך ברירת מחדל, מוסיפים את ערך ברירת המחדל של משתנה ההגדרה.
- לוחצים על יצירה.
- בחלונית הגדרת המשימה Connectors, מרחיבים את הקטע Connection details כדי לעדכן את השדה הבא:
- בשדה שם החיבור, לוחצים על משתנה ובוחרים באפשרות
$`CONFIG_connection_name`$.
- בשדה שם החיבור, לוחצים על משתנה ובוחרים באפשרות
הוספת משימה של מיפוי נתונים
- בסרגל הניווט של עורך האינטגרציות, לוחצים על Task > מיפוי נתונים.
- מוסיפים חיבור קצה מהרכיב Call REST Endpoint לרכיב Data Mapping: מעבירים את העכבר מעל נקודת בקרה ברכיב Call REST Endpoint, לוחצים וגוררים קו לנקודת בקרה ברכיב המשימה Data Mapping.
- מוסיפים עוד חיבור קצה מהרכיב Data Mapping לרכיב Connectors: מעבירים את העכבר מעל נקודת בקרה ברכיב Data Mapping, לוחצים וגוררים קו לנקודת בקרה ברכיב המשימה Connectors.
- בחלונית ההגדרות של המשימה מיפוי נתונים, לוחצים על Open Data Mapping Editor.
- ממפים את משתנה הפלט של המשימה Call REST Endpoint למשתנה הקלט של המשימה Connectors.
פרסום השילוב
כדי לפרסם את השילוב:- כדי לפרסם את השילוב, לוחצים על Publish בסרגל הכלים של עורך השילובים.
תיבת הדו-שיח Publish integration מופיעה.
- בתיבת הדו-שיח Publish integration, מזינים את הערך של משתני התצורה הבאים:
-
url: מזינים את השם של כתובת ה-URL של נקודת הקצה. -
connection_name: מזינים את השם של מחבר Pub/Sub שיצרתם בשלב הקודם.
-
- לוחצים על פרסום.
- אחרי שמפרסמים את השילוב, אפשר להציג ולבדוק את יומני ההפעלה של השילוב שפורסם. כדי להציג את היומנים, לוחצים על Logs בסרגל הכלים של עורך השילובים.
קידום השילוב בין סביבות שונות
כדי לקדם את השילוב בסביבות שונות, אתם יכולים להשתמש בכלי integrationcli, שהוא כלי בקוד פתוח שמאפשר לכם ליצור אינטראקציה עם ממשקי ה-API של Application Integration ועם ממשקי ה-API של Integration Connectors. הכלי הזה מאפשר לנהל ישויות של שילובים, כמו שילובים, הגדרות אימות וכו'. בבלוג הקהילה, במאמר מבוא ל-integrationcli, מוסבר איך ליצור את התבנית לשילוב ואיך להחיל את השינויים שנוצרו על ידי התבנית.
אפשר גם לקדם שינויים בסביבות שונות על ידי הגדרת צינורות עיבוד נתונים של DevOps, למשל באמצעות Jenkins, GitLab, Cloud Build וכו'. מידע נוסף זמין במאמר שילוב עם Cloud Build.
אם אתם לא רוצים להשתמש ב-integrationcli, אתם יכולים להוריד ולהעלות את השילוב באופן ידני לפרויקט חדש. תצטרכו ליצור את המחברים בפרויקט החדש באופן ידני, כי כרגע אי אפשר להוריד אותם. כשמפרסמים את האינטגרציה בסביבה החדשה, אפשר להזין ערכים למשתני ההגדרות ב-Application Integration.