מטרות
במדריך הזה תלמדו:
- יצירת תבנית של הגדרות מכונה ב-Compute Engine וקבוצת מופעי מכונה מנוהלים (MIG).
- קבלת שם דומיין ואישור.
- יצירת מאזן עומסים ב-HTTPS עם אישור.
- הפעלת IAP.
- בודק אם הרכישה מתוך האפליקציה פועלת.
עלויות
במדריך הזה נעשה שימוש ברכיבים של Google Cloudשחלים עליהם חיובים, כולל הרכיבים הבאים:
- Compute Engine
- 4 מכונות וירטואליות (VM)
- רשתות
- כלל העברה של מאזן עומסים גלובלי
- תנועה נכנסת (ingress)
כדי לקבל הערכת עלויות על סמך השימוש החזוי, אפשר להיעזר במחשבון עלויות.
לפני שמתחילים
לפני שמתחילים את המדריך הזה, צריך:
בוחרים או יוצרים Google Cloud פרויקט.
כניסה לדף Projectsמפעילים את החיוב בפרויקט. איך משנים הגדרות חיוב בפרויקט
שלב 1: יצירת תבנית של Compute Engine
במסוף Google Cloud , עוברים לדף Compute Engine > Create an instance template (יצירת תבנית של הגדרות מכונה) ובוחרים את הפרויקט שבו רוצים ליצור תבנית של הגדרות מכונה.
כניסה לדף Create an instance template
משתמשים בערכי ברירת המחדל, חוץ מהערכים הבאים:
- סוג מכונה:
- מיקרו (f1-micro)
- היקפי גישה:
- הגדרת גישה לכל API
- Compute Engine: קריאה בלבד
- Firewall:
- Allow HTTP traffic
- בקטע ניהול, מתחת לאוטומציה > סקריפט הפעלה, מעתיקים ומדביקים את הסקריפט הבא:
כשמסיימים לעדכן את הערכים, לוחצים על יצירה כדי ליצור את התבנית.
שלב 2: יצירת קבוצה של מופעי מכונה מנוהלים
במסוף Google Cloud , עוברים לדף Compute Engine > Create a new instance group ובוחרים את הפרויקט שבו רוצים ליצור קבוצת מופעי מכונה מנוהלים.
מעבר לדף Create an instance group
משתמשים בערכי ברירת המחדל, חוץ מהערכים הבאים:
- Name: my-managed-instance-group
- מיקום: רב-אזורי
- תבנית של הגדרות מכונה: בוחרים את תבנית של הגדרות מכונה שיצרתם בשלב 1.
- מספר המופעים: כדי לשנות את מספר המופעים, צריך קודם להשבית את ההתאמה האוטומטית לעומס.
- מצב התאמה אוטומטית לעומס: לא להתאים אוטומטית לעומס
בדיקת תקינות: בוחרים באפשרות יצירת בדיקת תקינות, ואז מזינים את הערכים הבאים:
- שם: my-health-check
- פרוטוקול: HTTP
לוחצים על שמירה והמשך כדי להשתמש בבדיקה החדשה של תקינות המערכת.
כשמסיימים לעדכן את הערכים, לוחצים על יצירה כדי ליצור את קבוצת המופעים המנוהלת (MIG).
שלב 3: מקבלים שם דומיין ואישור
כדי להשתמש במאזן העומסים עם תנועת נתונים ב-HTTPS, צריך שם דומיין ואישור חתום. אתם יכולים לרשום דומיין ב-Cloud Domains או להשתמש ברשם הדומיינים שתבחרו. לפני שממשיכים, צריך לרשום את הדומיין.
הגדרת האישור
יוצרים אישור שמזהה את האתר שלכם בפני המשתמשים. מידע על יצירת אישור מופיע במאמר שימוש באישור SSL בניהול Google.
רשות האישורים צריכה לאמת שאתם הבעלים של שם הדומיין שרשמתם. בשלבים הבאים, יוצרים מכונה וירטואלית כדי לאמת את הדומיין מול הרשות המנפיקה.
יצירת מכונה וירטואלית לאימות הבעלות על הדומיין
במסוף Google Cloud , נכנסים לדף Create an instance > Compute Engine.
משתמשים בערכי ברירת המחדל, חוץ מהערכים הבאים:
- שם: certbot-vm
- סוג המכונה: מיקרו (f1-micro)
- היקפי גישה:
- הגדרת גישה לכל API
- Compute Engine: קריאה/כתיבה
- קובץ אימג' של דיסק אתחול:
- Debian GNU/Linux 9 (stretch)
- Firewall:
- Allow HTTP traffic
- Allow HTTPS traffic
כשמסיימים לעדכן את הערכים, לוחצים על יצירה כדי ליצור את מופע המכונה הווירטואלית. שימו לב לכתובת ה-IP החיצונית של המכונה הווירטואלית שיצרתם. תצטרכו אותו בשלב הבא.
הגדרת הדומיין כך שיפנה למכונה הווירטואלית
כדי להגדיר את הדומיין כך שיצביע על המכונה הווירטואלית, צריך לבצע את השלבים הבאים כדי להגדיר רשומות A:
- נכנסים לחשבון של הדומיין אצל מארח הדומיין.
- מאתרים את הדף שבו מעדכנים את רשומות ה-DNS של הדומיין. יכול להיות שהשם של הדף הוא 'ניהול DNS', 'ניהול שרת שמות' או 'הגדרות מתקדמות'.
- משנים את רשומות הכתובת הקבועה לערכים הבאים:
- שם/מארח/כינוי: @
- ערך: כתובת ה-IP החיצונית של המכונה הווירטואלית שיצרתם כדי לאמת את הבעלות על הדומיין שלכם (כפי שמוסבר למעלה).
- TTL: ברירת המחדל של הרשם או 86400 (יום אחד).
- מחכים שרשומת ה-DNS תתעדכן. יכול להיות שיעבור עד יום אחד עד שהרשומה שהוספתם תתעדכן.
בדיקת השרת
כדי לבדוק שהשרת פועל בצורה תקינה, מבצעים את השלבים הבאים:
נכנסים לדף Compute Engine > VM Instances במסוף Google Cloud .
לדף VM instancesבקטע Connect (חיבור) של certbot-vm, לוחצים על SSH.
מריצים את הפקודות הבאות כדי להפעיל שרת אינטרנט קטן במכונת ה-VM:
mkdir web cd web echo "Hello" > index.html sudo busybox httpd -v -fבדפדפן אינטרנט, עוברים לשם הדומיין שרשמתם קודם. בדפדפן האינטרנט אמור להופיע
Hello, ובסשן ה-SSH אמורה להופיע הודעה שמכילה את... response:200. אם לא, מחכים כמה דקות וחוזרים על השלב הזה.אם הבדיקה מצליחה, מקישים על Ctrl+C כדי לעצור את שרת האינטרנט.
יצירת אישור
כדי ליצור אישור, נרשמים ב-Let's Encrypt על ידי הרצת הפקודות הבאות במכונה הווירטואלית, כאשר YOUR_DOMAIN הוא שם הדומיין שלכם, לא כולל הפרוטוקול:
sudo pkill busybox sudo apt-get install -y certbot sudo certbot certonly --standalone -d YOUR-DOMAIN
במהלך התהליך הזה, יכול להיות ש-Let's Encrypt יבקשו כתובת אימייל כדי לשלוח תזכורת כשתוקף האישור יפוג (כברירת מחדל, 3 חודשים אחרי שהוא מונפק). צריך גם להסכים לתנאים ולהגבלות של Let's Encrypt.
כשנרשמים בהצלחה, מופיעה ההודעה Congratulations! Your certificate and chain have been saved at....
הוספת האישור לפרויקט
כדי להוסיף את האישור לפרויקט, מריצים את הפקודות הבאות במכונה הווירטואלית:
sudo su cd /etc/letsencrypt/live/YOUR_DOMAIN gcloud compute ssl-certificates create my-cert --certificate=fullchain.pem --private-key=privkey.pem
אחרי שיוצרים את האישור בהצלחה, מופיעה הודעה שדומה לזו: Created
[https://www.googleapis.com/compute/v1/projects/example-project/global/sslCertificates/my-cert]
לפני שממשיכים, סוגרים את סשן ה-SSH.
שלב 4: יצירת מאזן עומסים
לפני שמתחילים בשלב הזה, צריך לוודא שסגרתם את סשן ה-SSH שהתחלתם בשלב הקודם. כשהכול מוכן, פועלים לפי השלבים הבאים כדי ליצור מאזן עומסים:
במסוף Google Cloud , עוברים לדף Network Services > Create a load balancer ובוחרים את הפרויקט שבו רוצים ליצור מאזן עומסים.
כניסה לדף 'יצירת מאזן עומסים'בקטע HTTP(S) Load Balancing, לוחצים על Start configuration.
בוחרים באפשרות From Internet to my VMs.
בדף New external Application Load Balancer שמופיע, מזינים Name (שם) למאזן העומסים.
לוחצים על Backend configuration.
בקטע Backend services & backend buckets בוחרים באפשרות Create a backend service.
מוסיפים שם לשירות לקצה העורפי, כמו
my-backend-service.
עוברים לקטע אבטחה ובוחרים באפשרות הפעלת IAP כדי לאבטח את הגישה לאפליקציות.
אי אפשר להשתמש ב-Cloud CDN וב-IAP ביחד. אם הפעלתם את Cloud CDN ואתם בוחרים להפעיל את IAP, Cloud CDN מושבת באופן אוטומטי.
לוחצים על יצירה. הדף Load balancing נטען, ומאזן העומסים החדש מוצג ברשימה של מאזני העומסים.
אחרי שמסוף Google Cloud Google Cloud מסיים ליצור את מאזן העומסים החדש, לוחצים על השם של מאזן העומסים ורושמים את כתובת ה-IP החיצונית בקטע פרטים > קצה קדמי. משתמשים בו בשלב הבא.
הגדרת הדומיין להפניה למאזן העומסים
כדי להגדיר את הדומיין כך שיפנה למאזן העומסים, צריך להגדיר רשומות A באמצעות השלבים הבאים:
- נכנסים לחשבון של הדומיין אצל מארח הדומיין.
- מאתרים את הדף שבו מעדכנים את רשומות ה-DNS של הדומיין. יכול להיות שהשם של הדף הוא 'ניהול DNS', 'ניהול שרת שמות' או 'הגדרות מתקדמות'.
- משנים את רשומות הכתובת הקבועה לערכים הבאים:
- שם/מארח/כינוי: @
- ערך: כתובת ה-IP החיצונית של מאזן העומסים שיצרתם קודם. אל תכללו את היציאה
:443ברשומת ה-DNS. - TTL: ברירת המחדל של הרשם או 86400 (יום אחד).
- מחכים שרשומת ה-DNS תתעדכן. יכול להיות שיעבור עד יום עד שהרשומה שזה עתה הוספתם תתעדכן.
- כדי לבדוק את מאזן העומסים, משתמשים בדפדפן אינטרנט כדי להיכנס לדומיין עם פרוטוקול
https://.- אם מאזן העומסים עדיין לא הוגדר, יופיעו שגיאות מסוג HTTP 502.
- כשמאזן העומסים מוכן, מופיעה ההודעה 'בקשה לא מורשית'.
הפעלה מחדש של מכונות וירטואליות
כדי לאמת בקשות מ-IAP בצורה נכונה, צריך להפעיל מחדש את מכונות ה-VM ב-MIG.
- במסוף Google Cloud , נכנסים לדף Compute Engine > Instance groups.
מעבר לדף Instance groups - לוחצים על my-managed-instance-group.
- בחלק העליון של פרטי קבוצת המופעים שמופיעים, לוחצים על הפעלה מחדש/החלפה הדרגתית.
- בדף Restart/replace instances of my-managed-instance-group (הפעלה מחדש או החלפה של מופעים של my-managed-instance-group), מגדירים את הערכים הבאים:
- פעולה: הפעלה מחדש
- מקסימום לא זמינים: 3 מתוך 3 מקרים