אם אתה צריך להקים את האשכול של שירות Amazon EKS (Amazon Elastic Kubernetes Service) עם Terraform, אתה במזל. באמצעות מודול Terraform EKS וכל המשאבים הנדרשים האחרים, אתה יכול ליצור תצורת Terraform אחת וליצור אשכול AKS עם קוד.
שירות Amazon EKS הוא שירות ניהולי להרצת Kubernetes על AWS מבלי להתקין, להפעיל ולתחזק את האשכול שלך. בניית אשכול EKS עם Terraform מאפשרת לך ליצור משאבים במהירות, ביעילות ובגישה אוטומטית.
במדריך הזה, תלמד כיצד לבנות ולהפעיל תצורת Terraform כדי לבנות אשכול EKS עם Terraform שלב אחרי שלב. בואו נתחיל!
תנאים מוקדמים
הפוסט הזה יהיה מדריך שלב אחרי שלב. אם ברצונך לעקוב, וודא שיש לך את הבאים במקום:
- חשבון Amazon Web Service (AWS).
- A code editor – Even though you can use any text editor to work with Terraform configuration files, you should consider Visual Studio (VS) Code as it understands the HCL Terraform language well.
- Terraform – מדריך זה ישתמש ב- Terraform v0.14.9 הרץ על Ubuntu 18.04.5 LTS, אך כל מערכת הפעלה עם Terraform צריכה לעבוד.
בניית קובץ התצורה של Terraform עבור אשכול AWS EKS
Terraform הוא כלי לקוד כמתש ייבנה, ישנו, ויהיה לו גרסאות של התשתית בצורה בטוחה ויעילה. Terraform משתמש בקבצי הגדרת שונים. כל קובץ נכתב בפורמט טקסט פשוט (.tf) או פורמט JSON (.tfjson).
בואו ניצור קובץ הגדרת Terraform שיבנה אשכול AKS מאפס בעת הפעלה.
1. פתחו טרמינל.
2. צרו תיקייה בשם ~/terraform-eks-cluster-demo, ואז שנו (cd
) את תיקיית העבודה לתיקייה זו. בתיקייה זו יתווספו כל קבצי התצורה שתעבדו עליהם.
3. לאחר מכן, פתחו את עורך הקוד האהוב עליכם והעתיקו/הדביקו את ההגדרה הבאה, ושמרו אותה בקובץ בשם main.tf בתוך התיקייה ~/terraform-eks-cluster-demo. קובץ זה, main.tf, הוא ההגדרה של Terraform לאשכול AKS.
הקובץ main.tf מכיל את כל המשאבים הדרושים לקביעת אשכול EKS:
- תפקיד ניהול זה של AWS Identity and Access Management (IAM) (
terraformekscluster
) – משאב זה ינוהל על ידי Amazon EKS ויעשה קריאות לשירותים אחרים של AWS כגון AWS S3, CloudWatch, וכו', מבעד לך לנהל את המשאבים שאתה משתמש בהם עם השירות. - קבוצת אבטחת EC2 של AWS (
resource "aws_security_group" "eks-cluster"
) – מאפשר תנועה נכנסת ויוצאת של רשת מהערכת AWS EKS. תפתח קבוצת אבטחה בשםSG-eks-cluster
מצורפת באמצעות מזהה VPC, מאפשרת לכל התנועה לזרום החוצה או הפנימה מהאשכול.0.0.0.0/0
הוא כתובת ה-IP של האינטרנט. - אשכול EKS (
terraformEKScluster
) – אשכול EKS זה יהיה בגרסה 1.19. - תפקיד IAM עבור צמתי EKS לבצע קריאות לשירותים אחרים של AWS (
eks-node-group
). תפקיד זה מחובר עם מדיניות שמאפשרת להניח את תעודות האבטחה הזמניות על המקרה כדי לגשת אל משאבי AWS אחרים. - קבוצת צמתי אשכול EKS (
node_group1
) – משאב זה מגדיר את מספר הצמתים שבהם יהיה לאשכול באמצעות התכונהscaling_config
.
4. יצירת קובץ נוסף ב-~/terraform-eks-cluster-demo ושם קרא לו provider.tf והדבק את התוכן למטה. קובץ הספק מגדיר ספקים כמו AWS, Oracle או Azure, וכו ', כך ש-Terraform יכול להתחבר עם השירותים המענינים בעניין.
המדריך ייצור משאבים באזור us-east-2.
5. וודא שכל הקבצים הדרושים מטה נמצאים בתיקייה על ידי הרצת הפקודה tree
.

יצירת אשכול AWS EKS עם מודול Terraform EKS
כעת שיש לך את קובץ התצורה של Terraform וקבצי המשתנים מוכנים לשימוש, הגיע הזמן להפעיל את Terraform וליצור את האשכול. כדי לספק לאשכול AKS, כמו לכל קונפיגורציה אחרת של Terraform, Terraform משתמשת בשלוש פקודות (terraform init → terraform plan → terraform apply ).
בואו נתחיל לעבור דרך כל שלב כעת.
1. פתח טרמינל ונווט לתיקייה ~/terraform-eks-cluster-demo
. cd ~/terraform-eks-cluster-demo
2. הרץ את הפקודה terraform init
באותו ספרייה. הפקודה terraform init
מאתחלת את התוספים והספקים הדרושים לעבודה עם משאבים.
אם הכל מתרחש כצפוי, אתה אמור לראות את ההודעה הפעלת Terraform הושלמה בהצלחה בפלט, כפי שמוצג למטה.

3. כעת, הפעל את הפקודה terraform plan
. הפעלת terraform plan
אינה חובה, אך מומלץ כדי לוודא שהתחבורת הקבצים שלך נכונה ומספקת לך תיק מקדימה של המשאבים שיושקלו בתשתיות שלך.
במקרה של הצלחה, אתה אמור לראות הודעה דומה ל-תוכנית: "X" להוסיף, "Y" לשנות או "Z" להשמיד בפלט.

4. לאחר מכן, הפעל את terraform apply
כדי להסיר את "גלגלי האימון" ולהפעיל את Terraform ליצירת האשף AKS. הפעלת terraform apply
קוראת לכל קובץ התצורה (*.tf) בתיקייה הנוכחית כדי להפקיד קובץ מצב שנשלח ל-AWS לבניית האשף EKS ורכיבים נוספים.
ב- AWS יש תעריף של $0.10 לשעה עבור כל אשף EKS. הקפידו להשמיד כל אשף בדיקה שיצרתם פעם שיצרתם!

אימות ה-AWS EKS Cluster
בנקודה זו, אתה אמור לקבל אשף AKS בתפקוד, אבל נוודא לוודא שזה נכון בAWS Management Console.
1. פתח את דפדפן האינטרנט האהוב עליך, נווט ל- AWS Management Console והתחבר.
2. לחץ על סרגל החיפוש בחלק העליון, חפש EKS, ולחץ על פריט תפריט של Elastic Kubernetes Service. אתה אמור לראות את האשף EKS בשם terraformEKScluster.


3. לחץ על הגדרות, ואתה צריך לראות כל רכיב שנוצר בהצלחה כפי שהגדרת בתצורת ה-Terraform, כפי שמוצג למטה.



מסקנה
במדריך זה, למדת כיצד להשתמש ב-Terraform כדי להפיק את אשכולת AWS EKS ואת רכיביה. אתה מוכן כעת להשתמש באשכול EKS הזה ולהפיק אפליקציות!
אילו אפליקציות אתה מתכנן להפיק על אשכול החדש שלך?