במאמר הזה מוסבר איך ליצור מאזן עומסי רשת גלובלי חיצוני להעברת סיגנל ללא שינוי, כדי לאזן את תעבורת הנתונים בין מערכות בק-אנד של קבוצות מכונות וירטואליות (VM) שנפרסו בכמה אזורים.
לפני שמתחילים
חשוב לוודא שההגדרה עומדת בדרישות המוקדמות הבאות.
התקנת Google Cloud CLI
ההוראות במדריך הזה מתייחסות לשימוש ב-Google Cloud CLI כדי להגדיר מאזן עומסי רשת גלובלי חיצוני להעברת סיגנל ללא שינוי. הוראות להתקנה מופיעות במאמר התקנת ה-CLI של gcloud.
התפקידים הנדרשים
אם אתם יוצרי הפרויקט, מוקצה לכם התפקיד 'בעלים' (roles/owner). כברירת מחדל, התפקיד 'בעלים' (roles/owner) או התפקיד 'עריכה' (roles/editor) כוללים את ההרשאות שנדרשות כדי לבצע את הפעולות שמתוארות במאמר הזה.
אם אתם לא יוצרי הפרויקט, צריך להעניק את ההרשאות הנדרשות בפרויקט לחשבון המשתמש המתאים. לדוגמה, חשבון ראשי יכול להיות חשבון Google (למשתמשי קצה) או חשבון שירות.
כדי לקבל את ההרשאות שנדרשות להגדרה של מאזן עומסי רשת גלובלי חיצוני מסוג passthrough עם קצוות עורפיים של קבוצות מופעי VM, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:
-
יצירת רשת VPC, תת-רשת ורכיבים של איזון עומסים:
התפקיד 'אדמין רשתות' ב-Compute (
roles/compute.networkAdmin) -
יצירת כללי חומת אש:
אדמין אבטחה ב-Compute (
roles/compute.securityAdmin) -
יצירת מכונות וירטואליות:
התפקיד 'אדמין מכונות של Compute' (
roles/compute.instanceAdmin)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
מידע נוסף על תפקידים והרשאות ב-Cloud Load Balancing זמין במאמר תפקידים והרשאות. למידע נוסף על הגדרת מדיניות IAM עם מענקים מותנים לכללי העברה, ראו תנאי IAM לכללי העברה.
סקירה כללית של ההגדרה
בתרשים הבא מוצג מאזן עומסי רשת גלובלי חיצוני להעברת סיגנל ללא שינוי עם מערכות בק-אנד של קבוצת מופעי מכונה (VM) שנפרסו באזורים us-west1 ו-europe-west2.
בדוגמה הזו, מגדירים כלל העברה יחיד עם שתי כתובות IP חיצוניות גלובליות, אחת מכל קבוצת זמינות. כדי להבין איך פועל מאזן עומסי רשת חיצוני גלובלי מסוג passthrough, אפשר לעיין בקטע ארכיטקטורה במדריך הסקירה הכללית.
הגדרת הרשתות ורשתות המשנה
בדוגמה הזו נעשה שימוש ברשת VPC במצב מותאם אישית בשם lb-network עם תת-רשתות בשני אזורים שונים.
בטבלה הבאה מפורטת התאימות בין סוגי התעבורה של מאזן העומסים, ממשקי הרשת של מכונות וירטואליות בבק-אנד וסוגי מחסנית של רשתות משנה ב-VPC. חשוב לוודא שאתם מכירים את דרישות התאימות של ממשק הרשת של מכונת הבק-אנד עם רשתות המשנה של ה-VPC, שמפורטות במדריך לארכיטקטורה של מאזן עומסי רשת גלובלי חיצוני להעברת סיגנל ללא שינוי.
| סוג התנועה במאזן העומסים | סוג המערך של ממשק הרשת של מכונה וירטואלית בקצה העורפי | סוג ה-Stack של רשת המשנה של VPC |
|---|---|---|
| תנועה מסוג IPv4 בלבד | IPV4_ONLY |
IPV4_ONLY או IPV4_IPV6 |
IPV4_IPV6 |
IPV4_IPV6 |
|
| תנועה ב-IPv6 בלבד | IPV6_ONLY |
IPV6_ONLY או IPV4_IPV6 |
IPV4_IPV6 |
IPV4_IPV6 |
|
| תנועה ב-IPv4 וב-IPv6 | IPV4_IPV6 |
IPV4_IPV6 |
הבק-אנדים שמשמשים בדוגמה הזו נמצאים באזורים וברשתות המשנה הבאים. אמנם אתם יכולים לבחור איזה טווח כתובות IPv4 יוגדר בתת-הרשת,אבל Cloud de Confiance מקצה באופן אוטומטי טווח כתובות IPv6 לכל תת-הרשת./64
אזור:
us-west1- תת-רשת:
lb-subnet-us, עם טווח כתובות IPv4 ראשי10.1.2.0/24.
- תת-רשת:
אזור:
europe-west2- תת-רשת:
lb-subnet-eu, עם טווח כתובות IPv4 ראשי10.1.3.0/24.
- תת-רשת:
gcloud
יוצרים רשת VPC. בדוגמה הזו, רשת ה-VPC נקראת
lb-network.gcloud compute networks create lb-network \ --subnet-mode=customברשת ה-VPC (
lb-network), יוצרים תת-רשתות בשני אזורים.יוצרים תת-רשת בשם
lb-subnet-usעבור השרתים העורפיים באזורus-west1.כדי ליצור רשת משנה עם IPv4 בלבד, משתמשים בפקודה הבאה:
gcloud compute networks subnets create lb-subnet-us \ --stack-type=IPV4_ONLY \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-west1כדי ליצור רשת משנה עם פרוטוקול כפול, משתמשים בפקודה הבאה:
gcloud compute networks subnets create lb-subnet-us \ --stack-type=IPV4_IPV6 \ --ipv6-access-type=EXTERNAL \ --network=lb-network \ --range=10.1.2.0/24 \ --region=us-west1כדי ליצור רשת משנה עם כתובות IPv6 בלבד, משתמשים בפקודה הבאה:
gcloud compute networks subnets create lb-subnet-us \ --stack-type=IPV6_ONLY \ --ipv6-access-type=EXTERNAL \ --network=lb-network \ --region=us-west1יוצרים תת-רשת בשם
lb-subnet-euעבור השרתים העורפיים באזורeurope-west2.כדי ליצור רשת משנה עם IPv4 בלבד, משתמשים בפקודה הבאה:
gcloud compute networks subnets create lb-subnet-eu \ --stack-type=IPV4_ONLY \ --network=lb-network \ --range=10.1.3.0/24 \ --region=europe-west2כדי ליצור רשת משנה עם פרוטוקול כפול, משתמשים בפקודה הבאה:
gcloud compute networks subnets create lb-subnet-eu \ --stack-type=IPV4_IPV6 \ --ipv6-access-type=EXTERNAL \ --network=lb-network \ --range=10.1.3.0/24 \ --region=europe-west2כדי ליצור רשת משנה עם כתובות IPv6 בלבד, משתמשים בפקודה הבאה:
gcloud compute networks subnets create lb-subnet-eu \ --stack-type=IPV6_ONLY \ --ipv6-access-type=EXTERNAL \ --network=lb-network \ --range=10.1.3.0/24 \ --region=europe-west2
הגדרת כללים לחומת אש
כדי להגדיר את סביבת הייצור בצורה מאובטחת, צריך ליצור שני כללים נפרדים בחומת האש:
כלל חומת אש של בדיקת תקינות, שמוגדר לאפשר תעבורת נתונים נכנסת (ingress) מ:
- טווחי כתובות ה-IP של בדיקת התקינות של Google, וגם
- פרוטוקול ה-IP והיציאות שמוגדרים בבדיקת התקינות
כלל חומת אש של תעבורת משתמשים, שמוגדר לאפשר תעבורת נתונים נכנסת (ingress) מהמקורות הבאים:
- טווחים ספציפיים של כתובות IP של מקורות לקוחות שצריכים לגשת למאזן העומסים, וכן
- פרוטוקול ה-IP והיציאות שהוגדרו בכללי ההעברה
שימו לב לנקודות הבאות:
אם האפליקציה שלכם מציגה תוכן לכל משתמשי האינטרנט ללא הגבלה, צריך להגדיר טווחי כתובות IP של מקור
0.0.0.0/0לתנועת IPv4 ו-::/0לתנועת IPv6.אם הגדרתם את בדיקת תקינות כדי לבדוק את פרוטוקול ה-IP והיציאות של מאזן העומסים, אתם יכולים להגדיר כלל חומת אש יחיד על ידי מיזוג של כללי חומת האש של בדיקת התקינות ותעבורת המשתמשים.
gcloud
יוצרים כלל חומת אש שמאפשר לתעבורת TCP מכל טווחי המקור להגיע למכונות הווירטואליות של השרתים העורפיים ביציאה 80. היציאה והפרוטוקול האלה משמשים גם לאיזון עומסים וגם לבדיקות תקינות.
- כדי לאפשר את כל התנועה ב-IPv4, מריצים את הפקודה הבאה:
gcloud compute firewall-rules create firewall-allow-traffic-ipv4 \ --network=lb-network \ --target-tags=allow-traffic \ --allow=tcp:80 \ --source-ranges=0.0.0.0/0- כדי לאפשר את כל תנועת ה-IPv6, מריצים את הפקודה הבאה:
gcloud compute firewall-rules create firewall-allow-traffic-ipv6 \ --network=lb-network \ --target-tags=allow-traffic \ --allow=tcp:80 \ --source-ranges=::/0
יצירת מכונות וירטואליות של בק-אנד
בתרחיש הזה של איזון עומסים, יוצרים שתי קבוצות של מופעי מכונה מנוהלים אזוריים ב-Compute Engine באזורים us-west1-a ו-europe-west2-a.
קבוצת מופעי מכונה מנוהלים מורכבת ממופעי מכונות וירטואליות שמארחים את שרתי הבק-אנד של מאזן העומסים. למטרות הדגמה, שרתי הקצה העורפי מציגים את שמות המארחים שלהם.
קבוצת המופעים מפנה לתבנית של הגדרות מכונה, שמשמשת ליצירת מכונות וירטואליות של קצה עורפי.
בטבלה הבאה מפורטת התאימות בין סוגי התעבורה של מאזן העומסים, ממשקי הרשת של מכונות וירטואליות בבק-אנד וסוגי מחסנית של רשתות משנה ב-VPC. חשוב לוודא שאתם מכירים את דרישות התאימות של ממשק הרשת של מכונת הבק-אנד עם רשתות המשנה של ה-VPC, שמפורטות במדריך לארכיטקטורה של מאזן עומסי רשת גלובלי חיצוני להעברת סיגנל ללא שינוי.
| סוג התנועה במאזן העומסים | סוג המערך של ממשק הרשת של מכונה וירטואלית בקצה העורפי | סוג ה-Stack של רשת המשנה של VPC |
|---|---|---|
| תנועה מסוג IPv4 בלבד | IPV4_ONLY |
IPV4_ONLY או IPV4_IPV6 |
IPV4_IPV6 |
IPV4_IPV6 |
|
| תנועה ב-IPv6 בלבד | IPV6_ONLY |
IPV6_ONLY או IPV4_IPV6 |
IPV4_IPV6 |
IPV4_IPV6 |
|
| תנועה ב-IPv4 וב-IPv6 | IPV4_IPV6 |
IPV4_IPV6 |
יצירת תבנית של הגדרות מכונה
בדוגמה הזו, יוצרים תבניות של מכונות אזוריות באזורים us-west1 ו-europe-west2.
gcloud
יצירת תבנית של הגדרות מכונה באזור
us-west1.כדי ליצור מכונות וירטואליות של קצה עורפי עם ממשקי רשת IPv4 בלבד, משתמשים בפקודה הבאה.
gcloud compute instance-templates create ig-template-us \ --region=us-west1 \ --network=lb-network \ --subnet=lb-subnet-us \ --stack-type=IPV4_ONLY \ --tags=allow-traffic \ --image-family=debian-12 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl 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 systemctl restart apache2'כדי ליצור מכונות וירטואליות של קצה עורפי עם ממשקי רשת דו-ערכיים, משתמשים בפקודה הבאה.
gcloud compute instance-templates create ig-template-us \ --region=us-west1 \ --network=lb-network \ --subnet=lb-subnet-us \ --ipv6-network-tier=PREMIUM \ --stack-type=IPV4_IPV6 \ --tags=allow-traffic \ --image-family=debian-12 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl 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 systemctl restart apache2'כדי ליצור מכונות וירטואליות של בק-אנד עם ממשקי רשת IPv6 בלבד, משתמשים בפקודה הבאה.
gcloud compute instance-templates create ig-template-us \ --region=us-west1 \ --network=lb-network \ --subnet=lb-subnet-us \ --ipv6-network-tier=PREMIUM \ --stack-type=IPV6_ONLY \ --tags=allow-traffic \ --image-family=debian-12 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl 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 systemctl restart apache2'יצירת תבנית של הגדרות מכונה באזור
europe-west2.כדי ליצור מכונות וירטואליות של קצה עורפי עם ממשקי רשת IPv4 בלבד, משתמשים בפקודה הבאה.
gcloud compute instance-templates create ig-template-eu \ --region=europe-west2 \ --network=lb-network \ --subnet=lb-subnet-eu \ --stack-type=IPV4_ONLY \ --tags=allow-traffic \ --image-family=debian-12 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl 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 systemctl restart apache2'כדי ליצור מכונות וירטואליות של קצה עורפי עם ממשקי רשת דו-ערכיים, משתמשים בפקודה הבאה.
gcloud compute instance-templates create ig-template-eu \ --region=europe-west2 \ --network=lb-network \ --subnet=lb-subnet-eu \ --ipv6-network-tier=PREMIUM \ --stack-type=IPV4_IPV6 \ --tags=allow-traffic \ --image-family=debian-12 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl 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 systemctl restart apache2'כדי ליצור מכונות וירטואליות של בק-אנד עם ממשקי רשת IPv6 בלבד, משתמשים בפקודה הבאה.
gcloud compute instance-templates create ig-template-eu \ --region=europe-west2 \ --network=lb-network \ --subnet=lb-subnet-eu \ --ipv6-network-tier=PREMIUM \ --stack-type=IPV6_ONLY \ --tags=allow-traffic \ --image-family=debian-12 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl 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 systemctl restart apache2'
יצירת קבוצות של מופעי מכונה מנוהלים לפי אזור
בדוגמה הזו, יוצרים שתי קבוצות של מופעי מכונה מנוהלים באזורים – אחת באזור us-west1-a והשנייה באזורים europe-west2-a.
gcloud
יוצרים קבוצת מופעי מכונה מנוהלים באזור
us-west1-a.gcloud compute instance-groups managed create mig-us \ --template=ig-template-us \ --size=2 \ --zone=us-west1-a
יוצרים קבוצת מופעי מכונה מנוהלים באזור
europe-west2-a.gcloud compute instance-groups managed create mig-eu \ --template=ig-template-eu \ --size=2 \ --zone=europe-west2-a
שמירת כתובות IP חיצוניות גלובליות
מאזן עומסי רשת גלובלי חיצוני להעברת סיגנל ללא שינוי דורש שתי כתובות IP חיצוניות גלובליות, אחת מכל קבוצת זמינות. שתי כתובות ה-IP האלה מצורפות לכלל ההעברה של מאזן העומסים.
במאזן עומסי רשת גלובלי חיצוני להעברת סיגנל ללא שינוי, כתובות ה-IP של כלל ההעברה מנותקות לחלוטין מרשתות המשנה של ה-VPC. כתובות ה-IP שייכות למאגרים גלובליים של כתובות IP חיצוניות בבעלות Google או לקידומות ציבוריות גלובליות של IPv4 חיצוניות שהוקצו על ידי BYOIP מקבוצות זמינות נפרדות, והן לא משויכות לרשת משנה של VPC.
כשמגדירים כלל העברה של IPv6, כתובות ה-IP של כלל ההעברה מוקצות כקידומות /96.
gcloud
לתנועת IPv4:
שומרים את כתובת ה-IP החיצונית הגלובלית הראשונה בשם
lb-ipv4-ag0בקבוצת הזמינות 0.gcloud beta compute addresses create lb-ipv4-ag0 \ --global \ --purpose=PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 \ --ip-version=IPV4שומרים את כתובת ה-IP החיצונית הגלובלית השנייה
lb-ipv4-ag1בקבוצת הזמינות 1.gcloud beta compute addresses create lb-ipv4-ag1 \ --global \ --purpose=PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1 \ --ip-version=IPV4
לתנועת IPv6:
שומרים את כתובת ה-IP החיצונית הגלובלית הראשונה בשם
lb-ipv6-ag0בקבוצת הזמינות 0.gcloud beta compute addresses create lb-ipv6-ag0 \ --global \ --purpose=PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP0 \ --ip-version=IPV6שומרים את כתובת ה-IP החיצונית הגלובלית השנייה
lb-ipv6-ag1בקבוצת הזמינות 1.gcloud beta compute addresses create lb-ipv6-ag1 \ --global \ --purpose=PASSTHROUGH_LOAD_BALANCER_AVAILABILITY_GROUP1 \ --ip-version=IPV6
הגדרת מאזן העומסים
הגדרה של מאזן עומסי רשת גלובלי חיצוני להעברת סיגנל ללא שינוי כוללת יצירה של בדיקת תקינות, שירות לקצה העורפי וכלל העברה.
gcloud
יוצרים בדיקת תקינות של TCP שמוגדרת ליצירת
TCP:80בקשות לבדיקות תקינות (probes).gcloud compute health-checks create tcp hc-tcp-80 \ --global \ --port=80
יוצרים שירות קצה עורפי גלובלי באמצעות סכמת איזון העומסים
EXTERNAL_PASSTHROUGH.gcloud beta compute backend-services create lb-backend-service \ --load-balancing-scheme=EXTERNAL_PASSTHROUGH \ --health-checks=hc-tcp-80 \ --global
מוסיפים את קבוצות המכונות כקצה עורפי לשירות הקצה העורפי.
מוסיפים את קבוצת המכונות באזור
us-west1-aלשירות לקצה העורפי.gcloud beta compute backend-services add-backend lb-backend-service \ --instance-group=mig-us \ --instance-group-zone=us-west1-a \ --balancing-mode=UTILIZATION \ --max-utilization=0.7 \ --globalמוסיפים את קבוצת המופעים באזור
europe-west2-aלשירות ה-Backend.gcloud beta compute backend-services add-backend lb-backend-service \ --instance-group=mig-eu \ --instance-group-zone=europe-west2-a \ --balancing-mode=UTILIZATION \ --max-utilization=0.7 \ --globalיוצרים כלל העברה גלובלי להצגת תעבורת נתונים של
TCP:80. צריך ליצור שני כללי העברה כדי לטפל בתנועה של IPv4 ו-IPv6.מוודאים שגרסת ה-IP של כלל ההעברה תואמת לסוג המצבור של ממשקי הרשת של מכונת ה-VM בקצה העורפי.
כלל ההעברה מפנה לכתובות IP מכל קבוצת זמינות.
לתנועת IPv4:
gcloud beta compute forwarding-rules create lb-forwarding-rule-ipv4 \ --load-balancing-scheme=EXTERNAL_PASSTHROUGH \ --ip-protocol=TCP \ --ports=80 \ --backend-service=lb-backend-service \ --global \ --ip-addresses=lb-ipv4-ag0,lb-ipv4-ag1
לתנועת IPv6:
gcloud beta compute forwarding-rules create lb-forwarding-rule-ipv6 \ --load-balancing-scheme=EXTERNAL_PASSTHROUGH \ --ip-protocol=TCP \ --ports=80 \ --backend-service=lb-backend-service \ --global \ --ip-addresses=lb-ipv6-ag0,lb-ipv6-ag1
בדיקת מאזן העומסים
קבלת כתובות ה-IP השמורות שמצורפות לכלל ההעברה.
gcloud beta compute forwarding-rules describe lb-forwarding-rule-ipv4 \ --globalהפונקציה מחזירה שתי כתובות IP, אחת לכל קבוצת זמינות. כתובות ה-IP האלה נקראות
IP_ADDRESS_AVAILABILITY_GROUP_0ו-IP_ADDRESS_AVAILABILITY_GROUP_1.הפניית תנועה לאחת מכתובות ה-IP.
curl http://IP_ADDRESS_AVAILABILITY_GROUP_0
curl http://IP_ADDRESS_AVAILABILITY_GROUP_1
אמורות להופיע תשובות ממכונות וירטואליות בעורף (backend) באזורים שונים, בהתאם למיקום ולתקינות העורף.
בדיקה של טבלת הניתוב המקומית לכתובות ה-IP של מאזן העומסים
טבלאות הניתוב המקומיות של מכונות ה-VM בבק-אנד מכילות את כתובות ה-IP של מאזן עומסי הרשת הגלובלי החיצוני להעברת סיגנל ללא שינוי.
כדי לבדוק את המסלולים המקומיים במכונת ה-VM של השרת העורפי, מתחברים למכונת ה-VM של השרת העורפי באמצעות SSH ומריצים את הפקודה הבאה:
ip route list table local
הפלט אמור להיראות כך:
local 10.1.2.5 dev ens4 proto kernel scope host src 10.1.2.5 local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1 local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1 broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1 local 136.124.69.214 dev ens4 proto 66 scope host local 136.124.83.205 dev ens4 proto 66 scope host
בדוגמה הקודמת, 136.124.69.214 ו-136.124.83.205 הם כתובות ה-IP שהוקצו לכלל ההעברה של איזון העומסים. הערכים local 136.124.69.214 dev ens4 proto 66 scope host ו-local 136.124.83.205
dev ens4 proto 66 scope host בטבלת הניתוב המקומית של המכונה הווירטואלית מאפשרים למערכת לקבל חבילות שמיועדות לכתובות ה-IP של מאזן העומסים. Cloud de Confiance סביבת האורחים אחראית להוספת הרשומה הזו.
הרשומה המקומית בטבלת הניתוב במכונת ה-VM של ה-Backend מקבלת את החבילה למסירה למארח המקומי, שבו סטאק הרשת מעביר אותה לאפליקציה שממתינה לה. לאחר מכן, חבילות התגובה מהאפליקציה נשלחות ישירות ללקוח.
שימו לב שכתובת ה-IP של איזון העומסים לא מוגדרת בפועל בממשק הרשת של המכונה הווירטואלית. כדי לבדוק זאת, מריצים את הפקודה הבאה:
ip addr list
הפלט אמור להיראות כך: כתובות ה-IP (136.124.69.214 ו-136.124.83.205) מופיעות בטבלת הניתוב המקומית, אבל הן לא מוגדרות בממשק הרשת.
1: lo:mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host noprefixroute valid_lft forever preferred_lft forever 2: ens4: mtu 1460 qdisc fq_codel state UP group default qlen 1000 link/ether 42:01:0a:01:02:0d brd ff:ff:ff:ff:ff:ff altname enp0s4 inet 10.1.2.13/32 metric 100 scope global dynamic ens4 valid_lft 84283sec preferred_lft 84283sec inet6 fe80::4001:aff:fe01:20d/64 scope link valid_lft forever preferred_lft forever
צפייה בכללי העברה של רשתות משנה
כשיוצרים כלל העברה למאזן עומסי רשת גלובלי חיצוני להעברת סיגנל ללא שינוי,Cloud de Confiance יוצר שני כללי העברה צאצאים לקריאה בלבד, אחד לכל קבוצת זמינות, כדי להבטיח זמינות גבוהה.
כדי להציג את כללי ההעברה של כלל ההעברה, מריצים את הפקודה הבאה:
gcloud beta compute forwarding-rules list
הפקודה הזו מציגה רשימה של כל כללי ההעברה בפרויקט.
לכללי העברת הודעות של חשבונות צאצאים שמוגדרים לקריאה בלבד מתווספים הערכים -ag0 ו--ag1 לשם של כלל העברת ההודעות של חשבון האב.
אי אפשר לבצע שאילתות או סינון של מדדי מעקב באמצעות כלל העברת הדואר הגלובלי של ההורה שאתם יוצרים, אלא באמצעות כללי העברת הדואר של הצאצא. הסיבה לכך היא שכל כלל להעברת תנועה של צומת צאצא בקבוצת הזמינות שלו מטמיע את התנועה המאוזנת בעומס ואת בדיקות תקינות.
אפשרויות הגדרה נוספות
בסעיף הזה מוסבר איך להתאים אישית עוד יותר את מאזן עומסי הרשת הגלובלי החיצוני להעברת סיגנל ללא שינוי, על סמך דוגמת ההגדרה. המשימות האלה הן אופציונליות. אפשר לבצע אותן בכל סדר.
הגדרת זיקה לסשן
כברירת מחדל, שירות הקצה העורפי של מאזן העומסים נוצר עם ערך של זיקה לסשן שמוגדר ל-NONE. בקטע הזה מוסבר איך לעדכן את שירות הקצה העורפי כדי לשנות את הגדרת הזיקה לסשן (session affinity) למאזן העומסים.
gcloud
כדי לעדכן את הזיקה לסשן (session affinity) לשירות לקצה העורפי, משתמשים בפקודה gcloud beta compute backend-services update הבאה:
gcloud beta compute backend-services update BACKEND_SERVICE \
--global \
--session-affinity=SESSION_AFFINITY_OPTION
מחליפים את מה שכתוב בשדות הבאים:
-
BACKEND_SERVICE: השירות לקצה העורפי שאתם מעדכנים -
SESSION_AFFINITY_OPTION: האפשרות של זיקה לסשן שרוצים להגדיר
שינוי התנהגות ההתמדה של החיבור
כברירת מחדל, התנהגות החיבור המתמשך של מאזן עומסים מוגדרת ל-DEFAULT_FOR_PROTOCOL. בקטע הזה מוסבר איך לשנות את אופן ההתנהגות של מאזן העומסים בנוגע לחיבורים מתמשכים.
gcloud
משתמשים בפקודה gcloud beta compute backend-services update הבאה כדי לעדכן את אופן הפעולה של החיבור:
gcloud beta compute backend-services update BACKEND_SERVICE \
--global \
--connection-persistence-on-unhealthy-backends=CONNECTION_PERSISTENCE_BEHAVIOR
מחליפים את מה שכתוב בשדות הבאים:
-
BACKEND_SERVICE: השירות לקצה העורפי שאתם מעדכנים -
CONNECTION_PERSISTENCE_BEHAVIOR: התנהגות החיבור כשהשרתים העורפיים לא תקינים.