הורדה ופריסה של Terraform

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

המערכת יוצרת את קובצי Terraform הבאים:

  • main.tf: קוד תשתית שכולל מודול לכל רכיב בתבנית.
  • outputs.tf: חושף מידע על רכיבי תשתית שנפרסו.
  • variables.tf: מגדיר את השם, הסוג והתיאור של המשתנים שמשמשים בקובץ main.tf.
  • input.tfvars: מגדיר ערכים למשתנים שמשמשים בקובץ main.tf.
  • providers.tf: מגדיר תוויות שעוזרות ל-Terraform ליצור אינטראקציה עם ממשקי API ומשאבים של Google Cloud .

מידע נוסף זמין במאמר סקירה כללית על Terraform ב-Google Cloud.

אם אין לכם כלים ותהליכי עבודה משלכם לפריסה, תוכלו לקרוא איך פורסים אפליקציה ממסוףGoogle Cloud .

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

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

משימה התפקידים הנדרשים
ייצוא קוד Terraform שנוצר באופן מקומי או למאגר של מערכת לניהול גרסאות אדמין באפליקציה (roles/designcenter.applicationAdmin) או
עריכת אפליקציות (roles/designcenter.applicationEditor)

מידע נוסף על תפקידים זמין במאמר בקרת גישה באמצעות IAM.

ייצוא קוד Terraform

אם רוצים לשמור את התבניות והאפליקציות מחוץ ל- Google Cloud, אפשר ליצור Terraform ולייצא אותה למחשב המקומי או למאגר הקוד.

ייצוא באופן מקומי

אפשר לייצא קוד Terraform שנוצר מתבנית או מאפליקציה.

תבנית

  1. נכנסים לדף Templates במסוף Google Cloud .

    אל "תבניות"

  2. לוחצים על מזהה התבנית שרוצים לייצא.

  3. לוחצים על קבלת קוד.

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

בקשת הצטרפות

  1. נכנסים לדף Applications במסוף Google Cloud .

    מעבר אל Applications

  2. לוחצים על שם האפליקציה שרוצים לייצא.

  3. לוחצים על קבלת קוד.

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

ייצוא למאגר

כדי לשמור על התבניות באמצעות מאגר ניהול קוד המקור, אפשר לייצא תבניות ואפליקציות ל-GitHub. לאחר מכן תוכלו להשתמש בתהליכי העבודה הקיימים שלכם לניהול גרסאות, ולהפעיל בנייה, בדיקות ופריסות באמצעות צינור עיבוד הנתונים של CI/CD.

חיבור למאגר

כדי ליצור חיבור Developer Connect בין מאגר GitHub לבין פרויקט הניהול:

  1. משנים את מדיניות הארגון כדי להוסיף את השירותים הבאים לרשימת ההיתרים:

    1. developerconnect.googleapis.com.
    2. secretmanager.googleapis.com.

    הוראות לשינוי מדיניות הארגון מופיעות במאמר שימוש באילוץ להגבלת השימוש בשירות משאבים.

  2. יוצרים חיבור Developer Connect למאגר שלכם ב-GitHub, כולל הפעולות הבאות:

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

    הוראות ליצירת חיבור וקישור מאגר מפורטות במאמר חיבור GitHub.

  3. כדי להעתיק את ה-URI של המאגר:

    1. פותחים את הדף Developer Connect Git repositories (מאגרי Git של Developer Connect).
    2. בטבלה Repositories (מאגרי מידע), לוחצים על More Options (אפשרויות נוספות) ובוחרים באפשרות Copy resource path (העתקת נתיב המשאב).

יצירה וייצוא

כדי ליצור קוד ב-Terraform ולייצא אותו למאגר GitHub, מבצעים את הפעולות הבאות:

תבנית

  1. מזהים את מזהה המרחב.

    gcloud design-center spaces list \
        --project=PROJECT \
        --location=LOCATION
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
  2. מזהים את מזהה התבנית של התבנית שרוצים לייצא.

    gcloud design-center spaces application-templates list \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SPACE: מזהה המרחב.
    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
  3. יוצרים קוד Terraform לתבנית ומייצאים אותו ל-GitHub.

    gcloud design-center spaces application-templates generate APPLICATION_TEMPLATE \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION \
        --developer-connect-export-config-repo-uri=DEVELOPER_CONNECT_EXPORT_CONFIG_REPO_URI \
        --developer-connect-export-config-dir=DEVELOPER_CONNECT_EXPORT_CONFIG_DIR \
        --developer-connect-export-config-branch=DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH
    

    מחליפים את מה שכתוב בשדות הבאים:

    • APPLICATION_TEMPLATE: מזהה התבנית שרוצים לייצא.
    • SPACE: מזהה המרחב.
    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_DIR: הספרייה ביחס למאגר GitHub.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH: הענף במאגר GitHub.

    מידע נוסף זמין במאמר gcloud design-center spaces application-templates generate

  4. צופים במאגר כדי לוודא שהתבנית יוצאה בהצלחה.

בקשת הצטרפות

  1. מזהים את מזהה המרחב.

    gcloud design-center spaces list \
        --project=PROJECT \
        --location=LOCATION
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
  2. מזהים את מזהה האפליקציה שרוצים לייצא.

    gcloud design-center spaces applications list \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SPACE: מזהה המרחב.
    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
  3. יוצרים את קוד ה-Terraform של האפליקציה ומייצאים אותו ל-GitHub.

    gcloud design-center spaces applications generate APPLICATION \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION \
        --developer-connect-export-config-repo-uri=DEVELOPER_CONNECT_EXPORT_CONFIG_REPO_URI \
        --developer-connect-export-config-dir=DEVELOPER_CONNECT_EXPORT_CONFIG_DIR \
        --developer-connect-export-config-branch=DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH
    

    מחליפים את מה שכתוב בשדות הבאים:

    • APPLICATION: מזהה האפליקציה שרוצים לייצא.
    • SPACE: מזהה המרחב.
    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_DIR: הספרייה ביחס למאגר GitHub.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH: הענף במאגר GitHub.

    מידע נוסף מופיע במאמר gcloud design-center spaces applications generate

  4. בודקים את המאגר כדי לוודא שהאפליקציה יוצאה בהצלחה.

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