« לעמוד הראשי

היכרות עם Terraform Cloud

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

מיצ'ל האשימוטו, אחד המייסדים של חברת HashiCorp, מסביר בסרטון הבא את היסודות של Terraform ולמה נועד Terraform Cloud .

 

תרגום (ו- Transcription):

טיפ: אפשר לפתוח את הסרטון בחלון נפרד (בחצי מסך), ולצפות בו לצד התרגום.

היום אני הולך להסביר מה זה Terraform Cloud, איך זה מועיל ואיך אתם יכולים להשתמש בו בסביבת Terraform שיתופית.

הדרך בה Terraform פועלת היום היא שאתם מורידים את Terraform ; אתם מקבלים Terraform במחשב שלך ואז, כאשר אתם מפעילים את Terraform, הוא מדבר ישירות עם ספקי הענן (cloud providers). ייתכן שיש לך AWS . או Azure. או שמדובר ב- provider כלשהו ממאות הספקים שתומכים ב- Terraform.

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

קובץ זה הוא האופן שבו Terraform מיישב בין מה שיצרת לבין מה שאתה רוצה. אחרת, Terraform לא היה יודע אם ליצור משהו או לעדכן משהו שכבר קיים. קובץ ה- state תמיד ישנו.

terraform state file

State file (on-premises Terraform)

בסביבת SaaS זה מוסתר מהמשתמש. אם אתה משתמש בכלי ניהול תשתית שמתארח, זה יכול להיות מאוחסן במסד הנתונים ולעולם לא תראה אותו. זה אחד הדברים הראשונים שאנו מתייחסים אליהם עם Terraform Cloud.

מה זה Terraform Cloud ?

Terraform Cloud הוא פתרון SaaS שאנו תומכים בו – שבמקום זאת, כאשר אתה מפעיל את Terraform אתה עדיין יכול להריץ אותו על המחשב המקומי שלך, אך כעת הוא שומר ומאחזר את קובץ ה- state מ- Terraform Cloud – אשר פועל מכאן:

state file terraform cloud

State file (Terraform Cloud)

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

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

תכונות שיתוף פעולה ושליטה של Terraform Cloud

בנוסף ל- state בענן הנ"ל, ישנם מספר יתרונות נוספים ב- Terraform Cloud באיזורים אחרים, המאפשרים דברים כמו ריצות ממקום מרכזי; אישורי plansועוד. זה משנה את צורת העבודה כפי שהיא ב-on-prem — כך שבמקום לדבר ישירות עם ספקי הענן , מדברים במקום זאת עם Terraform Cloud.

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

היתרון הוא שיש לך היסטוריה מלאה כאן של כל הריצות שאי פעם קרו. Terraform מבטיח שרק ריצה אחת תתרחש בכל פעם – ותוכלו לקבל אישורים. לכן, אם Alice מגישה תוכנית לשינוי תשתית, Bob צריך לאשר אותה לפני שהיא עוברת.

אתה יכול לראות כיצד העבודה בפתרון SaaS סביב Terraform יכולה לפשט ולהסתיר הרבה פרטים פנימיים שקשה לעשות עם Terraform on-prem. באופן כללי, היתרון סביב זה הוא בנוגע לעבודה משותפת (collaboration).

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

זה עושה סדר ונקיון: יש בקרת גישה (access control) מול ה- state file ; יש בקרת גישה מול הענן; יש תיעוד היסטוריה – ואתם עדיין שומרים על אותה זרימת עבודה מוכרת של Terraform: זה עדיין Terraform Plan, וכמובן Terraform Apply, בדיוק כמו שהייתם עושים בסביבת on-premises / self-hosted. זה פשוט ישתמש אוטומטית ב- Terraform Cloud בחלק האחורי.

זהו פתרון "Terraform ענן".

terraform cloud whiteboard

חברת ALM-Toolbox מייצגת רשמית את חברת HashiCorp (יצרנית Terraform ומוצרים נוספים) בישראל ובאירופה, ומציעה יעוץ, רשיונות Enterprise / Cloud , הדרכות ושירותים מנוהלים.

לפרטים נוספים פנו אלינו: hashicorp@almtoolbox.com או טלפונית 072-240-5222