HashiCorp Terraform הוא כלי מסוג תשתית כקוד (IaC) שמאפשר להקצות ולנהל תשתית ענן. Terraform מספקת פלאגינים שנקראים providers, שמאפשרים לכם ליצור אינטראקציה עם ספקי ענן וממשקי API אחרים. אתם יכולים להשתמש בספק Terraform ל- Google Cloud כדי להקצות ולנהל משאבי Google Cloud , כולל Policy Controller.
במאמר הזה נסביר איך להשתמש ב-Terraform עם Policy Controller. נספק מבוא לאופן הפעולה של Terraform וכמה משאבים שיעזרו לכם להתחיל להשתמש ב-Terraform עם Google Cloud. תמצאו גם קישורים למסמכי עזר של Terraform בנושא Policy Controller, דוגמאות קוד ומדריכים לשימוש ב-Terraform כדי להקצות משאבים של Policy Controller.
הוראות לתחילת העבודה עם Terraform ל- Google Cloudזמינות במאמרים התקנה והגדרה של Terraform או מדריך למתחילים של Terraform ל- Google Cloud .
איך Terraform פועל
ל-Terraform יש תחביר הצהרתי ומבוסס-הגדרות, שאפשר להשתמש בו כדי לתאר את התשתית שרוצים להקצות בפרויקט Google Cloud . אחרי שכותבים את ההגדרה הזו בקובץ הגדרה אחד או יותר של Terraform, אפשר להשתמש ב-Terraform CLI כדי להחיל את ההגדרה הזו על משאבי Policy Controller.
בשלבים הבאים מוסבר איך Terraform פועל:
- אתם מתארים את התשתית שאתם רוצים להקצות בקובץ תצורה של Terraform. אין צורך לכתוב קוד שמתאר איך להקצות את התשתית. Terraform מקצה את התשתית בשבילכם.
- מריצים את הפקודה
terraform plan, שמעריכה את ההגדרות ומפיקה תוכנית ביצוע. אפשר לבדוק את התוכנית ולבצע שינויים לפי הצורך. -
מריצים את הפקודה
terraform apply, שמבצעת את הפעולות הבאות:- הוא מקצה את התשתית על סמך תוכנית הביצוע על ידי הפעלת ממשקי ה-API המתאימים של Policy Controller ברקע.
- הפקודה יוצרת קובץ מצב של Terraform, שהוא קובץ JSON שממפה את המשאבים בקובץ ההגדרות למשאבים בתשתית בעולם האמיתי. Terraform משתמש בקובץ הזה כדי לשמור תיעוד של המצב האחרון של התשתית, וכדי לקבוע מתי ליצור, לעדכן ולכבות משאבים.
-
כשמריצים את הפקודה
terraform apply, Terraform משתמש במיפוי שבקובץ המצב כדי להשוות בין התשתית הקיימת לבין הקוד, ומבצע עדכונים לפי הצורך:- אם אובייקט של משאב מוגדר בקובץ התצורה, אבל לא קיים בקובץ המצב, Terraform יוצר אותו.
- אם אובייקט משאב קיים בקובץ המצב, אבל יש לו הגדרה שונה מזו שבקובץ התצורה, Terraform מעדכן את המשאב כך שיתאים לקובץ התצורה.
- אם אובייקט משאב בקובץ המצב תואם לקובץ התצורה, Terraform לא משנה את המשאב.
משאבים של Terraform ל-Policy Controller
משאבים הם הרכיבים הבסיסיים בשפת Terraform. כל בלוק של משאבים מתאר אובייקט תשתית אחד או יותר, כמו רשתות וירטואליות או מופעי מחשוב.
בטבלה הבאה מפורטים משאבי Terraform שזמינים ל-Policy Controller:
| שירות | משאבי Terraform |
|---|---|
| GKEHub |
המאמרים הבאים
- דוגמאות לקוד Terraform ל-Policy Controller
- מסמכי תיעוד של Terraform Google Cloud
- Google Cloud מסמכי התיעוד של ספק ב-HashiCorp
- תשתית כקוד ל- Google Cloud