מטרות
- פריסת כמה קבוצות אזוריות של מופעי מכונה מנוהלים ב-Compute Engine עם הפעלה של שינוי גודל אוטומטי.
- יוצרים מאזן עומסים חוצה אזורים.
- יצירת תנועת בדיקה מאזורים שונים ברחבי העולם.
- אפשר להשתמש בGoogle Cloud מסוף כדי לראות איך מאזן העומסים מנתב בקשות ואיך קבוצות המופעים מבצעות התאמה אוטומטית לעומס כדי לעמוד בביקוש.
עלויות
במדריך הזה נעשה שימוש ברכיבים של Google Cloud שכרוך בתשלום, כולל:- Compute Engine
לפני שמתחילים
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
ארכיטקטורה של אפליקציות
האפליקציה כוללת את הרכיבים הבאים של Compute Engine:
- תבנית של הגדרות מכונה: תבנית שמשמשת ליצירת כל מכונה בקבוצות המכונות.
- קבוצות של מכונות: כמה קבוצות של מכונות שמתאימות את עצמן לעומס באופן אוטומטי על סמך תעבורת הנתונים הנכנסת.
- מאזן עומסים: מאזן עומסים מסוג HTTP שמפיץ את התנועה בין קבוצות המופעים.
- מופעים: כמה מופעים של בדיקות כדי ליצור טראפיק לבדיקה מחלקים שונים בעולם.

הגדרת שירות האינטרנט
יצירת קבוצות של מופעי מכונה
המסוף
יוצרים רשת לקבוצות של מופעי מכונה.
נכנסים לדף VPC networks במסוף Google Cloud .
לוחצים על יצירת רשת VPC.
מגדירים את Name לערך
fortressnet.מגדירים את מצב יצירת רשתות משנה לאוטומטי.
לוחצים על יצירה בתחתית הדף.
יוצרים כלל לחומת האש של הרשת. הכלל הזה יאפשר את כל בקשות ה-HTTP שנשלחות למופעים שלכם.
נכנסים לדף Firewall rules במסוף Google Cloud .
לוחצים על יצירת כלל לחומת האש.
מגדירים את Name לערך
fortressnet-allow-http.בשדה רשת, בוחרים באפשרות
fortressnet.בקטע יעדים בוחרים באפשרות
All instances in the network.מגדירים את Source IPv4 ranges לערך
0.0.0.0/0.בקטע Protocols and ports (פרוטוקולים ויציאות), בוחרים באפשרות Specified protocols and ports (פרוטוקולים ויציאות שצוינו), מסמנים את תיבת הסימון tcp ומזינים
80.לוחצים על יצירה.
יוצרים תבנית של הגדרות מכונה. כוללים סקריפט לטעינה בזמן ההפעלה שמפעיל שרת אינטרנט פשוט של Apache בכל מופע.
נכנסים לדף Instance templates במסוף Google Cloud .
לוחצים על Create instance template.
מגדירים את Name לערך
fort-template.ב-Machine configuration, בוחרים באפשרות
e2-micro(2 vCPU, 1 GB memory).בקטע אפשרויות מתקדמות, מרחיבים את Networking (רשת) ומבצעים את הפעולות הבאות:
- בקטע Network interfaces (ממשקי רשת), מרחיבים את ממשק הרשת כדי לערוך אותו.
- בקטע רשת, בוחרים באפשרות
fortressnet.
בקטע Management, בשדה Automation, מזינים את סקריפט לטעינה בזמן ההפעלה הבא:
apt update && apt -y install apache2
לוחצים על יצירה.
יוצרים כמה קבוצות אזוריות של מופעי מכונה מנוהלים באמצעות תבנית של הגדרות מכונה. מגדירים התאמה אוטומטית לעומס לכל קבוצת מופעים.
נכנסים לדף Instance groups במסוף Google Cloud .
לוחצים על יצירת קבוצת מופעים כדי ליצור קבוצה חדשה של מופעי מכונה מנוהלים.
בוחרים באפשרות New managed instance group (stateless) (קבוצת מופעי מכונה מנוהלים חדשה (בלי שמירת מצב)).
מגדירים את Name לערך
us-central1-pool.בשדה תבנית של הגדרות מכונה, בוחרים באפשרות
fort-template.בשדה מיקום, בוחרים באפשרות אזורים מרובים.
בשדה אזור, בוחרים באפשרות
us-central1. בשדה אזורים, משאירים את הערכים המוגדרים מראש.בקטע מצב שינוי גודל אוטומטי, בוחרים באפשרות מופעל: הוספה והסרה של מופעים לקבוצה.
מגדירים את מספר המופעים המינימלי ל-
1.מגדירים את מספר המופעים המקסימלי ל-
5.בקטע אותות התאמה אוטומטית לעומס, עורכים את ברירת המחדל (CPU utilization) ומגדירים את סוג האות ל-ניצול איזון עומסי HTTP.
מגדירים את היעד לניצול איזון העומסים ב-HTTP לערך
80.לוחצים על סיום.
לוחצים על יצירה. בתיבת דו-שיח מוצגת ההודעה שצריך גם להקצות את קבוצת המכונות לשירות קצה עורפי של מאזן עומסים מסוג HTTP.
בתיבת הדו-שיח לאישור, לוחצים על אישור. אחרי שיוצרים את כל קבוצות המופעים, אפשר להגדיר את מאזן העומסים.
חוזרים על השלבים האלה כדי ליצור עוד שתי קבוצות של מופעים עם השינויים הבאים:
- יוצרים קבוצה עם שם בתור
europe-west1-poolואזור בתורeurope-west1. - יוצרים קבוצה עם שם בתור
asia-east1-poolואזור בתורasia-east1.
- יוצרים קבוצה עם שם בתור
(אופציונלי) מוודאים שהמופעים תקינים ומשרתים תעבורת HTTP. בודקים את כתובת ה-IP החיצונית של מכונה אחת או יותר. יכול להיות שתצטרכו להמתין דקה עד שתהליך ההפעלה של המכונות יסתיים.
נכנסים לדף VM instances במסוף Google Cloud .
מוודאים שלכל מכונה פעילה יש סימן וי ירוק בעמודה סטטוס לצד השם של קבוצת המכונות.
מעתיקים את כתובת ה-IP החיצונית של מופע ומדביקים אותה בדפדפן אינטרנט.
אמור להופיע דף האינטרנט 'Apache2 Debian Default Page'.
אם זה לא עובד, כדאי לחכות כמה רגעים.
gcloud
יוצרים רשת לקבוצות של מופעי מכונה.
gcloud compute networks create fortressnet --subnet-mode auto
יוצרים כלל לחומת האש של הרשת. הכלל הזה יאפשר את כל בקשות ה-HTTP שנשלחות למופעים שלכם.
gcloud compute firewall-rules create fortressnet-allow-http \ --network fortressnet \ --allow tcp:80יוצרים תבנית של הגדרות מכונה. כוללים סקריפט לטעינה בזמן ההפעלה שמפעיל שרת אינטרנט פשוט של Apache בכל מופע.
gcloud compute instance-templates create fort-template \ --machine-type e2-micro \ --network fortressnet \ --metadata startup-script='apt update && apt -y install apache2'יוצרים כמה קבוצות אזוריות של מופעי מכונה מנוהלים באמצעות תבנית של הגדרות מכונה. מגדירים התאמה אוטומטית לעומס לכל קבוצת מופעים.
gcloud compute instance-groups managed create us-central1-pool \ --region us-central1 \ --template fort-template \ --size 1 gcloud compute instance-groups managed set-autoscaling us-central1-pool \ --region us-central1 \ --min-num-replicas 1 \ --max-num-replicas 5 \ --scale-based-on-load-balancing \ --target-load-balancing-utilization .8gcloud compute instance-groups managed create europe-west1-pool \ --region europe-west1 \ --template fort-template \ --size 1 gcloud compute instance-groups managed set-autoscaling europe-west1-pool \ --region europe-west1 \ --min-num-replicas 1 \ --max-num-replicas 5 \ --scale-based-on-load-balancing \ --target-load-balancing-utilization .8gcloud compute instance-groups managed create asia-east1-pool \ --region asia-east1 \ --template fort-template \ --size 1 gcloud compute instance-groups managed set-autoscaling asia-east1-pool \ --region asia-east1 \ --min-num-replicas 1 \ --max-num-replicas 5 \ --scale-based-on-load-balancing \ --target-load-balancing-utilization .8(אופציונלי) מוודאים שהמופעים תקינים ומשרתים תעבורת HTTP. בודקים את כתובת ה-IP החיצונית של מכונה אחת או יותר. יכול להיות שתצטרכו להמתין דקה עד שתהליך ההפעלה של המכונות יסתיים.
מציגים רשימה של המופעים.
gcloud compute instances list
בעמודה
STATUS, מוודאים שהמכונות הןRUNNING.כדי לבדוק מופע, שולחים שאילתה לכתובת ה-IP שלו בעמודה
EXTERNAL_IP.curl http://EXTERNAL_IP | head
אמור להופיע טקסט HTML, כולל השורה
<title>Apache2 Debian Default Page: It works</title>.אם זה לא עובד, כדאי לחכות כמה רגעים.
הגדרת מאזן העומסים
מאזן העומסים יפיץ את בקשות הלקוחות בין כמה שרתים עורפיים.
המסוף
בחירת סוג מאזן העומסים
נכנסים לדף Load balancing במסוף Google Cloud .
- לוחצים על Create load balancer (יצירת מאזן עומסים).
- בקטע Type of load balancer, בוחרים באפשרות Application Load Balancer (HTTP/HTTPS) ולוחצים על Next.
- בקטע Public facing or internal (פנימי או חיצוני), בוחרים באפשרות Public facing (external) (חיצוני) ולוחצים על Next (הבא).
- לפריסה גלובלית או פריסה באזור יחיד, בוחרים באפשרות הכי מתאים לעומסי עבודה גלובליים ולוחצים על הבא.
- בקטע Load balancer generation (דור מאזן העומסים), בוחרים באפשרות Global external Application Load Balancer (מאזן עומסים גלובלי חיצוני של אפליקציות) ולוחצים על Next (הבא).
- לוחצים על Configure (הגדרה).
הגדרה בסיסית
- מגדירים את שם מאזן העומסים כ-
fortressnet-balancer.
הגדרת הקצה העורפי
- בדף Create global external Application Load Balancer, לוחצים על Backend configuration.
- בתפריט הנפתח Create or select backend services & backend buckets בוחרים באפשרות שירותי קצה עורפי ואז באפשרות יצירת שירות קצה עורפי. תיבת הדו-שיח Create Backend Service (יצירת שירות קצה עורפי) תוצג.
- מגדירים את Name של שירות לקצה העורפי לערך
fortressnet-backend-service. - בתיבת הדו-שיח New backend, מגדירים את Instance group לערך
asia-east1-pool. - בקטע מצב איזון, בוחרים באפשרות קצב.
- מגדירים את הבקשות המקסימליות לשנייה ל-
100בקשות לשנייה לכל מופע. - לוחצים על סיום.
- לוחצים על הוספת קצה עורפי.
- בתיבת הדו-שיח New backend, מגדירים את Instance group לערך
europe-west1-pool. - בקטע מצב איזון, בוחרים באפשרות קצב.
- מגדירים את הבקשות המקסימליות לשנייה ל-
100בקשות לשנייה לכל מופע. - לוחצים על סיום.
- לוחצים על הוספת קצה עורפי.
- בתיבת הדו-שיח New backend, מגדירים את Instance group לערך
us-central1-pool. - בקטע מצב איזון, בוחרים באפשרות קצב.
- מגדירים את הבקשות המקסימליות לשנייה ל-
100בקשות לשנייה לכל מופע. - לוחצים על סיום.
- בקטע בדיקת תקינות, בוחרים באפשרות יצירת בדיקת תקינות.
- מגדירים את Name לערך
http-basic-check. - בשדה פרוטוקול, בוחרים באפשרות
HTTP. - מגדירים את Port לערך
80. - לוחצים על שמירה והמשך.
- לוחצים על יצירה.
כללים של מארח ונתיב
- בחלונית הימנית של הדף Create global external Application Load Balancer (יצירת איזון עומסים חיצוני גלובלי של אפליקציות), לוחצים על Host
and path rules (כללים לגבי מארח ונתיב).
בדוגמה הזו, אין צורך להגדיר כללי מארח או נתיב, כי כל התנועה תעבור לכלל ברירת המחדל. לכן, אפשר להשתמש בערכי ברירת המחדל שאוכלסו מראש.
הגדרות הקצה הקדמי
- בחלונית הימנית של הדף Create global external Application Load Balancer (יצירת מאזן עומסים חיצוני גלובלי לאפליקציות), לוחצים על Frontend configuration (הגדרת חזית האתר).
- מגדירים את Name לערך
fortressnet-http-rule. - בשדה IP version, בוחרים באפשרות IPv4.
- בשביל IP address, בוחרים באפשרות Create IP address.
- בתיבת הדו-שיח Reserve a new static IP, מגדירים את Name ל-
fortressnet-ip. - לוחצים על הזמנה ומחכים כמה רגעים.
- בתחתית תיבת הדו-שיח New Frontend IP and port לוחצים על Done.
- לוחצים על Add frontend IP and port.
- מגדירים את Name לערך
fortressnet-http-ipv6-rule. - בשדה IP version בוחרים באפשרות IPv6.
- בשביל IP address, בוחרים באפשרות Create IP address.
- בתיבת הדו-שיח, מגדירים את השם ל-
fortressnet-ipv6. - לוחצים על הזמנה ומחכים כמה רגעים.
- בתחתית תיבת הדו-שיח New Frontend IP and port לוחצים על Done.
בדיקה וסיום
- בחלונית הימנית של הדף Create global external Application Load Balancer (יצירת מאזן עומסים חיצוני גלובלי של אפליקציות), לוחצים על Review and finalize (בדיקה וסיום).
- משווים את ההגדרות למה שרציתם ליצור.
- אם ההגדרות נכונות, לוחצים על יצירה בתחתית החלונית הימנית. חוזרים למסך איזון עומסים. אחרי שיוצרים את מאזן העומסים, סימן וי ירוק לידו מציין שהוא פועל.
gcloud
הגדרת הקצה העורפי
יצירת בדיקת תקינות בסיסית. הפקודה הזו תבדוק אם עורף של מאזן עומסים מגיב לבקשות HTTP.
gcloud compute health-checks create http http-basic-check
יוצרים שירות לקצה עורפי גלובלי. שירות הקצה העורפי הזה יקבל תנועת HTTP ממאזן העומסים.
gcloud compute backend-services create fortressnet-backend-service \ --protocol HTTP \ --health-checks http-basic-check \ --globalמוסיפים את קבוצות המכונות כקצה עורפי אזורי של השירות לקצה העורפי. ההגדרה הזו תפיץ את התנועה בין השרתים העורפיים על סמך מספר מקסימלי של בקשות לשנייה (RPS) לכל מופע.
gcloud compute backend-services add-backend fortressnet-backend-service \ --balancing-mode RATE \ --max-rate-per-instance 100 \ --instance-group us-central1-pool \ --instance-group-region us-central1 \ --global gcloud compute backend-services add-backend fortressnet-backend-service \ --balancing-mode RATE \ --max-rate-per-instance 100 \ --instance-group europe-west1-pool \ --instance-group-region europe-west1 \ --global gcloud compute backend-services add-backend fortressnet-backend-service \ --balancing-mode RATE \ --max-rate-per-instance 100 \ --instance-group asia-east1-pool \ --instance-group-region asia-east1 \ --global
כללים של מארח ונתיב
הגדרת מפת URL. מיפויי כתובות URL מעבירים כתובות URL שונות לשירותי קצה עורפיים שונים. מכיוון שיש לנו רק שירות קצה עורפי אחד, פשוט נגדיר את שירות הקצה העורפי הזה כשירות ברירת המחדל לכל כתובות ה-URL.
gcloud compute url-maps create fortressnet-balancer \ --default-service fortressnet-backend-serviceיוצרים נתיב ל-HTTP proxy. פרוקסי HTTP מקבל בקשות HTTP ומנתב אותן בהתאם למפת ה-URL. במקרה כזה, כל הבקשות יישלחו לשירות הקצה העורפי היחיד שלכם.
gcloud compute target-http-proxies create fortressnet-http-proxy \ --url-map fortressnet-balancer
הגדרות הקצה הקדמי
יוצרים שתי כתובות IP חיצוניות סטטיות גלובליות: אחת ל-IPv4 ואחת ל-IPv6. אלה יהיו כתובות ה-IP החיצוניות הגלובליות של מאזן העומסים.
gcloud compute addresses create fortressnet-ip \ --ip-version IPV4 \ --network-tier=PREMIUM \ --global gcloud compute addresses create fortressnet-ipv6 \ --ip-version IPV6 \ --network-tier=PREMIUM \ --globalמחפשים את כתובות ה-IP החיצוניות של מאזן העומסים.
gcloud compute addresses list
יוצרים כללי העברה גלובליים לכתובות ה-IP החיצוניות. הפעולה הזו תעביר בקשות HTTP מסוג IPv4 ו-IPv6 ל-HTTP proxy.
gcloud compute forwarding-rules create fortressnet-http-rule \ --load-balancing-scheme=EXTERNAL \ --network-tier=PREMIUM \ --global \ --target-http-proxy fortressnet-http-proxy \ --ports 80 \ --address LOAD_BALANCER_IP_ADDRESSgcloud compute forwarding-rules create fortressnet-http-ipv6-rule \ --load-balancing-scheme=EXTERNAL \ --network-tier=PREMIUM \ --global \ --target-http-proxy fortressnet-http-proxy \ --ports 80 \ --address LOAD_BALANCER_IPV6_ADDRESS
(אופציונלי) מוודאים שמאזן העומסים פועל. יכול להיות שתצטרכו לחכות דקה או שלוש.
המסוף
נכנסים לדף Load balancing במסוף Google Cloud .
מחכים עד שיופיע סימן וי ירוק
fortressnet-balancerבעמודה Backends.לוחצים על
fortressnet-balancer.בקטע Frontend מעתיקים את כתובת ה-IPv4 בעמודה IP:Port. (כתובות IPv4 הן בפורמט
www.xxx.yyy.zzz. לא צריך את מספר היציאה:nnבסוף.) אם הקטע Frontend לא מופיע, כדאי לחכות כמה רגעים ואז לטעון מחדש את דף האינטרנט.מזינים את כתובת ה-IP בדפדפן אינטרנט.
אמור להופיע דף האינטרנט 'Apache2 Debian Default Page'.
אם במקום זאת מופיע דף אינטרנט עם השגיאה '404 (לא נמצא)', כדאי להמתין עוד כמה דקות.
gcloud
מחפשים את כתובות ה-IP החיצוניות של מאזן העומסים.
gcloud compute addresses list
שולחים שאילתה לגבי כתובת ה-IPv4. (כתובות IPv4 הן בפורמט
www.xxx.yyy.zzz.)curl http://LOAD_BALANCER_IP_ADDRESS | head
אמור להופיע טקסט HTML, כולל השורה
<title>Apache2 Debian Default Page: It works</title>.
אם במקום זאת מופיע <title>Error 404 (Not Found)!!1</title>, כדאי להמתין עוד כמה דקות.
שיטה מומלצת: יוצרים חומת אש מאובטחת שמאפשרת רק תנועה פנימית ממאזן העומסים ומבדיקת התקינות. לאחר מכן מוחקים את חומת האש המקורית שאפשרה כל בקשת HTTP. כך נמנעת גישה למופעים בודדים מלקוחות חיצוניים.
המסוף
יוצרים חומת אש חדשה שמאפשרת תנועה רק ממאזן העומסים ומבדיקת התקינות.
נכנסים לדף Firewall rules במסוף Google Cloud .
לוחצים על יצירת כלל לחומת האש.
מגדירים את Name לערך
fortressnet-allow-load-balancer.בשדה רשת, בוחרים באפשרות
fortressnet.בקטע יעדים בוחרים באפשרות
All instances in the network.בשדה Source IP ranges (טווח כתובות IP של המקור), מקלידים
130.211.0.0/22ומקישים על המקש Enter, ואז מקלידים35.191.0.0/16ומקישים שוב על Enter.בקטע Protocols and ports [פרוטוקולים ויציאות], בוחרים באפשרות tcp ומזינים
80.לוחצים על יצירה.
מוחקים את חומת האש הישנה שמאפשרת הכול.
- מסמנים את תיבת הסימון ליד
fortressnet-allow-http. - לוחצים על מחיקה בחלק העליון של הדף.
- בתיבת הדו-שיח, לוחצים על מחיקה.
- מסמנים את תיבת הסימון ליד
gcloud
יוצרים חומת אש חדשה שמאפשרת תנועה רק ממאזן העומסים ומבדיקת התקינות.
gcloud compute firewall-rules create fortressnet-allow-load-balancer \ --network fortressnet \ --source-ranges 130.211.0.0/22,35.191.0.0/16 \ --allow tcp:80מוחקים את חומת האש הישנה שמאפשרת הכול.
gcloud compute firewall-rules delete fortressnet-allow-http -q
(אופציונלי) אימות של התאמה אוטומטית לעומס ואיזון עומסים
יצירת תנועת בדיקה
נניח שבוקר באירופה ושירות האינטרנט שלכם הופך פתאום לוויראלי באינטרנט. יצירת מספר גבוה של בקשות לקוח בו-זמנית מאירופה.
המסוף
יוצרים מופע שבו מותקן כלי לבדיקת עומסים מסוג Siege.
נכנסים לדף Create an instance במסוף Google Cloud .
מגדירים את Name לערך
europe-loadtest.בשדה אזור בוחרים באפשרות
europe-west1.כדי להגדיר הגדרות מתקדמות, מרחיבים את הקטע אפשרויות מתקדמות ומבצעים את הפעולות הבאות:
- מרחיבים את הקטע ניהול.
- בשדה Automation, מזינים את סקריפט ההפעלה הבא:
apt -y install siege
כדי ליצור את המכונה הווירטואלית (VM), לוחצים על האפשרות Create.
בודקים מהי כתובת ה-IPv4 של מאזן העומסים.
נכנסים לדף Load balancing במסוף Google Cloud .
לחץ על
fortressnet-balancer.בקטע Frontend מעתיקים את כתובת ה-IPv4 בעמודה IP:Port. (כתובות IPv4 הן בפורמט
www.xxx.yyy.zzz).
מתחברים באמצעות SSH למופע של בדיקת העומס.
נכנסים לדף VM instances במסוף Google Cloud .
מחכים עד שיופיע סימן וי ירוק ליד המכונה
europe-loadtestבעמודה Name (שם).לוחצים על SSH ב-
europe-loadtestבעמודה Connect.
מתחילים במצור. מגדירים טירגוט לכתובת ה-IPv4 של מאזן העומסים.
siege -c150 http://LOAD_BALANCER_IP_ADDRESS
gcloud
יוצרים מופע שבו מותקן כלי לבדיקת עומסים מסוג Siege.
gcloud compute instances create europe-loadtest \ --network default \ --zone europe-west1-c \ --metadata startup-script='apt -y install siege'בודקים מהי כתובת ה-IPv4 של מאזן העומסים.
gcloud compute addresses list
פותחים סשן חדש של מעטפת שבו הפקודה
gcloudזמינה.בסשן החדש של מעטפת הפקודות, מתחברים באמצעות SSH למופע של בדיקת העומס.
gcloud compute ssh --zone europe-west1-c europe-loadtest
מתחילים במצור. מגדירים טירגוט לכתובת ה-IPv4 של מאזן העומסים.
siege -c150 http://LOAD_BALANCER_IP_ADDRESS
אחרי הרצת הפקודה siege, אמור להופיע פלט שמצהיר על The server is now under siege...
[alert] Zip encoding disabled; siege requires zlib support to enable it ** SIEGE 4.0.2 ** Preparing 150 concurrent users for battle. The server is now under siege...
מעקב אחרי איזון עומסים והתאמה לעומס (autoscaling)
נכנסים לדף Load balancing במסוף Google Cloud .
לוחצים על מאזן העומסים שנקרא
fortressnet-balancer.לוחצים על הכרטיסייה Monitoring (מעקב).
בתפריט הנפתח Backend, בוחרים באפשרות
fortressnet-backend-service.
יכול להיות שיחלפו עד עשר דקות עד שיוצגו מספיק נתונים. בקרוב יוצג לכם מסך שדומה לזה שמופיע בהמשך:

מה קורה כאן:
בדיקת העומס מתחילה לשלוח כמות גדולה של תנועה בבת אחת. בתחילה, מאזן העומסים מחלק את הבקשות באופן שווה בין שלושת השרתים העורפיים. מספר הבקשות עולה במהירות על מגבלות ההרחבה האוטומטית, ואפילו עלול לגרום לשרתים להחזיר
Backend 5xx errorsשיוצג במסך המעקב. המידרוג האוטומטי מתחיל הרצה של מכונות נוספות לפי הצורך.ההתאמה האוטומטית לעומס עומדת בדרישות הקיבולת. כדי לצמצם את זמן האחזור של הבקשות, מאזני העומסים של Compute Engine מנסים לנתב את הבקשות אל ה-Backend שהכי קרוב ללקוח. במקרה הזה, מכיוון שתעבורת הנתונים של בדיקת העומס מגיעה מאירופה, מאזן העומסים מעדיף להפנות יותר בקשות אל קצה העורף באירופה. כתוצאה מכך, יכול להיות שהתאמה אוטומטית לעומס תפעיל יותר מופעים בבק-אנד של אירופה כדי לטפל בחלק גדול יותר מהבקשות.
יצירת תנועת בדיקה במקום אחר
נניח שהשירות האינטרנטי שלכם פופולרי גם באסיה, בקרב משתמשים שמתחברים לאינטרנט בשעות אחר הצהריים. יצירת מספר גבוה של בקשות מאסיה.
המסוף
כדי ליצור עוד מופע שהותקן באמצעות כלי הבדיקה של עומס Siege, מבצעים את הפעולות הבאות:
נכנסים לדף VM instances במסוף Google Cloud .
לוחצים על Create instance.
מגדירים את Name לערך
asia-loadtest.בשדה אזור בוחרים באפשרות
asia-east1.מרחיבים את הקטע אפשרויות מתקדמות.
מרחיבים את הקטע ניהול.
בקטע Automation, מזינים את סקריפט לטעינה בזמן ההפעלה הבא:
apt -y install siege
לוחצים על יצירה.
כדי לקבל את כתובת ה-IP של מאזן העומסים:
נכנסים לדף Load balancing במסוף Google Cloud .
לחץ על
fortressnet-balancer.בקטע Frontend מעתיקים את כתובת ה-IPv4 שמופיעה בעמודה IP:Port. (כתובות IPv4 הן בפורמט
www.xxx.yyy.zzz).
מתחברים באמצעות SSH למופע של בדיקת העומס.
- מחכים עד שיופיע סימן וי ירוק ליד המכונה
asia-loadtestבעמודה Name. - לוחצים על SSH ב-
asia-loadtestבעמודה Connect.
- מחכים עד שיופיע סימן וי ירוק ליד המכונה
מתחילים במצור. מגדירים טירגוט לכתובת ה-IPv4 של מאזן העומסים.
siege -c150 http://LOAD_BALANCER_IP_ADDRESS
gcloud
בסשן המעטפת המקורי, יוצרים עוד מופע שמותקן בו כלי בדיקת העומס Siege.
gcloud compute instances create asia-loadtest \ --network default \ --zone asia-east1-c \ --metadata startup-script='apt -y install siege'בודקים מהי כתובת ה-IPv4 של מאזן העומסים.
gcloud compute addresses list
פותחים סשן חדש של מעטפת שבו הפקודה
gcloudזמינה.בסשן החדש של מעטפת הפקודות, מתחברים באמצעות SSH למופע של בדיקת העומס.
gcloud compute ssh --zone asia-east1-c asia-loadtest
מתחילים במצור. מגדירים טירגוט לכתובת ה-IPv4 של מאזן העומסים.
siege -c150 http://LOAD_BALANCER_IP_ADDRESS
שוב, אמור להופיע פלט שמצהיר על The server is now under siege...
[alert] Zip encoding disabled; siege requires zlib support to enable it ** SIEGE 4.0.2 ** Preparing 150 concurrent users for battle. The server is now under siege...
מעקב אחרי איזון עומסים והתאמה לעומס (autoscaling)
חזרה לתצוגת המעקב של איזון העומסים מהפעם האחרונה. יכול להיות שיחלפו עד עשר דקות עד שיוצגו מספיק נתונים חדשים. בקרוב יוצג לכם פלט שדומה לזה שמופיע כאן:

מה קורה כאן:
שוב, בדיקת העומס שולחת מספר גדול של בקשות בבת אחת. בתחילה, מאזן העומסים מחלק את הבקשות באופן שווה בין שלושת השרתים הקיימים. כאשר מספר הבקשות חורג מהמגבלות של התאמה אוטומטית לעומס, המידרוג האוטומטי מתחיל התחלת הרצה של מופעים נוספים לפי הצורך.
התכונה 'שינוי גודל אוטומטי' מתאימה את עצמה לצרכים החדשים של הקיבולת. מאזן העומסים עדיין מעדיף לנתב בקשות לשרתי הקצה העורפיים הזמינים הקרובים ביותר. כתוצאה מכך, בסופו של דבר, ה-backend באסיה מקבל בקשות בעיקר מאסיה, ה-backend באירופה מקבל בקשות בעיקר מאירופה, וה-backend בארה"ב מקבל את כל השאר.
הסרת המשאבים
אחרי שמסיימים את המדריך, אפשר למחוק את המשאבים שנוצרו, כדי שהם יפסיקו להשתמש במכסה ולצבור חיובים. בסעיפים הבאים מוסבר איך למחוק או להשבית את המשאבים האלו.
מחיקת הפרויקט
הדרך הקלה ביותר לבטל את החיוב היא למחוק את הפרויקט שיצרתם בשביל המדריך.
כדי למחוק את הפרויקט:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
מחיקת מכונות
כדי למחוק מכונה של Compute Engine:
- In the Google Cloud console, go to the VM instances page.
- Select the checkbox for the instance that you want to delete.
- To delete the instance, click More actions, click Delete, and then follow the instructions.
המאמרים הבאים
- שינוי גודל על סמך קיבולת ההגשה של איזון העומסים.
- Global load balancing on Google Cloud.
- פיתוח אפליקציות אינטרנט עמידות וניתנות להתאמה ב- Google Cloud.
- כדאי להעמיק את הקריאה ולהכיר דוגמאות לארכיטקטורות, תרשימים ושיטות מומלצות בנושאי Google Cloud. כל אלה זמינים במרכז הארכיטקטורה של Cloud.