הגדרה של מאזן עומסים קלאסי של אפליקציות עם קישוריות היברידית

בדף הזה מוצג תרשים שממחיש איך פורסים את מאזן העומסים של האפליקציות בגרסה הקלאסית כדי לאזן את העומס של התנועה לנקודות קצה ברשת שנמצאות בפריסה מקומית או בעננים ציבוריים אחרים, ושאפשר להגיע אליהן באמצעות קישוריות היברידית.

אחרי שתשלימו את המשימות האלה, תוכלו להפעיל שירותים נוספים (כמו Cloud CDN ו-Google Cloud Armor) ותכונות מתקדמות לניהול תנועה.

אם עדיין לא עשיתם זאת, כדאי לעיין בסקירה הכללית של קבוצות NEGs עם קישוריות היברידית כדי להבין את דרישות הרשת להגדרת איזון עומסים היברידי.

סקירה כללית של ההגדרה

בדוגמה שבדף הזה מוגדרת פריסה לדוגמה מהסוג הבא:

דוגמה למאזן עומסים חיצוני של אפליקציות (ALB) לקישוריות היברידית.
דוגמה למאזן עומסים חיצוני של אפליקציות (ALB) לקישוריות היברידית (לחצו כדי להגדיל).

צריך להגדיר קישוריות היברידית לפני שמנסים להגדיר פריסה היברידית של איזון עומסים. המסמך הזה לא כולל את הגדרת הקישוריות ההיברידית.

בהתאם למוצר הקישוריות ההיברידית שבחרתם (Cloud VPN או Cloud Interconnect (מוקדש או שותף)), צריך להשתמש במסמרי העזרה הרלוונטיים של המוצר כדי להגדיר אותו.

הרשאות

כדי להגדיר איזון עומסים היברידי, צריכות להיות לכם ההרשאות הבאות:

  • מופעל Google Cloud

  • בסביבה המקומית או בסביבה אחרת שאינה בענן שלGoogle Cloud

    • הרשאות להגדרת נקודות קצה ברשת שמאפשרות לשירותים בסביבה המקומית או בסביבות ענן אחרות להיות נגישים מ-Google Cloud באמצעות שילוב של IP:Port. למידע נוסף, אפשר לפנות לאדמין של הרשת בסביבה שלכם.
    • הרשאות ליצור כללי חומת אש בסביבה המקומית או בסביבות ענן אחרות כדי לאפשר לניסויי בדיקת תקינות של Google להגיע לנקודות הקצה.

בנוסף, כדי לבצע את ההוראות בדף הזה, צריך ליצור NEG עם קישוריות היברידית, מאזן עומסים (LB) ו-NEGs אזוריים (ונקודות הקצה שלהם) שישמשו כבק-אנדים מבוססי Google Cloudלמאזן העומסים.

צריך להיות לכם תפקיד בעלים או עורך בפרויקט, או תפקידי IAM של Compute Engine הבאים.

משימה התפקיד הנדרש
יצירת רשתות, רשתות משנה ורכיבים של מאזן עומסים אדמין ברשת Compute (roles/compute.networkAdmin)
הוספה והסרה של כללים לחומת האש אדמין לענייני אבטחה ב-Compute (roles/compute.securityAdmin)
יצירת מופעים אדמין מכונות של Compute (roles/compute.instanceAdmin)

אופציונלי: שימוש בכתובות BYOIP

באמצעות העברת כתובות IP משלכם (BYOIP), אתם יכולים לייבא כתובות ציבוריות משלכם אלGoogle Cloud כדי להשתמש בכתובות עם משאבי Google Cloud . לדוגמה, אם מייבאים כתובות IPv4 משלכם, אפשר להקצות אחת מהן לכלל ההעברה כשמגדירים את מאזן העומסים. כשפועלים לפי ההוראות במסמך הזה כדי , צריך לספק את כתובת ה-BYOIP ככתובת ה-IP.

מידע נוסף על השימוש ב-BYOIP זמין במאמר בנושא העברת כתובות IP משלכם.

הגדרת קישוריות היברידית

הסביבה שלכם Google Cloud והסביבה המקומית או סביבות ענן אחרות צריכות להיות מחוברות באמצעות קישוריות היברידית, על ידי שימוש בצירופים ל-VLAN של Cloud Interconnect או במנהרות Cloud VPN עם Cloud Router או נתבים וירטואליים. מומלץ להשתמש בחיבור עם זמינות גבוהה.

‫Cloud Router שמופעל בו ניתוב דינמי גלובלי לומד על נקודת הקצה הספציפית באמצעות פרוטוקול Border Gateway Protocol ‏ (BGP) ומתכנת אותה ברשת ה-VPC שלכם Google Cloud . אין תמיכה בניתוב דינמי אזורי. אין תמיכה גם בנתיבים סטטיים.

אתם יכולים להשתמש באותה רשת או ברשת VPC אחרת באותו פרויקט כדי להגדיר גם רשת היברידית (Cloud Interconnect או Cloud VPN או מכונה וירטואלית של נתב) וגם מאזן עומסים. חשוב לזכור:

  • אם משתמשים ברשתות VPC שונות, צריך לקשר בין שתי הרשתות באמצעות VPC Network Peering או להגדיר אותן כרשתות מסוג spoke ב-VPC באותו מרכז NCC.

  • אם אתם משתמשים באותה רשת VPC, ודאו שטווח ה-CIDR של רשת המשנה של רשת ה-VPC לא מתנגש עם טווחי ה-CIDR המרוחקים. כשכתובות IP חופפות, נתיבי רשת משנה מקבלים עדיפות על פני קישוריות מרחוק.

הוראות מפורטות זמינות במאמרים הבאים:

הגדרת הסביבה מחוץ ל- Google Cloud

בצע את השלבים הבאים כדי להגדיר את הסביבה המקומית או סביבת ענן אחרת לאיזון עומסים היברידי:

  • מגדירים נקודות קצה ברשת כדי לחשוף שירותים מקומיים ל-Google Cloud (IP:Port).
  • מגדירים כללים לחומת האש בסביבה המקומית או בסביבת ענן אחרת.
  • מגדירים את Cloud Router כך שיפרסם מסלולים מסוימים שנדרשים בסביבה הפרטית.

הגדרת נקודות קצה ברשת

אחרי שמגדירים קישוריות היברידית, מגדירים נקודות קצה אחת או יותר ברשת בסביבה המקומית או בסביבות ענן אחרות שאפשר להגיע אליהן דרך Cloud Interconnect או Cloud VPN או נתב וירטואלי באמצעות שילוב של IP:port. השילוב IP:port מוגדר כנקודת קצה אחת או יותר עבור ה-NEG של הקישוריות ההיברידית שנוצר בהמשך התהליך ב- Google Cloud .

אם יש כמה נתיבים לנקודת הקצה של ה-IP, הניתוב מתבצע לפי ההתנהגות שמתוארת בסקירה הכללית של Cloud Router.

הגדרת כללים לחומת האש

צריך ליצור את כללי חומת האש הבאים בסביבה המקומית או בסביבת ענן אחרת:

מגדירים את Cloud Router כך שיפרסם את טווחי כתובות ה-IP המותאמים אישית הבאים בסביבה המקומית או בסביבת ענן אחרת:

  • הטווחים שבהם משתמשים בבדיקות התקינות של Google: 35.191.0.0/16 ו-130.211.0.0/22.

הגדרת הסביבה Google Cloud

בשלבים הבאים, חשוב להשתמש באותה רשת VPC (שנקראת NETWORK בהליך הזה) ששימשה להגדרת קישוריות היברידית בין הסביבות.

יצירת רשת המשנה לשרתי הקצה העורפי

תת-הרשת הזו משמשת ליצירת בק-אנדים של קבוצות אזוריות של נקודות קצה ברשת (NEG) של מאזן העומסים, הקצה הקדמי וכתובת ה-IP הפנימית.

יוצרים את רשת המשנה הזו ברשת ששימשה להגדרת קישוריות היברידית בין הסביבות.NETWORK

המסוף

  1. נכנסים לדף VPC networks במסוף Google Cloud .

    מעבר לרשתות VPC

  2. עוברים לרשת ששימשה להגדרת קישוריות היברידית בין הסביבות.

  3. בקטע Subnets (רשתות משנה):

    1. מגדירים את מצב יצירת רשתות משנה לבהתאמה אישית.
    2. בקטע New subnet (רשת משנה חדשה), מזינים את הפרטים הבאים:
      • Name (שם): LB_SUBNET_NAME
      • אזור: REGION
      • טווח כתובות IP: LB_SUBNET_RANGE
    3. לוחצים על סיום.
  4. לוחצים על יצירה.

gcloud

יוצרים רשת משנה ברשת NETWORK ששימשה להגדרת קישוריות היברידית בין הסביבות.

gcloud compute networks subnets create LB_SUBNET_NAME \
    --network=NETWORK \
    --range=LB_SUBNET_RANGE \
    --region=REGION

יצירת כלל לחומת האש

בדוגמה הזו, יוצרים את כלל חומת האש הבא:

  • fw-allow-health-check: כלל תעבורה נכנסת (ingress) שחל על המופעים שמתבצע לגביהם איזון עומסים, שמאפשר תעבורת נתונים ממאזן העומסים וממערכות בדיקת התקינות (Google Cloud ) (130.211.0.0/22 ו-35.191.0.0/16). בדוגמה הזו נעשה שימוש בתג היעד allow-health-check כדי לזהות את המכונות הווירטואליות של ה-Backend שאליהן הכלל צריך לחול. Google Cloud

המסוף

  1. נכנסים לדף Firewall policies במסוף Google Cloud .

    לדף Firewall policies

  2. לוחצים על יצירת כלל לחומת האש:

    1. מזינים שם של fw-allow-health-check.
    2. בקטע רשת, בוחרים באפשרות NETWORK.
    3. בקטע יעדים, בוחרים באפשרות תגי יעד ספציפיים.
    4. בשדה Target tags [תגי יעד] כותבים allow-health-check.
    5. מגדירים את Source filter בתור IPv4 ranges.
    6. מגדירים את Source IPv4 ranges (טווחים של כתובות IPv4 של המקור) ל-130.211.0.0/22 ול-35.191.0.0/16.
    7. בקטע Protocols and ports (פרוטוקולים ויציאות), בוחרים באפשרות Specified protocols and ports (פרוטוקולים ויציאות ספציפיים).
    8. מסמנים את התיבה לצד TCP ומקלידים 80 כמספרי היציאות.
  3. לוחצים על יצירה.

gcloud

  1. יוצרים את הכלל fw-allow-health-check-and-proxy כדי לאפשר למאזן העומסים ולבדיקות התקינות לתקשר עם מכונות קצה עורפיות ביציאת TCP‏ Google Cloud .80

    מחליפים את NETWORK בשם של רשת ה-VPC שמשמשת להגדרת קישוריות היברידית.

    gcloud compute firewall-rules create fw-allow-health-check \
        --network=NETWORK \
        --action=allow \
        --direction=ingress \
        --target-tags=allow-health-check \
        --source-ranges=130.211.0.0/22,35.191.0.0/16 \
        --rules=tcp:80
    

הגדרת קבוצת ה-NEG האזורית

לשרתי קצה עורפיים שמבוססים על Google Cloud, מומלץ להגדיר כמה קבוצות אזוריות של נקודות קצה ברשת (NEG) באותו אזור שבו הגדרתם קישוריות היברידית.

בדוגמה הזו, הגדרנו NEG אזורי (עם נקודות קצה מסוג GCE_VM_IP_PORT) באזור REGION. קודם יוצרים את המכונות הווירטואליות באזור GCP_NEG_ZONE. לאחר מכן, יוצרים NEG אזורי באותו GCP_NEG_ZONE ומוסיפים את נקודות הקצה ברשת של המכונות הווירטואליות ל-NEG.

יצירת מכונות וירטואליות

המסוף

  1. נכנסים לדף VM instances במסוף Google Cloud .
    כניסה לדף VM instances

  2. לוחצים על Create instance.

  3. מגדירים את Name לערך vm-a1.

  4. בוחרים REGION בשדה אזור.

  5. בשדה Zone (אזור), בוחרים באפשרות GCP_NEG_ZONE.

  6. בקטע Boot disk מוודאים שהאפשרות Debian GNU/Linux 12 (bookworm)‎ מסומנת באפשרויות של דיסק האתחול. לוחצים על בחירה כדי לשנות את התמונה, אם צריך.

  7. לוחצים על אפשרויות מתקדמות ומבצעים את השינויים הבאים:

    • לוחצים על Networking ומוסיפים את Network tags (תגי רשת) הבאים: allow-health-check.
    • בקטע Network interfaces, לוחצים על Edit , מבצעים את השינויים הבאים ולוחצים על Done:
      • רשת: NETWORK
      • Subnet: LB_SUBNET_NAME
      • סוג מחסנית IP: IPv4 ו-IPv6 (מחסנית כפולה)
    • לוחצים על ניהול. בשדה סקריפט לטעינה בזמן ההפעלה, מעתיקים ומדביקים את תוכן הסקריפט הבא. תוכן הסקריפט זהה בכל ארבע המכונות הווירטואליות:

      #! /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
      
  8. לוחצים על יצירה.

  9. חוזרים על השלבים הבאים כדי ליצור מכונה וירטואלית שנייה, באמצעות השילוב הבא של שם ואזור:

    • שם: vm-a2, אזור: GCP_NEG_ZONE

gcloud

כדי ליצור את המכונות הווירטואליות, מריצים את הפקודה הבאה פעמיים, ומשתמשים בשילובים האלה לשם של המכונה הווירטואלית והאזור שלה. תוכן הסקריפט זהה בשתי המכונות הווירטואליות.

  • VM_NAME מתוך vm-a1 וכל אזור GCP_NEG_ZONE שתבחרו
  • VM_NAME של vm-a2 ובאותו אזור GCP_NEG_ZONE

    כדי לתמוך בתנועה של IPv4, מריצים את הפקודה הבאה:

    gcloud compute instances create VM_NAME \
        --zone=GCP_NEG_ZONE \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --tags=allow-health-check \
        --ipv6-network-tier=PREMIUM
        --stack-type=IPV4_ONLY \
        --subnet=LB_SUBNET_NAME \
        --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'
    

יצירת ה-NEG האזורי

המסוף

כדי ליצור קבוצת נקודות קצה ברשת אזורית:

  1. נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
    כניסה לדף Network Endpoint Groups
  2. לוחצים על יצירת קבוצת נקודות קצה ברשת.
  3. מזינים שם ל-NEG האזורי. בפרוצדורה הזו, הוא נקרא GCP_NEG_NAME.
  4. בוחרים את סוג קבוצת נקודות הקצה ברשת: קבוצת נקודות קצה ברשת (אזורית).
  5. בוחרים את הרשת: NETWORK
  6. בוחרים את תת-הרשת: LB_SUBNET_NAME
  7. בוחרים את האזור: GCP_NEG_ZONE
  8. מזינים את יציאת ברירת המחדל: 80.
  9. לוחצים על יצירה.

מוסיפים נקודות קצה ל-NEG האזורי:

  1. נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
    כניסה לדף Network endpoint groups
  2. לוחצים על Name (שם) של קבוצת נקודות הקצה ברשת שנוצרה בשלב הקודם (GCP_NEG_NAME). מוצג הדף Network endpoint group details (פרטים של קבוצת נקודות הקצה ברשת).
  3. בקטע Network endpoints in this group (נקודות קצה ברשת בקבוצה הזו), לוחצים על Add network endpoint (הוספת נקודת קצה ברשת). מוצג הדף Add network endpoint.
  4. בוחרים מכונה וירטואלית כדי להוסיף את כתובות ה-IP הפנימיות שלה כנקודות קצה ברשת. בקטע Network interface (ממשק רשת), מוצגים השם, האזור ורשת המשנה של מכונת ה-VM.
  5. בשדה כתובת IPv4, מזינים את כתובת ה-IPv4 של נקודת הקצה החדשה ברשת.
  6. בוחרים את סוג הניוד.
    1. אם בוחרים באפשרות ברירת מחדל, נקודת הקצה משתמשת ביציאת ברירת המחדל 80 לכל נקודות הקצה בקבוצת נקודות הקצה ברשת. זה מספיק לדוגמה שלנו כי שרת Apache משרת בקשות ביציאה 80.
    2. אם בוחרים באפשרות בהתאמה אישית, מזינים את מספר היציאה של נקודת הקצה שבה רוצים להשתמש.
  7. כדי להוסיף עוד נקודות קצה, לוחצים על הוספת נקודת קצה ברשת וחוזרים על השלבים הקודמים.
  8. אחרי שמוסיפים את כל נקודות הקצה, לוחצים על יצירה.

gcloud

  1. יוצרים NEG אזורי (עם GCE_VM_IP_PORT נקודות קצה) באמצעות הפקודה gcloud compute network-endpoint-groups create:

    gcloud compute network-endpoint-groups create GCP_NEG_NAME \
        --network-endpoint-type=GCE_VM_IP_PORT \
        --zone=GCP_NEG_ZONE \
        --network=NETWORK \
        --subnet=LB_SUBNET_NAME
    

    אפשר לציין --default-port כשיוצרים את ה-NEG, או לציין מספר יציאה לכל נקודת קצה, כמו שמוצג בשלב הבא.

  2. מוסיפים נקודות קצה של ערימה יחידה ל-GCP_NEG_NAME.

    gcloud compute network-endpoint-groups update GCP_NEG_NAME \
        --zone=GCP_NEG_ZONE \
        --add-endpoint='instance=vm-a1,port=80' \
        --add-endpoint='instance=vm-a2,port=80'
    

הגדרת NEG קישוריות היברידית

כשיוצרים את ה-NEG, צריך להשתמש בZONE שממזער את המרחק הגיאוגרפי בין Google Cloud לבין הסביבה המקומית או סביבת ענן אחרת. לדוגמה, אם אתם מארחים שירות בסביבה מקומית בפרנקפורט, גרמניה, אתם יכולים לציין את אזור europe-west3-a Google Cloud כשאתם יוצרים את ה-NEG.

בנוסף, אם אתם משתמשים ב-Cloud Interconnect, ה-ZONE שמשמש ליצירת ה-NEG צריך להיות באותו אזור שבו הוגדר צירוף ה-VLAN של Cloud Interconnect לקישוריות היברידית.

רשימת האזורים והתחומים הזמינים מופיעה במסמכי העזרה של Compute Engine: אזורים ותחומים זמינים.

המסוף

כדי ליצור קבוצה של נקודות קצה ברשת עם קישוריות היברידית:

  1. נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
    כניסה לדף Network endpoint groups
  2. לוחצים על יצירת קבוצת נקודות קצה ברשת.
  3. מזינים שם ל-NEG ההיברידי. בפרוצדורה הזו, הוא נקרא ON_PREM_NEG_NAME.
  4. בוחרים את סוג קבוצת נקודות הקצה ברשת: קבוצה של נקודות קצה ברשת לקישוריות היברידית (אזורית).
  5. בוחרים את הרשת: NETWORK
  6. בוחרים את רשת המשנה: LB_SUBNET_NAME
  7. בוחרים את האזור: ON_PREM_NEG_ZONE
  8. מזינים את יציאת ברירת המחדל.
  9. לוחצים על יצירה.

מוסיפים נקודות קצה ל-NEG של הקישוריות ההיברידית:

  1. נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
    כניסה לדף Network Endpoint Groups
  2. לוחצים על Name של קבוצת נקודות הקצה ברשת שנוצרה בשלב הקודם (ON_PREM_NEG_NAME). מוצג הדף Network endpoint group detail.
  3. בקטע Network endpoints in this group (נקודות קצה ברשת בקבוצה הזו), לוחצים על Add network endpoint (הוספת נקודת קצה ברשת). מוצג הדף Add network endpoint.
  4. מזינים את כתובת ה-IP של נקודת הקצה החדשה ברשת.
  5. בוחרים את סוג הניוד.
    1. אם בוחרים באפשרות ברירת מחדל, נקודת הקצה משתמשת ביציאת ברירת המחדל לכל נקודות הקצה בקבוצת נקודות הקצה ברשת.
    2. אם בוחרים באפשרות בהתאמה אישית, אפשר להזין מספר יציאה אחר לשימוש בנקודת הקצה.
  6. כדי להוסיף עוד נקודות קצה, לוחצים על הוספת נקודת קצה ברשת וחוזרים על השלבים הקודמים.
  7. אחרי שמוסיפים את כל נקודות הקצה שאינןGoogle Cloud , לוחצים על יצירה.

gcloud

  1. יוצרים NEG קישוריות היברידית באמצעות הפקודה gcloud compute network-endpoint-groups create.

    gcloud compute network-endpoint-groups create ON_PREM_NEG_NAME \
        --network-endpoint-type=NON_GCP_PRIVATE_IP_PORT \
        --zone=ON_PREM_NEG_ZONE \
        --network=NETWORK
    
  2. מוסיפים את נקודת הקצה אל on-prem-neg:

    gcloud compute network-endpoint-groups update ON_PREM_NEG_NAME \
        --zone=ON_PREM_NEG_ZONE \
        --add-endpoint="ip=ON_PREM_IP_ADDRESS_1,port=PORT_1" \
        --add-endpoint="ip=ON_PREM_IP_ADDRESS_2,port=PORT_2"
    

אפשר להשתמש בפקודה הזו כדי להוסיף את נקודות הקצה ברשת שהגדרתם קודם לכן במקום או בסביבת הענן. חוזרים על שלב --add-endpoint כמה פעמים שצריך.

במקרה הצורך, אפשר לחזור על השלבים האלה כדי ליצור כמה קבוצות היברידיות של ישויות בעלות שם.

הגדרת מאזן העומסים

המסוף

gcloud

  1. יוצרים כתובת IP חיצונית סטטית גלובלית שאליה לקוחות חיצוניים שולחים תעבורת נתונים.
      gcloud compute addresses create LB_IP_ADDRESS_NAME \
          --global
      
  2. יוצרים בדיקת תקינות לשרתי הקצה העורפיים.
      gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME \
          --use-serving-port
      
  3. יוצרים שירות לקצה העורפי. מוסיפים את ה-NEG האזורי ואת ה-NEG של הקישוריות ההיברידית כשירותי קצה עורפיים לשירות הקצה העורפי הזה.
  4.   gcloud compute backend-services create BACKEND_SERVICE \
          --health-checks=HTTP_HEALTH_CHECK_NAME \
          --global
      
  5. מוסיפים את ה-NEG האזורי כקצה עורפי לשירות הקצה העורפי:
      gcloud compute backend-services add-backend BACKEND_SERVICE \
          --global \
          --balancing-mode=RATE \
          --max-rate-per-endpoint=MAX_REQUEST_RATE_PER_ENDPOINT \
          --network-endpoint-group=GCP_NEG_NAME \
          --network-endpoint-group-zone=GCP_NEG_ZONE
       
    פרטים על הגדרת מצב האיזון זמינים במסמכי התיעוד של ה-CLI של gcloud בנושא הפרמטר --max-rate-per-endpoint.
  6. מוסיפים את ה-NEG ההיברידי כקצה עורפי לשירות הקצה העורפי:
      gcloud compute backend-services add-backend BACKEND_SERVICE \
          --global \
          --balancing-mode=RATE \
          --max-rate-per-endpoint=MAX_REQUEST_RATE_PER_ENDPOINT \
          --network-endpoint-group=ON_PREM_NEG_NAME \
          --network-endpoint-group-zone=ON_PREM_NEG_ZONE
      
  7. יוצרים מפת URL כדי לנתב בקשות נכנסות לשירות לקצה העורפי.
      gcloud compute url-maps create URL_MAP_NAME \
          --default-service BACKEND_SERVICE
      
  8. מבצעים את השלב הזה רק אם רוצים ליצור מאזן עומסים ב-HTTPS. הפעולה הזו לא נדרשת למאזני עומסים מסוג HTTP.
    כדי ליצור מאזן עומסים ב-HTTPS, צריך משאב של אישור SSL לשימוש בשרת ה-proxy של יעד HTTPS. אפשר ליצור משאב של אישור SSL באמצעות אישור SSL בניהול Google או אישור SSL בניהול עצמי. מומלץ להשתמש באישורים שמנוהלים על ידי Google כי Google Cloud היא מקבלת, מנהלת ומחדשת את האישורים האלה באופן אוטומטי.

    כדי ליצור אישור שמנוהל על ידי Google, צריך דומיין. אם אין לכם דומיין, אתם יכולים להשתמש באישור SSL בחתימה עצמית לצורך בדיקה.

    כדי ליצור משאב של אישור SSL בניהול Google:
    gcloud compute ssl-certificates create SSL_CERTIFICATE_NAME \
        --domains DOMAIN
    
    כדי ליצור משאב של אישור SSL בניהול עצמי:
    gcloud compute ssl-certificates create SSL_CERTIFICATE_NAME \
        --certificate CRT_FILE_PATH \
        --private-key KEY_FILE_PATH
    
  9. יוצרים שרת proxy של HTTP(S) ליעד כדי להפנות בקשות למפת URL.

    כדי ליצור HTTP Target Proxy למאזן עומסים מסוג HTTP:
    gcloud compute target-http-proxies create TARGET_HTTP_PROXY_NAME \
        --url-map=URL_MAP_NAME
    
    למאזן עומסים מסוג HTTPS, יוצרים שרת proxy ליעד HTTPS. ה-proxy הוא החלק במאזן העומסים שמכיל את אישור ה-SSL לאיזון עומסים של HTTPS, ולכן בשלב הזה צריך גם לטעון את האישור.
    gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \
        --ssl-certificates=SSL_CERTIFICATE_NAME \
        --url-map=URL_MAP_NAME
    
  10. יוצרים כלל העברה כדי להפנות בקשות נכנסות לשרת ה-proxy.

    למאזן עומסים מסוג HTTP:
    gcloud compute forwarding-rules create HTTP_FORWARDING_RULE_NAME \
        --address=LB_IP_ADDRESS_NAME \
        --target-http-proxy=TARGET_HTTP_PROXY_NAME \
        --global \
        --ports=80
    
    במאזן עומסים מסוג HTTPS:
    gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
        --address=LB_IP_ADDRESS_NAME \
        --target-https-proxy=TARGET_HTTPS_PROXY_NAME \
        --global \
        --ports=443
    

חיבור הדומיין למאזן העומסים

אחרי שיוצרים את מאזן העומסים, רושמים את כתובת ה-IP שמשויכת למאזן העומסים – לדוגמה, 30.90.80.100. כדי להפנות את הדומיין למאזן העומסים, צריך ליצור רשומת A באמצעות שירות הרישום של הדומיין. אם הוספתם מספר דומיינים לאישור ה-SSL, צריך להוסיף רשומת A לכל אחד מהם, כשכולם מפנים לכתובת ה-IP של מאזן העומסים. לדוגמה, כדי ליצור רשומות A בשביל www.example.com ובשביל example.com, משתמשים בפקודה הבאה:

NAME                  TYPE     DATA
www                   A        30.90.80.100
@                     A        30.90.80.100

אם אתם משתמשים ב-Cloud DNS כספק ה-DNS, תוכלו לעיין במאמר בנושא הוספה, שינוי ומחיקה של רשומות.

בדיקת מאזן העומסים

אחרי שמגדירים את מאזן העומסים, אפשר להתחיל לשלוח תנועה לכתובת ה-IP של מאזן העומסים.

  1. עוברים לדף איזון עומסים במסוף Google Cloud .
    לדף איזון עומסים

  2. לוחצים על מאזן העומסים שיצרתם.

  3. שימו לב לכתובת ה-IP של מאזן העומסים.

  4. שליחת תעבורה למאזן העומסים.

    • אם יצרתם מאזן עומסים של HTTP, אתם יכולים לבדוק את מאזן העומסים באמצעות דפדפן אינטרנט. לשם כך, עוברים אל http://IP_ADDRESS. מחליפים את IP_ADDRESS בכתובת ה-IP של מאזן העומסים. תועברו לשירות שחשפתם דרך נקודת הקצה.

    • אם יצרתם מאזן עומסים ב-HTTPS, אתם יכולים לבדוק את מאזן העומסים באמצעות curl באופן הבא. מחליפים את IP_ADDRESS בכתובת ה-IP של מאזן העומסים. אתם אמורים להיות מועברים לשירות שחשפתם דרך נקודת הקצה.

      curl -k https://IP_ADDRESS
      

      אם זה לא עובד ואתם משתמשים באישור שמנוהל על ידי Google, צריך לוודא שהסטטוס של משאב האישור הוא ACTIVE. מידע נוסף זמין במאמר בנושא סטטוס של משאב אישור SSL בניהול Google. לאחר מכן בודקים את הדומיין שמפנה לכתובת ה-IP של מאזן העומסים. לדוגמה:

      curl -s https://DOMAIN_NAME
      

      מחליפים את DOMAIN_NAME בשם הדומיין של האפליקציה, לדוגמה, test.example.com.

  5. הבדיקה של נקודות הקצה שאינןGoogle Cloud תלויה בשירות שחשפתם דרך נקודת הקצה של ה-NEG ההיברידי.

המאמרים הבאים