PracticU

Terraform Plan

בלי כתוביותעם כתוביות
PracticU › קורס Terraform - DevOps - Azure & AWS › Terraform Plan
מילון מושגים:
Terraform - כלי להגדרת תשתית כקוד, שמאפשר ליצור ולנהל משאבי ענן ותשתית בעזרת קובצי תצורה.
ענן - אספקת משאבי מחשוב כשירות דרך האינטרנט, כמו שרתים, אחסון ותוכנות, במקום להחזיק אותם מקומית.
שרת - מחשב או תוכנה שמספקים שירות למחשבים אחרים (לקוחות) ברשת, למשל אחסון קבצים, אתר אינטרנט או מסד נתונים, ומגיבים לבקשות שלהם.
כתובת IP - מספר שמזהה באופן ייחודי מכשיר ברשת מבוססת פרוטוקול IP, ומאפשר לשלוח אליו ולקבל ממנו מידע.
תחביר - אוסף הכללים של שפת תכנות הקובעים כיצד לכתוב קוד תקין. הפרתם גורמת לשגיאת תחביר.
תגית - סימון בקוד, למשל ב-HTML, שתוחם רכיב ומגדיר את תפקידו או תכונותיו. גם תווית לסימון וקיטלוג פריטים.
QA - הבטחת איכות (Quality Assurance): תחום שעוסק בבדיקת תוכנה ובתהליכים שמבטיחים שהמוצר עומד בדרישות.

Terraform Plan
מעבר ל-apply ול-destroy, יש ב-Terraform כמה פקודות שעוזרות לסדר, לבדוק ולהבין מה קורה לפני שמשנים משהו בענן. ההרצאה עוברת עליהן על אותו פרויקט בן שני שרתים.
הפקודות העיקריות
1. terraform fmt: מסדר את הקובץ ומסיר רווחים מיותרים. כשהעורך מראה עיגול לבן, הקובץ לא שמור, ולכן שומרים עם Ctrl+S. כדאי להריץ אותה תמיד, בשביל היופי.
2. terraform validate: בודק שהקובץ תקין לפני הרצה. אחרי שנמחקה שורה מבלוק output, הוא דיווח שבשורה 87 חסר value.
3. terraform plan: אוסף את המצב בענן, משווה לקובץ הרצוי ומציג תוכנית (בהדגמה שבעה אובייקטים להוספה, מסומנים בפלוס). מריצים אותו בניסויים, לפני ביצוע.
4. terraform apply -auto-approve: מריץ plan בעצמו ומבצע. בסוף מוצגים פלט של שתי כתובות IP.
5. terraform show: מציג את קובץ ה-state, המצב כפי ש-Terraform מבין אותו, עם כרטיסי רשת, כתובות IP וערכי ברירת מחדל.
6. תגיות (tags): מוסיפים בסוף הקובץ, והתוסף מייצר את הסינטקס. הן מאפשרות לחפש מכונות לפי תג. plan הראה שני שינויים, ו-apply ביצע אותם אחרי refreshing state.
7. תיקון שינוי ידני: שינוי תג בפורטל (ל-dev) הוחזר ל-QA אחרי הרצה נוספת של apply, כי הקובץ הוא המצב הרצוי.
מומלץ להריץ plan לפני apply, אך בהדגמה הדלגו כי זו סביבת מעבדה. בסוף הכל הושמד כדי לא לשלם.
אחרי ההרצאה תוכלו לשלב fmt, validate, plan ו-show בעבודה השוטפת עם Terraform.

פרקי ההרצאה: Terraform Plan

  1. 00:00

    terraform fmt לסידור הקובץ

  2. 00:39

    terraform validate לבדיקת תקינות

  3. 01:17

    תוכנית plan מהמצוי לרצוי

  4. 01:52

    terraform apply ותוצאת IP

תמלול ההרצאה: Terraform Plan

הטקסט המלא של הדקות הראשונות בהרצאה «Terraform Plan» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

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

  2. 00:11

    נשמור את השינויים, זה אומר שיש לנו עכשיו רווחים פה מיותרים ואפשר לכתוב terraform fmt, קיצור של format, ושימו לב מה קרה פה לרווחים. שמתם לב?

  3. 00:21

    זה הצטמצם חזרה. הוא סידר לי את הקובץ. עוד הפעם אני עושה כמה רווחים. כשאתם רואים עיגול לבן זה אומר שזה לא שמור. תלחצו File Save או Control S במקלדת ותראו שהעיגול הלבן נעלם.

  4. 00:33

    זה אומר שהקובץ שמור בדיסק. תריצו terraform format והוא מסדר לכם אותו מבחינת מבנה למשהו יפה ומסודר ונוח. יש גם פקודת terraform validate. לדוגמה, אם אני מוחק פה את השורה הזאת ואני שמרתי את הקובץ הזה עם Control S, terraform validate יגיד: "תקשיב, זה לא הגיוני.

  5. 00:54

    בשורה שמונים ושבע יש לך אובייקט מסוג output ואין לו שום value." אז פקודת terraform validate בודקת שהקובץ תקין לפני שעושים apply, לפני שמריצים אותו. יותר מזה, לפני הרצה עדיף לעשות plan.

  6. 01:09

    plan ייתן לנו תוכנית שטרפורם מתכוון לבצע. הוא כרגע הולך לענן, אוסף את המידע הנוכחי, משווה את זה מול קובץ הרצוי ונותן לי תוכנית איך מגיעים מהמצוי לרצוי. הוא אומר שיש שבעה דברים שצריך להוסיף, שבעה אובייקטים.

  7. 01:27

    הוא גם כותב לי עם פלוס מה הם בדיוק אותם האובייקטים. פקודת plan אני אעשה בנפרד כאשר אני עושה ניסיונות על הקובץ לראות איך הוא הבין את הפקודות שלי.

  8. 01:36

    זה כאילו לבדיקות שלי לפני שהכול מתבצע. וapply זה לבצע תכלס. בואו נריץ terraform apply -autoapprove. ניתן לו להרים מכונות באוויר. גם בapply כשהוא מבצע בפועל דברים בענן הוא לפני כן מריץ את הפקודת plan.

  9. 01:52

    הנה הוא כותב לי plan בשבע אובייקטים הוא הולך להוסיף לענן. הוא עשה את הplan ועכשיו מתחיל לבצע אותו תכלס. בואו ניתן לו כמה דקות.

  10. 02:00

    אוקיי, אני רואה פה הודעה ירוקה ו-output של שני כתובות IP. זה נראה לי ממש טוב. אין הודעות שגיאה. נעשה CLS, ננקה את המסך.

  11. 02:10

    עכשיו בואו נדבר קצת על קובץ state. זה הקובץ שיש בו את המצב הנוכחי. ככה טרפורם רואה מה יש בענן כרגע ואנחנו יכולים לראות מה יש בתוך הקובץ הזה עם פקודת terraform show.

לקורס המלא: קורס Terraform אונליין ל‑DevOps

ההרצאה הקודמת: התקנה של Visual Studio Code

ההרצאה הבאה: התקנה של AWS CLI

הרצאות קשורות מקורסים אחרים

  • מבוא Execution Plan
  • תוכנית בדיקה - Test Plan

קורסים נוספים במסלול

  • קורס AWS - ניהול מכונה וירטואלית בענן
  • קורס קוברנטיקס - Kubernetes
  • קורס Docker - עם Swarm Cluster
  • קורס DevOps - Ansible
  • קורס PowerShell
  • קורס Git ו-GitHub עם Visual Studio