PracticU

יצירת מכונה וירטואלית בענן
עם Terraform
פרויקט NodeJS

בלי כתוביותעם כתוביות
PracticU › קורס Terraform - DevOps - Azure & AWS › יצירת מכונה וירטואלית בענן עם Terraform פרויקט NodeJS
מילון מושגים:
Terraform - כלי להגדרת תשתית כקוד, שמאפשר ליצור ולנהל משאבי ענן ותשתית בעזרת קובצי תצורה.
Node.js - סביבת ריצה שמאפשרת להריץ קוד JavaScript מחוץ לדפדפן, בעיקר בצד השרת.
AWS - שירותי הענן של אמזון (Amazon Web Services), המספקים שרתים, אחסון, מסדי נתונים ושירותים נוספים לפי שימוש.
VPC - רשת וירטואלית פרטית ומבודדת בתוך הענן, שבה הלקוח שולט בכתובות, בתת-רשתות ובכללי הגישה.
מעבד - יחידת העיבוד המרכזית של המחשב, שמבצעת את הפקודות של התוכניות ומנהלת את החישובים.
EC2 - שירות של AWS להפעלת שרתים וירטואליים בענן לפי דרישה ולפי שימוש.
SSH - פרוטוקול לחיבור מרוחק ומוצפן למחשב, בעיקר לשרתי Linux, לצורך ניהול דרך שורת הפקודה.

יצירת מכונה וירטואלית בענן עם Terraform - פרויקט NodeJS

בשיעור זה יוצרים מכונה וירטואלית בענן של AWS בעזרת Terraform, שורה אחר שורה, משתמשים ב-VPC מוכן במקום ליצור חדש, מביאים את הקוד מהתיעוד הרשמי, מוסיפים כתובת IP ציבורית ולומדים למה עדיין לא אפשר להתחבר למכונה.
נושאי הסיכום המוצגים בשיעור:
1. המטרה של הסרטון: בסרטון זה יוצרים מכונה וירטואלית בענן של AWS בעזרת Terraform, וכותבים את כל הפקודות בעצמנו ומבינים כל שורה מה היא עושה.
2. שימוש ב-VPC מוכן: מוחקים מהדוגמה את היצירה של ה-VPC, כי אם מייצרים VPC חדש צריך ליצור גם ראוטר וטבלאות ניתוב, ובמקום זאת משתמשים ב-VPC המוכן שמגיע בכל אזור, ומוחקים את יצירתו מקובץ ה-provider.
3. הבאת הקוד מהתיעוד הרשמי: מחפשים בגוגל את המשאב של המכונות הווירטואליות של AWS ב-Terraform, מדלגים על תשובות AI ומגיעים לרג'יסטרי הרשמי של Terraform מבית HashiCorp, ומעתיקים משם את הדוגמה הקטנה שבה שם ה-image וסוג המכונה לפי זיכרון ומעבד, שהיא מכונה וירטואלית חינמית.
4. הפרדה לקובץ נפרד: אפשר היה להשאיר הכל בקובץ אחד אבל מעדיפים להפריד, ולוקחים את הקוד של המכונה הווירטואלית לקובץ חדש בשם EC2.tf בתוך תיקיית Terraform, ושימו לב שמבחינת Terraform זה לא משנה כי הוא לוקח את כל הקבצים עם סיומת tf ובונה מהם קובץ אחד גדול, ומוסיפים למכונה תגית מזהה.
5. בדיקה עם TF plan: מריצים TF plan ורואים שהוא באמת עומד ליצור את האובייקט, מה שמוכיח שהקוד עובד.
6. הוספת כתובת IP ציבורית: מתוך ה-arguments בתיעוד רואים שאפשר להוסיף את ההקצאה של כתובת IP ציבורית, ומגדירים זאת כ-true, כדי שיהיה אפשר להתחבר למכונה מהאינטרנט ולא רק כתובת פנימית, והפלאגין מזהה שגיאות כתיב ומציג אותן באדום, למשל ערך שגוי, מה שמקל מאוד על הכתיבה.
7. למה עדיין לא אפשר להתחבר: אפשר לעשות apply והמכונה תיווצר, אבל עדיין לא נוכל להתחבר אליה, כי כדי להיכנס למכונת לינוקס צריך SSH עם תעודה דיגיטלית, ועדיין אין תעודה, ובסרטון הבא יוצרים את התעודה, ובינתיים יצרנו מכונה וירטואלית עם כתובת אינטרנטית אבל עדיין לא משויכים אליה מפתחות לביצוע לוגין.
סיכום:
בשיעור זה התחלנו להקים מכונה וירטואלית ב-AWS בקוד Terraform משלנו, עבדנו מול ה-VPC המוכן כדי להימנע מיצירת ראוטר וטבלאות ניתוב, לקחנו את הבלוק של המכונה מהתיעוד הרשמי, הפרדנו אותו לקובץ משלו והוספנו תגית וכתובת IP ציבורית, בדקנו עם TF plan שהכל תקין, והבנו שלפני ההתחברות למכונה נצטרך ליצור מפתחות ותעודה דיגיטלית בשיעור הבא.
SR13874HE

פרקי ההרצאה: יצירת מכונה וירטואלית בענן עם Terraform פרויקט NodeJS

  1. 00:00

    מחיקת יצירת ה-VPC מהדוגמה

  2. 00:41

    מציאת ה-resource הרשמי ב-registry

  3. 01:16

    בדיקת הקוד עם TF plan

  4. 01:52

    הוספת תגית וכתובת IP ציבורית

תמלול ההרצאה: יצירת מכונה וירטואלית בענן עם Terraform פרויקט NodeJS

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

  1. 00:02

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

  2. 00:14

    קודם כל אני רוצה למחוק פה את היצירה של ה-VPC, כי אם אני אצור VPC חדש כמו שהם נתנו לנו פה בדוגמה, אז נצטרך ליצור גם ראוטר וטבלאות ניתוב. נשתמש ב-VPC מוכן שמגיע בכל region.

  3. 00:29

    בקובץ של הפרובידר מחקתי למטה את היצירה של ה-VPC. בואו נלך לגוגל ונרשום AWS EC2, שזה המכונות הווירטואליות, ואני צריך Terraform resource.

  4. 00:42

    AI פה נותן לי איזושהי דוגמה. אנחנו נדלג על AI ונגיע ל-registry הרשמי של Terraform. אני לוחץ על זה ומגיע לתיעוד הרשמי של Terraform של HashiCorp.

  5. 00:56

    אני רואה בדוגמה הקטנה שהם נותנים רק את השם של ה-image. אני רואה שזה Linux וסוג המכונה מבחינת הזיכרון והמעבד T3 micro, שזאת מכונה וירטואלית חינמית.

  6. 01:08

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

  7. 01:22

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

  8. 01:33

    בתוך תיקיית Terraform אני עושה new file. אני אקרא לו EC2 TF ובקובץ EC2 TF אני אשים את כל מה שקשור למכונות וירטואליות ל-EC2. שימו לב שמבחינת Terraform זה לא משנה לו, כי הוא לוקח את כל הקבצים עם סיומת TF ובונה מהם קובץ אחד גדול.

  9. 01:52

    ניתן איזה תגית Practicu Node.js server. בואו נראה בתיעוד מה עוד אפשר להוסיף לכאן חוץ מאיזה image וכמה חומרה לתת. יש לנו פה arguments. אני רואה פה associate public IP address, לתת כתובת IP ציבורית.

  10. 02:10

    או, זה רעיון מצוין. אני רוצה כתובת IP שאני אוכל להתחבר למכונה

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

ההרצאה הקודמת: הגדרת tf = terraform - פרויקט NodeJS

ההרצאה הבאה: יצירת מפתחות הצפנה ב-AWS - פרויקט NodeJS

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

  • יצירת מכונה וירטואלית - לינוקס בענן
  • יצירת מכונה וירטואלית
  • יצירת מכונה וירטואלית ב-AZURE
  • יצירת מכונה וירטואלית - שרת 2022

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

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