HashiCorp Terraform הוא כלי מסוג תשתית כקוד (IaC), שבעזרתו אפשר להקצות ולנהל תשתית ענן. Terraform מספקת פלאגינים שנקראים ספקים, שמאפשרים לכם ליצור אינטראקציה עם ספקי ענן וממשקי API אחרים. אתם יכולים להשתמש בפלאגין שמתממשק עם שירותים חיצוניים Terraform ל- Cloud de Confiance כדי להקצות ולנהל משאבי Cloud de Confiance by S3NS , כולל GKE.
בדף הזה מוסבר איך להשתמש ב-Terraform עם GKE, כולל מבוא לאופן הפעולה של Terraform וכמה משאבים שיעזרו לכם להתחיל להשתמש ב-Terraform עם Cloud de Confiance. תמצאו גם קישורים למסמכי העיון של Terraform בנושא GKE, דוגמאות לקוד ומדריכים לשימוש ב-Terraform כדי להקצות משאבי GKE.
הוראות לתחילת העבודה עם Terraform ל- Cloud de Confianceזמינות במאמרים התקנה והגדרה של Terraform או הפעלה מהירה של Terraform ל- Cloud de Confiance .
איך Terraform עובד
ל-Terraform יש תחביר הצהרתי ומבוסס-הגדרות, שבו אפשר להשתמש כדי לתאר את התשתית שרוצים להקצות בפרויקט Cloud de Confiance . אחרי שיוצרים את ההגדרה הזו בקובץ הגדרה אחד או יותר של Terraform, אפשר להשתמש ב-Terraform CLI כדי להחיל את ההגדרה הזו על המשאבים ב-GKE.
השלבים הבאים מסבירים איך Terraform פועל:
- אתם מתארים את התשתית שאתם רוצים להקצות בקובץ תצורה של Terraform. אין צורך לכתוב קוד שמתאר איך להקצות את התשתית. Terraform מקצה את התשתית בשבילכם.
- מריצים את הפקודה
terraform plan, שמעריכה את ההגדרות ומפיקה תוכנית ביצוע. אפשר לבדוק את התוכנית ולבצע שינויים לפי הצורך. -
מריצים את הפקודה
terraform apply, שמבצעת את הפעולות הבאות:- הוא מקצה את התשתית על סמך תוכנית הביצוע על ידי הפעלת ממשקי ה-API המתאימים של GKE ברקע.
- הפקודה יוצרת קובץ מצב של Terraform, שהוא קובץ JSON שממפה את המשאבים בקובץ ההגדרות למשאבים בתשתית בעולם האמיתי. Terraform משתמש בקובץ הזה כדי לשמור תיעוד של המצב האחרון של התשתית, וכדי לקבוע מתי ליצור, לעדכן ולמחוק משאבים.
-
כשמריצים את הפקודה
terraform apply, Terraform משתמשת במיפוי שבקובץ המצב כדי להשוות בין התשתית הקיימת לבין הקוד, ומבצעת עדכונים לפי הצורך:- אם אובייקט משאב מוגדר בקובץ התצורה, אבל לא קיים בקובץ המצב, Terraform יוצר אותו.
- אם אובייקט משאב קיים בקובץ המצב, אבל יש לו הגדרה שונה מזו שבקובץ ההגדרות, Terraform מעדכן את המשאב כך שיתאים לקובץ ההגדרות.
- אם אובייקט משאב בקובץ המצב תואם לקובץ התצורה, Terraform לא משנה את המשאב.
משאבים של Terraform ל-GKE
משאבים הם הרכיבים הבסיסיים בשפת Terraform. כל בלוק משאבים מתאר אובייקט תשתית אחד או יותר, כמו רשתות וירטואליות או מופעי מחשוב.
בטבלה הבאה מפורטים המשאבים של Terraform שזמינים ל-GKE:
מדריכים ל-GKE שמבוססים על Terraform
בטבלה הבאה מפורטים מדריכים ומדריכים מפורטים שמבוססים על Terraform ל-GKE:
| מדריך | פרטים |
|---|---|
| יצירה של אשכול GKE ופריסה של עומס עבודה באמצעות Terraform | הסבר על יצירת אשכול במצב Autopilot ב-Google Kubernetes Engine (GKE) ופריסת עומס עבודה באמצעות Terraform. |
| יצירת אשכול Autopilot | הסבר על יצירת אשכול GKE במצב Autopilot. |
| יצירת אשכול אזורי | במאמר הזה מוסבר איך ליצור אשכול אזורי רגיל עם התכונות שמופעלות כברירת מחדל ב-GKE. |
| יצירת אשכול אזורי | במאמר הזה מוסבר איך ליצור אשכול אזורי במסלול הרגיל ב-GKE. |
| יצירת אשכול מרובה דיירים באמצעות Terraform | הסבר על יצירת אשכול מרובה דיירים ופריסת עומס עבודה באמצעות Terraform. |
| הוספה וניהול של מאגרי צמתים | במאמר הזה מוסבר איך להוסיף מאגרי צמתים ולהפעיל עליהם פעולות באשכולות GKE Standard. |
| יצירת אשכולות ומאגרי צמתים עם צמתי Arm | הסבר על יצירת אשכול GKE Standard או מאגר צמתים עם צמתי Arm, כדי שתוכלו להריץ עומסי עבודה של Arm ב-GKE. |
| שימוש במשאבים שמורים בתחום מוגדר | הסבר על השימוש במשאבים שמורים של Compute Engine ב-GKE. |
| הגדרת תמונה של צומת | הסבר על הגדרת תמונת צומת לצמתים באשכולות GKE Standard. |
| יצירת אשכול שמשתמש במאגרי צמתים של Windows Server | הסבר על יצירת אשכול GKE עם מאגרי צמתים שבהם פועל Microsoft Windows Server. |
| יצירה וניהול של תוויות של מאגדים ושל מאגרי צמתים | הסבר על יצירת אשכול עם תוויות מצורפות. |
| ניהול משאבי GKE באמצעות תגים | הסבר על השימוש בתגים לניהול אשכולות GKE. |
| התאמה אישית של הגדרות המערכת של צומת | הסבר על התאמה אישית של תצורת מערכת הצמתים ב-GKE באמצעות קובץ תצורת מערכת הצמתים. |
| יצירת אשכול המותאם ל-VPC | הסבר על הגדרת אשכולות שמותאמים ל-VPC ב-GKE. |
| יצירת מאזן עומסים פנימי | הסבר על יצירת מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי או מאזן עומסים פנימי ב-GKE. |
| הגדרת רשת עבור אשכול בסיסי של סביבת ייצור | במאמר הזה מוסבר איך פורסים אפליקציית אינטרנט לאשכול GKE וחושפים אותה באמצעות מאזן עומסים ב-HTTPS. |
| הגדרת רצף לשדרוג האשכולות | הסבר על ניהול שדרוגים של אשכולות GKE באמצעות רצף פריסה. |
| פריסת עומסי עבודה של TPU ב-GKE Standard | הסבר על בקשה ופריסה של עומסי עבודה של אימון, כוונון והסקת מסקנות של מודלים של בינה מלאכותית (AI) ולמידת מכונה (ML) בקנה מידה גדול, שמשתמשים במאיצי Cloud TPU (יחידות TPU) באשכולות GKE Standard. |
| הרצת יחידות GPU במאגרי צמתים רגילים ב-GKE | המאמר מסביר איך להריץ ולבצע אופטימיזציה של עומסי עבודה עתירי-חישוב, כמו עומסי עבודה של בינה מלאכותית (AI), על ידי צירוף ושימוש ביחידות GPU של NVIDIA בצמתים של אשכולות GKE Standard. |
| הפעלת יחידות GPU מרובות מופעים | הסבר על הפעלת כרטיסי GPU מרובי-מופעים כדי להגדיל את הניצול ולהפחית את העלויות. |
| הפעלת Ray Operator ב-GKE | הסבר על הפעלת Ray operator ל-GKE. |
| שימוש בדיסקים משניים לאתחול כדי לטעון מראש נתונים או קובצי אימג' של קונטיינרים | הסבר על שיפור זמן האחזור של הפעלת עומסי עבודה באמצעות דיסקים משניים לאתחול. |
| פריסת מסד נתונים של PostgreSQL עם זמינות גבוהה ב-GKE | מאמר שמתאר פריסה של טופולוגיית PostgreSQL עם זמינות גבוהה ב-GKE. PostgreSQL הוא מסד נתונים רלציוני של אובייקטים בקוד פתוח, שידוע במהימנות שלו ובתקינות הנתונים. |
| איסוף מדדים של מישור הבקרה והצגתם | המאמר מתאר איך להגדיר אשכול GKE כדי לשלוח מדדים שמופקים על ידי שרת ה-API של Kubernetes, Scheduler ו-Controller Manager אל Cloud Monitoring באמצעות שירות מנוהל של Google Cloud ל-Prometheus. |
| איסוף מדדים של cAdvisor/Kubelet וצפייה בהם | מאמר שמסביר איך להגדיר אשכול Google Kubernetes Engine (GKE) כדי לשלוח קבוצה נבחרת של מדדי cAdvisor/Kubelet ל-Cloud Monitoring באמצעות השירות המנוהל של Google Cloud ל-Prometheus. |
| שינוי קצב העברת הנתונים ביומן | תיאור של קצב העברת הנתונים של היומנים כברירת מחדל והסבר איך להגדיל את קצב העברת הנתונים. |
| פריסה של OpenTelemetry מנוהל ל-GKE | כאן מוסבר איך להגדיר את Managed OpenTelemetry ל-GKE כדי לשלוח עקבות, מדדים ויומנים של OTLP אל Google Cloud Observability. |
| איסוף וצפייה ב-kube-state-metrics | מאמר שמסביר איך להגדיר אשכול GKE לשליחת מדדי kube-state-metrics ל-Cloud Monitoring באמצעות השירות המנוהל של Google Cloud ל-Prometheus. |
| התקנה של Policy Controller | הסבר על התקנת Policy Controller באמצעות Terraform. |
| הפעלת גיבוי ל-GKE באשכול | במאמר הזה מוסבר איך להפעיל את הגיבוי ל-GKE באשכול. |
| שינוי מקורות מידע במהלך השחזור | הסבר על שימוש בכללי טרנספורמציה כדי לבצע שינויים במשאבי Kubernetes במהלך תהליך השחזור. |
| הפעלת מצב הרשאה בתוכנית גיבוי | הסבר על הפעלת מצב הרשאה בתוכנית גיבוי. |
| הפעלת Backup for GKE API | הסבר על הפעלת גיבוי ל-GKE. |
| תכנון קבוצה של גיבויים | במאמר הזה מוסבר איך ליצור תוכנית גיבוי של Backup for GKE, שמשמשת לגיבוי עומסי העבודה ב-GKE. |
| רישום אשכול ב- Cloud de Confiance by S3NS ל-Fleet | המאמר מסביר איך לרשום אשכול GKE ב- Cloud de Confiance by S3NSל-Fleet שלכם באמצעות Terraform. |
| התקנה של סנכרון תצורות כברירת מחדל ל-Fleet | הסבר על הגדרת סנכרון תצורות כברירת מחדל ברמת ה-Fleet לכל האשכולות החדשים. |
| ניהול משאבי הצוות בכל המכשירים | מוסבר איך להשתמש ב-סנכרון תצורות וב-Terraform כדי ליצור באופן דינמי משאבים בהיקף צוות ב-Fleet של אשכולות. |
מודולים ותוכניות לניהול של Terraform ב-GKE
מודולים ותוכניות לניהול מאפשרים לנהל באופן אוטומטי את הקצאת ההרשאות והמשאבים ב- Cloud de Confiance בקנה מידה רחב. מודול הוא קבוצה של קובצי תצורה לשימוש חוזר ב-Terraform שיוצרים הפשטה לוגית של המשאבים ב-Terraform. תוכנית לניהול היא חבילה של מודולים לשימוש חוזר שאפשר לפרוס, והיא מיישמת ומתעדת פתרון מקובע מסוים.
בטבלה הבאה מפורטים מודולים ותוכניות שקשורים ל-GKE:
| מודול או תוכנית ניהול | פרטים |
|---|---|
| terraform-google-kubernetes-engine | הגדרה של אשכולות GKE מקובעים. |
| terraform-google-gke-gitlab | התקנה של GitLab ב-GKE. |