במדריך הזה נסביר איך בעלים של שירות מנוהל יכולים ליצור שירות פשוט שמשתמש במאזן עומסי רשת פנימי מסוג Network Load Balancer. כברירת מחדל, מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי זמין רק מתוך רשת ה-VPC שמארחת אותו.
המדריך הזה מיועד למומחי Cloud Architect, למומחי Network Architect, לאדמינים של רשתות ולאדמינים של IT.
מטרות
- הגדרת רשתות למשאבים של בעלי השירות המנוהל
- יצירת משאבי מכונות וירטואליות עבור הבק-אנד של מאזן העומסים
- הגדרת הרכיבים של מאזן העומסים
- בדיקת הגישה למאזן העומסים
עלויות
במסמך הזה משתמשים ברכיבים הבאים של Google Cloud, והשימוש בהם כרוך בתשלום:
כדי ליצור הערכת עלויות בהתאם לשימוש החזוי, אתם יכולים להשתמש במחשבון התמחור.
כשמסיימים את המשימות שמתוארות במסמך הזה אפשר למחוק את המשאבים שיצרתם כדי להימנע מחיובים נוספים. מידע נוסף זמין בקטע הסרת המשאבים.
לפני שמתחילים
- יוצרים או בוחרים פרויקט לשימוש במשאבים של בעלים של שירות מנוהל.
במדריכים הבאים, הפרויקט הזה נקרא
PRODUCER_PROJECT -
נכנסים לדף לבחירת הפרויקט במסוף Google Cloud .
-
בוחרים או יוצרים Google Cloud פרויקט.
תפקידים שנדרשים כדי לבחור או ליצור פרויקט
- Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
-
יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (
roles/resourcemanager.projectCreator), שכולל את ההרשאהresourcemanager.projects.create. איך מקצים תפקידים
מפעילים את Compute Engine API, אם הוא עדיין לא מופעל.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים-
צריך לוודא שיש לכם בפרויקט את התפקיד או התפקידים הבאים: Compute Engine > Compute Network Admin, Compute Engine > Compute Security Admin, Compute Engine > Compute Instance Admin
בדיקת התפקידים
-
נכנסים לדף IAM במסוף Google Cloud .
כניסה לדף IAM - בוחרים את הפרויקט.
-
בעמודה Principal, מחפשים את כל השורות שמזהות אתכם או קבוצה שאתם נכללים בה. כדי לברר באילו קבוצות אתם נכללים, פנו לאדמין.
- בודקים את העמודה Role בכל השורות שבהן מצוין או מופיע השם שלכם, כדי לראות אם רשימת התפקידים כוללת את התפקידים הנדרשים.
מתן התפקידים
-
נכנסים לדף IAM במסוף Google Cloud .
כניסה לדף IAM - בוחרים את הפרויקט.
- לוחצים על Grant access.
-
בשדה New principals, מזינים את מזהה המשתמש. בדרך כלל מזהה המשתמש הוא כתובת האימייל של חשבון Google.
- לוחצים על Select a role ומחפשים את התפקיד.
- כדי לתת עוד תפקידים, לוחצים על Add another role ומוסיפים אותם.
- לוחצים על Save.
-
הגדרה של רשתות
בקטעים הבאים מוסבר איך ליצור רשת, רשת משנה וכללי חומת אש לשירות.
הגדרת רשת ורשת משנה
כדי ליצור את רשת השירות ואת רשת המשנה של איזון העומסים, צריך לבצע את השלבים בקטעים הבאים.
המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
לוחצים על יצירת רשת VPC.
בשדה Name (שם), מזינים
service-network.בקטע Subnet creation mode (מצב יצירת רשת משנה), בוחרים באפשרות Custom (בהתאמה אישית).
בקטע New subnet (רשת משנה חדשה), מזינים את הפרטים הבאים.
- בשדה Name (שם), מזינים
service-subnet. - בשדה Region, בוחרים את האזור שבו רוצים להשתמש.
- בשביל IP stack type, בוחרים באפשרות IPv4 (single-stack).
- בשדה IPv4 range, מזינים
10.10.10.0/24. - לוחצים על סיום.
- בשדה Name (שם), מזינים
לוחצים על יצירה.
gcloud
יוצרים רשת VPC במצב מותאם אישית:
gcloud compute networks create service-network --subnet-mode=custom
ברשת
service-network, יוצרים רשת משנה.gcloud compute networks subnets create service-subnet \ --network=service-network \ --range=10.10.10.0/24 \ --region=REGIONמחליפים את
REGIONבאזור שבו רוצים להשתמש.
הגדרת כללים לחומת אש
יוצרים כללים של חומת אש כדי לאפשר את תעבורת הנתונים הבאה:
-
fw-allow-subnet: מאפשר לתנועה מ-10.10.10.0/24להגיע למשאבים אחרים ב-10.10.10.0/24. -
fw-allow-ssh: מאפשר תעבורת SSH מ-0.0.0.0/0להגיע למכונות וירטואליות עם תג הרשתallow-ssh.
fw-allow-healthcheck: מאפשר לתנועה ממערכות Google Cloudבדיקת תקינות להגיע למכונות וירטואליות עם תג הרשתallow-healthcheck.
המסוף
נכנסים לדף Firewall policies במסוף Google Cloud .
כדי לאפשר תעבורת נתונים ברשת משנה, לוחצים על יצירת כלל חומת אש ומשתמשים בהגדרות הבאות:
- בשדה Name (שם), מזינים
fw-allow-subnet. - בקטע רשת, בוחרים באפשרות
service-network. - בשדה עדיפות מזינים
1000. - בשדה כיוון התנועה, בוחרים באפשרות תנועה נכנסת.
- בקטע פעולה במקרה של התאמה, בוחרים באפשרות אישור.
- בקטע יעדים, בוחרים באפשרות כל המופעים ברשת.
- בשדה מסנן מקור, בוחרים באפשרות טווחים של כתובות IPv4.
- בשדה Source IPv4 ranges, מזינים
10.10.10.0/24. - בקטע Protocols and ports (פרוטוקולים ופורטים), בוחרים באפשרות Allow all (התרת הכול).
- בשדה Name (שם), מזינים
לוחצים על יצירה.
כדי לאפשר חיבורי SSH נכנסים, לוחצים על Create firewall rule (יצירת כלל חומת אש) ומשתמשים בהגדרות הבאות:
- בשדה Name (שם), מזינים
fw-allow-ssh. - בקטע רשת, בוחרים באפשרות
service-network. - בשדה עדיפות מזינים
1000. - בשדה כיוון התנועה, בוחרים באפשרות תנועה נכנסת.
- בקטע פעולה במקרה של התאמה, בוחרים באפשרות אישור.
- בקטע יעדים, בוחרים באפשרות תגי יעד שצוינו.
- בשדה תגי יעד, מזינים
allow-ssh. - בשדה מסנן מקור, בוחרים באפשרות טווחים של כתובות IPv4.
- בשדה Source IPv4 ranges, מזינים
0.0.0.0/0. - בקטע פרוטוקולים ויציאות, בוחרים באפשרות פרוטוקולים ויציאות שצוינו ומסמנים את תיבת הסימון TCP. בשדה Ports (יציאות), מזינים
22.
- בשדה Name (שם), מזינים
לוחצים על יצירה.
כדי לאפשר Google Cloud בדיקות תקינות, לוחצים על יצירת כלל חומת אש ומשתמשים בהגדרות הבאות:
- בשדה Name (שם), מזינים
fw-allow-healthcheck. - בקטע רשת, בוחרים באפשרות
service-network. - בשדה עדיפות מזינים
1000. - בשדה כיוון התנועה, בוחרים באפשרות תנועה נכנסת.
- בקטע פעולה במקרה של התאמה, בוחרים באפשרות אישור.
- בקטע יעדים, בוחרים באפשרות תגי יעד שצוינו.
- בשדה תגי יעד, מזינים
allow-healthcheck. - בשדה מסנן מקור, בוחרים באפשרות טווחים של כתובות IPv4.
- בשדה Source IPv4 ranges, מזינים את
130.211.0.0/22ואת35.191.0.0/16. - בקטע Protocols and ports (פרוטוקולים ופורטים), בוחרים באפשרות Allow all (התרת הכול).
- בשדה Name (שם), מזינים
לוחצים על יצירה.
gcloud
יוצרים את כלל חומת האש
fw-allow-subnetכדי לאפשר תקשורת מתוך תת-הרשת:gcloud compute firewall-rules create fw-allow-subnet \ --network=service-network \ --action=allow \ --direction=ingress \ --source-ranges=10.10.10.0/24 \ --rules=tcp,udp,icmp
יוצרים את כלל חומת האש
fw-allow-sshכדי לאפשר קישוריות SSH למכונות וירטואליות עם תג הרשתallow-ssh.gcloud compute firewall-rules create fw-allow-ssh \ --network=service-network \ --action=allow \ --direction=ingress \ --source-ranges=0.0.0.0/0 \ --target-tags=allow-ssh \ --rules=tcp:22
יוצרים את הכלל
fw-allow-healthcheckכדי לאפשר Google Cloudבדיקות תקינות.gcloud compute firewall-rules create fw-allow-healthcheck \ --network=service-network \ --action=allow \ --direction=ingress \ --target-tags=allow-healthcheck \ --source-ranges=130.211.0.0/22,35.191.0.0/16 \ --rules=tcp,udp,icmp
יצירת משאבי מכונות וירטואליות עבור הבק-אנד של מאזן העומסים
יוצרים את המכונות הווירטואליות ואת קבוצת המופעים לשימוש עם מאזן העומסים.
יצירת מכונות וירטואליות של בק-אנד
השירות שאתם יוצרים פועל בשתי מכונות וירטואליות כדי להגדיל את הזמינות:
vm-1 ו-vm-2. המכונות הווירטואליות נמצאות באותו אזור, אבל בסביבת ייצור מומלץ להשתמש בכמה אזורים.
בנוסף ליצירת מכונות וירטואליות, השלבים הבאים מאפשרים:
- התצורה של המכונות הווירטואליות מוגדרת כך שישתמשו בתגי הרשת שהגדרתם כיעדים בכללי חומת האש ובתג רשת נוסף (
allow-nat) שישמש בהמשך. התקנה, הגדרה והפעלה של שירות Apache.
המסוף
נכנסים לדף VM instances במסוף Google Cloud .
לוחצים על Create instance.
בשדה Name (שם), מזינים
vm-1.בשדות Region ו-Zone, בוחרים אזור ותחום בתוך האזור הזה.
בתפריט הניווט, עוברים אל מערכת הפעלה ואחסון.
בחלונית Operating system and storage, מוודאים שהאפשרות Debian GNU/Linux 12 (bookworm) נבחרה לדיסק האתחול. אם רוצים לבחור תמונה אחרת, לוחצים על שינוי.
בתפריט הניווט, עוברים אל Networking (רשת).
אם משתמשים בתגים של רשת, מזינים את הערכים
allow-ssh,allow-healthcheckו-allow-nat.בקטע Network interfaces (ממשקי רשת), בוחרים באפשרויות הבאות:
- בקטע רשת, בוחרים באפשרות
service-network. - בקטע תת-רשת, בוחרים באפשרות
service-subnet. - בשביל IP stack type, בוחרים באפשרות IPv4 (single-stack).
- בקטע Primary internal IPv4 address (כתובת IPv4 פנימית ראשית), בוחרים באפשרות Ephemeral (automatic) (זמנית (אוטומטית)).
- בשדה External IPv4 address (כתובת IPv4 חיצונית), בוחרים באפשרות Ephemeral (זמנית).
- בקטע רשת, בוחרים באפשרות
בתפריט הניווט, עוברים אל מתקדם.
בקטע Automation, בשדה סקריפט לטעינה בזמן ההפעלה, מזינים את הסקריפט הבא.
#! /bin/bash if [ -f /etc/startup_script_completed ]; then exit 0 fi apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl file_ports="/etc/apache2/ports.conf" file_http_site="/etc/apache2/sites-available/000-default.conf" file_https_site="/etc/apache2/sites-available/default-ssl.conf" http_listen_prts="Listen 80\nListen 8008\nListen 8080\nListen 8088" http_vh_prts="*:80 *:8008 *:8080 *:8088" https_listen_prts="Listen 443\nListen 8443" https_vh_prts="*:443 *:8443" vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html prt_conf="$(cat "$file_ports")" prt_conf_2="$(echo "$prt_conf" | sed "s|Listen 80|${http_listen_prts}|")" prt_conf="$(echo "$prt_conf_2" | sed "s|Listen 443|${https_listen_prts}|")" echo "$prt_conf" | tee "$file_ports" http_site_conf="$(cat "$file_http_site")" http_site_conf_2="$(echo "$http_site_conf" | sed "s|*:80|${http_vh_prts}|")" echo "$http_site_conf_2" | tee "$file_http_site" https_site_conf="$(cat "$file_https_site")" https_site_conf_2="$(echo "$https_site_conf" | sed "s|_default_:443|${https_vh_prts}|")" echo "$https_site_conf_2" | tee "$file_https_site" systemctl restart apache2 touch /etc/startup_script_completedלוחצים על יצירה.
חוזרים על השלבים האלה כדי ליצור עוד מכונה וירטואלית בשם
vm-2באותו אזור ואזור זמינות כמוvm-1.
gcloud
מריצים את הפקודות הבאות כדי ליצור שתי מכונות וירטואליות:
gcloud compute instances create vm-1 \ --zone=ZONE \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=allow-ssh,allow-healthcheck,allow-nat \ --subnet=service-subnet \ --metadata=startup-script='#! /bin/bash if [ -f /etc/startup_script_completed ]; then exit 0 fi apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl file_ports="/etc/apache2/ports.conf" file_http_site="/etc/apache2/sites-available/000-default.conf" file_https_site="/etc/apache2/sites-available/default-ssl.conf" http_listen_prts="Listen 80\nListen 8008\nListen 8080\nListen 8088" http_vh_prts="*:80 *:8008 *:8080 *:8088" https_listen_prts="Listen 443\nListen 8443" https_vh_prts="*:443 *:8443" vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html prt_conf="$(cat "$file_ports")" prt_conf_2="$(echo "$prt_conf" | sed "s|Listen 80|${http_listen_prts}|")" prt_conf="$(echo "$prt_conf_2" | sed "s|Listen 443|${https_listen_prts}|")" echo "$prt_conf" | tee "$file_ports" http_site_conf="$(cat "$file_http_site")" http_site_conf_2="$(echo "$http_site_conf" | sed "s|*:80|${http_vh_prts}|")" echo "$http_site_conf_2" | tee "$file_http_site" https_site_conf="$(cat "$file_https_site")" https_site_conf_2="$(echo "$https_site_conf" | sed "s|_default_:443|${https_vh_prts}|")" echo "$https_site_conf_2" | tee "$file_https_site" systemctl restart apache2 touch /etc/startup_script_completed'gcloud compute instances create vm-2 \ --zone=ZONE \ --image-family=debian-12 \ --image-project=debian-cloud \ --tags=allow-ssh,allow-healthcheck,allow-nati \ --subnet=service-subnet \ --metadata=startup-script='#! /bin/bash if [ -f /etc/startup_script_completed ]; then exit 0 fi apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl file_ports="/etc/apache2/ports.conf" file_http_site="/etc/apache2/sites-available/000-default.conf" file_https_site="/etc/apache2/sites-available/default-ssl.conf" http_listen_prts="Listen 80\nListen 8008\nListen 8080\nListen 8088" http_vh_prts="*:80 *:8008 *:8080 *:8088" https_listen_prts="Listen 443\nListen 8443" https_vh_prts="*:443 *:8443" vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://metadata.google.internal/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html prt_conf="$(cat "$file_ports")" prt_conf_2="$(echo "$prt_conf" | sed "s|Listen 80|${http_listen_prts}|")" prt_conf="$(echo "$prt_conf_2" | sed "s|Listen 443|${https_listen_prts}|")" echo "$prt_conf" | tee "$file_ports" http_site_conf="$(cat "$file_http_site")" http_site_conf_2="$(echo "$http_site_conf" | sed "s|*:80|${http_vh_prts}|")" echo "$http_site_conf_2" | tee "$file_http_site" https_site_conf="$(cat "$file_https_site")" https_site_conf_2="$(echo "$https_site_conf" | sed "s|_default_:443|${https_vh_prts}|")" echo "$https_site_conf_2" | tee "$file_https_site" systemctl restart apache2 touch /etc/startup_script_completed'מחליפים את
ZONEבאזור שבו רוצים להשתמש.
יצירת קבוצה של מופעי מכונה
כדי להשתמש במכונות הווירטואליות בקצה העורפי של מאזן עומסים, צריך להוסיף את המכונות הווירטואליות לקבוצת מכונות.
המסוף
נכנסים לדף Instance groups במסוף Google Cloud .
לוחצים על Create instance group.
בחלונית הניווט, לוחצים על קבוצת מופעים חדשה לא מנוהלת.
בשדה Name (שם), מזינים
ig-1.בקטע Location, בוחרים את אותו אזור ואותו תחום כמו במכונות הווירטואליות.
בקטע רשת, בוחרים באפשרות
service-network.בשדה Subnetwork, בוחרים באפשרות
service-subnet.בקטע VM instances (מופעי מכונות וירטואליות), מוסיפים את
vm-1ואתvm-2לקבוצת המופעים.לוחצים על יצירה.
gcloud
יצירת קבוצה של מופעי מכונה לא מנוהלים:
gcloud compute instance-groups unmanaged create ig-1 \ --zone=ZONEמחליפים את
ZONEבאזור שמכיל את המכונות הווירטואליות.מוסיפים את המכונות הווירטואליות לקבוצת המופעים:
gcloud compute instance-groups unmanaged add-instances ig-1 \ --zone=ZONE \ --instances=vm-1,vm-2
הגדרת רכיבים של מאזן עומסים
מגדירים את כל הרכיבים הפנימיים של מאזן עומסי רשת מסוג Network Load Balancer להעברת סיגנל ללא שינוי, החל מבדיקת התקינות והשירות לקצה העורפי, ואז את הרכיבים של הקצה הקדמי:
בדיקת תקינות. אתם משתמשים בבדיקת תקינות של HTTP שבודקת קוד סטטוס HTTP
200 OK.שירות לקצה העורפי. מכיוון שצריך להעביר תנועת HTTP דרך מאזן העומסים הפנימי, צריך להשתמש ב-TCP ולא ב-UDP.
כלל העברה. יוצרים כלל העברה פנימי יחיד,
service-rule.כתובת IP פנימית. כשיוצרים את כלל ההעברה, מציינים כתובת IP פנימית,
10.10.10.99.
המסוף
התחלת ההגדרה
נכנסים לדף Load balancing במסוף Google Cloud .
- לוחצים על Create load balancer (יצירת מאזן עומסים).
- בקטע Type of load balancer (סוג מאזן העומסים), בוחרים באפשרות Network Load Balancer (TCP/UDP/SSL) (מאזן עומסים ברשת (TCP/UDP/SSL)) ולוחצים על Next (הבא).
- בקטע Proxy or passthrough (פרוקסי או העברה), בוחרים באפשרות Passthrough load balancer (מאזן עומסים להעברה) ולוחצים על Next (הבא).
- בקטע Public facing or internal (פנימי או גלוי לכולם), בוחרים באפשרות Internal (פנימי) ולוחצים על Next (הבא).
- לוחצים על Configure (הגדרה).
הגדרה בסיסית
בדף Create internal passthrough Network Load Balancer (יצירת מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי), מזינים את הפרטים הבאים:
- בשדה Load balancer name (שם מאזן העומסים), מזינים
service-lb. - בקטע Region, בוחרים את אותו אזור שבו נמצאות המכונות הווירטואליות.
- בקטע רשת, בוחרים באפשרות
service-network.
הגדרת הקצוות העורפיים
- לוחצים על Backend configuration.
- ברשימה בדיקת תקינות, לוחצים על יצירת בדיקת תקינות ומזינים את הפרטים הבאים:
- בשדה Name: (שם), מזינים
hc-http-80. - בשדה פרוטוקול:, בוחרים באפשרות
HTTP. - בשדה יציאה:, מזינים
80. - בשדה פרוטוקול שרת proxy:, בוחרים באפשרות
NONE. - בשדה נתיב הבקשה:, מזינים
/.
- בשדה Name: (שם), מזינים
- לוחצים על יצירה.
- בקטע New Backend של Backends, בוחרים באפשרות IPv4 (single-stack).
- בקטע Instance group, בוחרים את קבוצת המכונות
ig-1ולוחצים על Done. - לפני שממשיכים, מוודאים שמופיע סימן וי כחול לצד Backend configuration.
הגדרת הקצה הקדמי
- לוחצים על Frontend configuration.
- בקטע New Frontend IP and port, מבצעים את הפעולות הבאות:
- בשדה Name (שם), מזינים
service-rule. - בשדה Subnetwork, בוחרים באפשרות
service-subnet. - בקטע Internal IP purpose, ברשימה IP address, בוחרים באפשרות Create IP address ומזינים את הפרטים הבאים:
- בשדה Name (שם), מזינים
service-rule-ip. - בשביל IP version, בוחרים IPv4.
- בקטע Static IP address (כתובת IP סטטית), בוחרים באפשרות Let me choose (אני רוצה לבחור).
- בשדה כתובת IP בהתאמה אישית, מזינים
10.10.10.99.
- בשדה Name (שם), מזינים
- לוחצים על Reserve.
- בקטע יציאות, בוחרים באפשרות יחיד ואז בשדה מספרי יציאות מזינים
80. - לוחצים על סיום.
- לפני שממשיכים, מוודאים שמופיע סימן וי כחול לצד Frontend configuration.
- בשדה Name (שם), מזינים
בדיקת ההגדרות האישיות
- לוחצים על Review and finalize.
- בודקים את הגדרות ההגדרה של מאזן העומסים.
- לוחצים על יצירה.
gcloud
יוצרים בדיקת תקינות חדשה של HTTP אזורי כדי לבדוק את הקישוריות של HTTP למכונות הווירטואליות ביציאה 80.
gcloud compute health-checks create http hc-http-80 \ --region=REGION \ --port=80מחליפים את
REGIONבאותו אזור שבו נמצאות המכונות הווירטואליות של הבק-אנד.יוצרים את שירות הקצה העורפי לתנועת HTTP:
gcloud compute backend-services create service-lb \ --load-balancing-scheme=internal \ --protocol=tcp \ --region=REGION \ --health-checks=hc-http-80 \ --health-checks-region=REGIONמחליפים את
REGIONבאותו אזור שבו נמצאות המכונות הווירטואליות של הבק-אנד.מוסיפים את קבוצת המכונות לשירות הקצה העורפי:
gcloud compute backend-services add-backend service-lb \ --region=REGION \ --instance-group=ig-1 \ --instance-group-zone=ZONEמחליפים את מה שכתוב בשדות הבאים:
-
REGION: אותו אזור כמו המכונות הווירטואליות בבק-אנד. -
ZONE: אותו אזור כמו המכונות הווירטואליות של ה-Backend.
-
יוצרים כלל העברה לשירות הקצה העורפי:
gcloud compute forwarding-rules create service-rule \ --region=REGION \ --load-balancing-scheme=internal \ --network=service-network \ --subnet=service-subnet \ --address=10.10.10.99 \ --ip-protocol=TCP \ --ports=80 \ --backend-service=service-lb \ --backend-service-region=REGIONמחליפים את
REGIONבאותו אזור שבו נמצאות המכונות הווירטואליות של הבק-אנד.
בדיקת הגישה למאזן העומסים
כדי לבדוק שמאזן העומסים פועל, יוצרים מכונת VM לבדיקה ושולחים ממנה בקשה למאזן העומסים.
יצירת מכונה וירטואלית של לקוח לצורך בדיקה
יוצרים מכונת VM של לקוח באותו אזור שבו נמצאות מכונות ה-VM של הבק-אנד (השרת).
המסוף
נכנסים לדף VM instances במסוף Google Cloud .
לוחצים על Create instance.
בשדה Name (שם), מזינים
producer-test.בשדה Region, בוחרים את אותו אזור כמו מכונות ה-VM של ה-Backend.
בשדה Zone, בוחרים אזור באותו אזור.
לוחצים על Networking (רשת) ומגדירים את השדות הבאים:
- בשדה Network tags (תגי רשת), מזינים
allow-ssh. - בקטע Network interfaces (ממשקי רשת), בוחרים באפשרויות הבאות:
- בשדה רשת, בוחרים באפשרות
service-network. - בשדה Subnet, בוחרים באפשרות
service-subnet.
- בשדה רשת, בוחרים באפשרות
- בשדה Network tags (תגי רשת), מזינים
לוחצים על יצירה.
gcloud
gcloud compute instances create producer-test \
--zone=ZONE \
--image-family=debian-12 \
--image-project=debian-cloud \
--tags=allow-ssh \
--subnet=service-subnet
מחליפים את ZONE באזור שנמצא באותו אזור כמו המכונות הווירטואליות בבק-אנד.
בדיקת הקישוריות
בבדיקה הזו מתבצעת פנייה למאזן העומסים ממכונה וירטואלית של לקוח. ההתנהגות הצפויה היא שתעבורת הנתונים תתחלק בין מכונות וירטואליות (VM) בקצה העורפי של מאזן העומסים.
- מתחברים למופע של מכונה וירטואלית של הלקוח.
מחליפים אתgcloud compute ssh producer-test --zone=ZONE
ZONEבאזור של המכונה הווירטואלית של הלקוח. - שולחים בקשה לאחזור מהרשת למאזן העומסים באמצעות
curlכדי ליצור קשר עם כתובת ה-IP שלו. חוזרים על הבקשה כדי לראות שהתגובות מגיעות ממכונות וירטואליות שונות בעורף. השם של המכונה הווירטואלית שמייצרת את התגובה מוצג בטקסט בתגובת ה-HTML, בגלל התוכן של/var/www/html/index.htmlבכל מכונה וירטואלית של ה-Backend. לדוגמה, תשובות צפויות נראות כמוPage served from: vm-1ו-Page served from: vm-2.curl -s http://10.10.10.99