כדי לעבוד עם Infrastructure Manager (Infra Manager), צריך להכיר את Terraform. כדי לקבל מידע נוסף על Terraform, כדאי להתחיל עם המאמר מה זה Terraform?.
Infra Manager פורס משאבי תשתית והגדרות שמוגדרים בתצורת Terraform. ההגדרות האלה יכולות לכלול כמה קבצים וספריות, אבל נקודת הכניסה שלהן חייבת להיות מודול בסיסי של Terraform.
ב-Infra Manager משתמשים במונח blueprint כדי להתייחס להגדרות של Terraform.
מידע נוסף על Terraform עם Google Cloudזמין במאמר בנושא Terraform ב- Google Cloud.
מודולים של Terraform ל- Google Cloud
כדי לראות קבוצה של מודולים להקצאת Google Cloud משאבים, אפשר לעיין במאמר מודולים ותוכניות לניהול של Terraform ב-Google Cloud.
אפשר גם ליצור מודולים משלכם ב-Terraform ל- Google Cloud. פרטים נוספים זמינים במאמר יצירת מודולים.
גרסאות Terraform נתמכות
Infra Manager תומך בגרסאות הבאות של Terraform:
| גרסת Terraform | תאריך הזמינות | תאריך הפסקת התמיכה | תאריך סיום התמיכה | העברה אוטומטית לגרסה |
|---|---|---|---|---|
1.2.3 |
21.08.2023 | 1/8/2026 | 2/8/2026 | 1.5.7 |
1.3.10 |
3/14/2024 | TBD | TBD | TBD |
1.4.7 |
3/14/2024 | TBD | TBD | TBD |
1.5.7 |
3/14/2024 | TBD | TBD | TBD |
אפשר להשתמש בדגל --tf-version-constraint כדי לציין את הגרסה של Terraform שבה Infra Manager משתמש כדי ליצור פריסה.
לפני שמשתמשים ב-Infrastructure Manager כדי לפרוס תצורת Terraform, צריך לוודא שהתצורה כוללת את האילוצים הבאים:
אם לא מציינים גרסה של Terraform, כברירת מחדל נעשה שימוש בגרסה העדכנית ביותר שנתמכת.
כשמעדכנים פריסה, אפשר לשדרג לגרסה מאוחרת יותר של Terraform, אבל אי אפשר לשנמך לגרסה נתמכת קודמת. מידע על הוצאה משימוש של גרסאות Terraform זמין במסמכי התיעוד בנושא מדיניות ניהול הגרסאות של Terraform.
כדי לראות את הגרסה של Terraform ששימשה ליצירת פריסה או עדכון ספציפיים, אפשר לעיין במאמרים בנושא הצגת פרטים של פריסה והצגת פרטים של עדכון.
אילוצים על הגדרות Terraform
כדי להשתמש ב-Infrastructure Manager לפריסת הגדרות Terraform, ההגדרות צריכות לעמוד במגבלות הבאות:
- אל תכללו מידע רגיש או פרטים אישיים מזהים בערכי ההגדרה של Terraform. מידע נוסף זמין במאמר בנושא ערכי הגדרה ונתונים רגישים ב-Terraform.
- צריך לספק מודול Terraform ברמה הבסיסית תקין. אין תמיכה ביצירת תבניות או ביצירה של Terraform.
- ההגדרה צריכה להיות ניתנת להפעלה על ידי גרסה נתמכת של Terraform.
- אין להגדיר בלוקים של קצה עורפי.
- אנחנו לא ממליצים להשתמש בכלי הקצאת הרשאות. אם אפשר, כדאי להשתמש בפתרון אחר. מידע נוסף על ההמלצה הזו זמין במאמר Provisioners are a Last Resort. אם אתם משתמשים בכלי הקצאת הרשאות, שימו לב שסביבת זמן הריצה של Infra Manager יכולה להשתנות בכל שלב.
ערכי תצורה של Terraform ומידע אישי רגיש
אל תכללו ערכי תצורה של Terraform שמכילים מידע רגיש או פרטים אישיים מזהים.
התיעוד של ספק Google Cloud השירות מציין ערכי הגדרה שעשויים לכלול מידע רגיש.
לדוגמה, המשאב google_storage_bucket_object מאפשר ליצור אובייקט ב-Cloud Storage באמצעות הארגומנט content. הארגומנט הזה מסומן כרגיש בדף google_storage_bucket_object ב Google Cloud מאמרי העזרה של הפלאגין שמתממשק עם שירותים חיצוניים.
אתם יכולים להשתמש בתוויות האלה כדי לקבל הנחיות כשאתם יוצרים הגדרות של Terraform או כשאתם בודקים הגדרות קיימות של Terraform לפני השימוש בהן.
בGoogle Cloud הודעת הפרטיות יש מידע על האופן שבו Google Cloud מעבדת מידע אישי שהיא אוספת או יוצרת במהלך ההקצאה והניהול של שירותי Cloud.
שימוש בספק Terraform ל Google Cloud
לחלופין, אפשר להשתמש ב-CLI של gcloud כדי להגדיר פריסות ותצוגות מקדימות כך שישתמשו בספקי Terraform שמתוחזקים על ידי Infra Manager עבורGoogle Cloud.
Infra Manager תומך בספקי Terraform ל Google Cloud:
googlegoogle-beta
אם לא מציינים את השדה הזה, נעשה שימוש בספק Terraform שמתחזקת HashiCorp עבור Google Cloud.
כדי ללמוד איך לציין את השימוש בפלאגין שמתממשק עם שירותים חיצוניים של Terraform שמתוחזק על ידי Infra Manager, אפשר לעיין במאמרים פריסת תשתית באמצעות Infrastructure Manager, עדכון Deployment (פריסה) או תצוגה מקדימה של Deployment (פריסה).
בדיקת הגרסאות הנתמכות של הספק
כדי לבדוק את הגרסאות של ספק Terraform Google Cloud ש-Infra Manager תומך בהן, אפשר לעיין בmanifest.json בקטגוריה של Cloud Storage שמתוחזקת על ידי Infra Manager שמשויכת לאזור הפריסה בפורמט:
https://storage.googleapis.com/LOCATION-im-providers/hashicorp/PROVIDER_VERSION/manifest.json
רשימה מלאה של הגרסאות הנתמכות מופיעה בשדה versions בקובץ manifest.json.
לדוגמה, אם הפריסה שלכם נמצאת באזור africa-south1 ואתם משתמשים בפלאגין שמתממשק עם שירותים חיצוניים google-beta, תוכלו לעבור אל https://storage.googleapis.com/africa-south1-im-providers/hashicorp/google-beta/manifest.json כדי לראות את האזורים הזמינים.