הקצאת משאבים של Artifact Registry באמצעות Terraform

‫HashiCorp Terraform הוא כלי מסוג תשתית כקוד (IaC), שבעזרתו אפשר להקצות ולנהל תשתית ענן. ‫Terraform מספקת פלאגינים שנקראים ספקים, שמאפשרים לכם ליצור אינטראקציה עם ספקי ענן וממשקי API אחרים. אתם יכולים להשתמש בספק Terraform ל- Google Cloud כדי להקצות ולנהל משאבים של Google Cloud , כולל Artifact Registry.

במאמר הזה מוסבר איך להשתמש ב-Terraform עם Artifact Registry. הוא כולל מבוא לאופן הפעולה של Terraform וכמה משאבים שיעזרו לכם להתחיל להשתמש ב-Terraform עם Google Cloud. בנוסף, תמצאו קישורים למסמכי העזר של Terraform בנושא Artifact Registry, דוגמאות קוד ומדריכים לשימוש ב-Terraform כדי להקצות משאבים של Artifact Registry.

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

איך Terraform עובד

ל-Terraform יש תחביר הצהרתי ומבוסס-הגדרות, שבו אפשר להשתמש כדי לתאר את התשתית שרוצים להקצות בפרויקט Google Cloud . אחרי שיוצרים את התצורה הזו בקובץ תצורה אחד או יותר של Terraform, אפשר להשתמש ב-Terraform CLI כדי להחיל את התצורה הזו על המשאבים של Artifact Registry.

השלבים הבאים מסבירים איך Terraform פועל:

  1. אתם מתארים את התשתית שאתם רוצים להקצות בקובץ תצורה של Terraform. אין צורך לכתוב קוד שמתאר איך להקצות את התשתית. ‫Terraform מקצה את התשתית בשבילכם.
  2. מריצים את הפקודה terraform plan, שמעריכה את ההגדרות ומפיקה תוכנית ביצוע. אפשר לבדוק את התוכנית ולבצע שינויים לפי הצורך.
  3. מריצים את הפקודה terraform apply, שמבצעת את הפעולות הבאות:

    1. הוא מקצה את התשתית על סמך תוכנית הביצוע על ידי הפעלת ממשקי ה-API המתאימים של Artifact Registry ברקע.
    2. הפקודה יוצרת קובץ מצב של Terraform, שהוא קובץ JSON שממפה את המשאבים בקובץ ההגדרות למשאבים בתשתית בעולם האמיתי. ‫Terraform משתמש בקובץ הזה כדי לשמור תיעוד של המצב האחרון של התשתית, וכדי לקבוע מתי ליצור, לעדכן ולמחוק משאבים.
    3. כשמריצים את הפקודה terraform apply, ‏ Terraform משתמשת במיפוי שבקובץ המצב כדי להשוות בין התשתית הקיימת לבין הקוד, ומבצעת עדכונים לפי הצורך:

      • אם אובייקט משאב מוגדר בקובץ התצורה, אבל לא קיים בקובץ המצב, Terraform יוצר אותו.
      • אם אובייקט משאב קיים בקובץ המצב, אבל יש לו הגדרה שונה מזו שבקובץ ההגדרות, Terraform מעדכן את המשאב כך שיתאים לקובץ ההגדרות.
      • אם אובייקט משאב בקובץ המצב תואם לקובץ התצורה, Terraform לא משנה את המשאב.

משאבים של Terraform ל-Artifact Registry

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

בטבלה הבאה מפורטים המשאבים של Terraform שזמינים ל-Artifact Registry:

שירות משאבי Terraform מקורות נתונים
Artifact Registry
  • google_artifact_registry_docker_image
  • google_artifact_registry_repository
  • google_artifact_registry_repository_iam_policy
  • מדריכים מבוססי Terraform ל-Artifact Registry

    בטבלה הבאה מפורטים מדריכים ומדריכים ליצירת Terraform ל-Artifact Registry:

    מדריך פרטים
    יצירת מאגר רגיל באמצעות Terraform במדריך הזה נסביר איך ליצור מאגר במצב רגיל באמצעות Terraform.
    יצירת מאגר מרוחק באמצעות Terraform במדריך הזה מוסבר איך ליצור מאגר במצב מרוחק באמצעות Terraform.
    יצירת מאגר במצב וירטואלי באמצעות Terraform במדריך הזה נסביר איך ליצור מאגר במצב וירטואלי באמצעות Terraform.

    מודולים ותוכניות לניהול של Terraform ב-Artifact Registry

    מודולים ותוכניות לניהול מאפשרים לנהל באופן אוטומטי את הקצאת ההרשאות והמשאבים ב- Google Cloud בקנה מידה רחב. מודול הוא קבוצה של קובצי תצורה לשימוש חוזר ב-Terraform שיוצרים הפשטה לוגית של המשאבים ב-Terraform. תוכנית לניהול היא חבילה של מודולים לשימוש חוזר שאפשר לפרוס, והיא מיישמת ומתעדת פתרון מקובע מסוים.

    בטבלה הבאה מפורטים מודולים ותוכניות שקשורים ל-Artifact Registry:

    מודול או תוכנית ניהול פרטים
    artifact-registry יצירה וניהול של מאגרי Artifact Registry
    secure-cicd דוגמה ליצירת צינור מאובטח של CI/CD ב- Google Cloud
    gcloud הפעלת פקודות ב-CLI של gcloud בתוך Terraform

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