במסמך הזה מוסבר איך להגדיר קבוצות של נקודות קצה ברשת (NEGs) באזורים. לפני שמגדירים קבוצות של נקודות קצה ברשת (NEGs) אזוריות, כדאי לקרוא את המאמר סקירה כללית על קבוצות של נקודות קצה ברשת.
קבוצות אזוריות של נקודות קצה ברשת (Zonal NEGs) עם GCE_VM_IP נקודות קצה
אפשר להשתמש בהם כקצה עורפי לשירותים של קצה עורפי במאזנים פנימיים של עומסי רשת להעברת סיגנל ללא שינוי ובמאזנים אזוריים של עומסי רשת חיצוניים להעברת סיגנל ללא שינוי. פרטים נוספים זמינים במאמר סקירה כללית על NEGs אזוריים: איזון עומסים.
דוגמאות מקצה לקצה:
- הגדרת מאזן עומסי רשת פנימי להעברת סיגנל ללא שינוי עם קצוות עורפיים של NEG אזוריים
- הגדרת מאזן עומסי רשת אזורי חיצוני להעברת סיגנל ללא שינוי עם קצוות עורפיים של NEG אזוריים
קבוצות אזוריות של נקודות קצה ברשת (Zonal NEGs) עם GCE_VM_IP_PORT נקודות קצה
אפשר להשתמש בהם כשרתי קצה עורפיים לשירותים עורפיים בסוגים הבאים של מאזני עומסים:
- מאזן עומסים חיצוני של אפליקציות (ALB)
- מאזן עומסים פנימי של אפליקציות (ALB)
- מאזן עומסי רשת חיצוני לשרת proxy
- מאזן עומסי רשת פנימי לשרת proxy
- דוגמה מקצה לקצה: הגדרה של מאזן עומסי רשת פנימי אזורי לשרת proxy עם קצה עורפי של NEG אזורי.
תרחיש השימוש העיקרי ב-GCE_VM_IP_PORT zonal NEGs הוא איזון עומסים מבוסס-קונטיינרים, כדי שתוכלו לפזר את התנועה בין מיקרו-שירותים שפועלים בקונטיינרים במכונות הווירטואליות שלכם. איזון עומסים שמקורם בקונטיינר מאפשר למאזני עומסים לטרגט ישירות את ה-Pods ולקבל החלטות לגבי חלוקת העומס ברמת ה-Pod ולא ברמת ה-VM.
יש שתי דרכים להגדיר איזון עומסים ברמת הקונטיינר: שימוש ב-NEGs שמנוהלים על ידי GKE Ingress, או שימוש ב-NEGs עצמאיים.
הוראות מפורטות במאמרים הבאים:
- איזון עומסים שמקורם בקונטיינר באמצעות Ingress
- איזון עומסים שמקורם בקונטיינר באמצעות קבוצות עצמאיות של נקודות קצה ברמת האזור (zonal)
הגדרת NEGs אזוריים
בהמשך הדף מוסבר איך להגדיר קבוצות אזוריות של נקודות קצה ברשת (NEGs) לפני או אחרי שכבר יצרתם מאזן עומסים. חשוב לציין שחלק מהפעולות האלה לא רלוונטיות ל-NEGs אזוריים שנוצרו ומנוהלים על ידי Ingress.
יצירה של קבוצת נקודות קצה ברשת אזורית
המסוף
כדי ליצור קבוצת נקודות קצה ברשת אזורית:
- נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
לדף Network Endpoint Groups - לוחצים על יצירת קבוצה של נקודות קצה ברשת.
- בקטע סוג קבוצת נקודות הקצה ברשת, בוחרים באפשרות סוג נקודת הקצה ברשת: אזורית.
- מזינים את השם של קבוצת נקודות הקצה ברשת.
- בקטע סוג נקודת הקצה ברשת, בוחרים באפשרות קבוצה של נקודות קצה ברשת (אזורית).
- בוחרים את סוג נקודות הקצה בהתאם לסוג מאזן העומסים שבו אתם משתמשים.
- בוחרים את הרשת.
- בוחרים באפשרות רשת משנה.
- בוחרים את האזור.
- ל-NEGs אזוריים עם נקודות קצה מסוג
GCE_VM_IP_PORTבלבד, מזינים יציאת ברירת מחדל. - לוחצים על יצירה.
gcloud
יצירת NEG אזורי GCE_VM_IP_PORT
gcloud compute network-endpoint-groups create NEG_NAME \
--zone=ZONE \
--network=NETWORK
[--subnet=SUBNET]
[--default-port=DEFAULT_PORT]
בפקודה הזו, הדגלים מוגדרים כך:
-
NEG_NAMEהוא השם של קבוצת נקודות הקצה החדשה ברשת. השם צריך להיות ייחודי באזור. -
ZONEהוא שם האזור שבו נוצר ה-NEG. -
NETWORKהוא שם הרשת שבה נוצר ה-NEG. אם לא מציינים רשת, Google Cloud משתמש ברשת בשםdefault. -
SUBNETהוא שם רשת המשנה שאליה שייכות נקודות הקצה של הרשת. הדגל הזה הוא אופציונלי אם הרשת היא רשת VPC במצב אוטומטי. אם לא מציינים את הרשת, ה-NEG נמצא ברשת המשנה שנוצרה אוטומטית באזור של האזור שנבחר. הדגל נדרש אם הרשת היא VPC במצב מותאם אישית או אם צריך לציין תת-רשת שנוצרה באופן ידני. -
DEFAULT_PORTהיא יציאת ברירת המחדל שמשויכת ל-NEG. הדגל הזה הוא אופציונלי. אם לא מציינים, צריך לציין את כל נקודות הקצה לפי IP:port. אם כוללים את האפשרות הזו, אפשר להשמיט את החלקportממפרט נקודת הקצה, והיציאה שמוגדרת כברירת מחדל תהיה היציאה שבה נעשה שימוש.
יצירת NEG אזורי GCE_VM_IP
כדי ליצור GCE_VM_IP קבוצה של נקודות קצה ברשת אזורית, צריך לציין את network-endpoint-type כמו שמוצג כאן:
gcloud compute network-endpoint-groups
create
gcloud compute network-endpoint-groups create NEG_NAME \
--network-endpoint-type=gce-vm-ip \
--zone=ZONE \
--network=NETWORK
--subnet=SUBNET
בפקודה הזו, הדגלים מוגדרים כך:
-
NEG_NAMEהוא השם של קבוצת נקודות הקצה החדשה ברשת. השם חייב להיות ייחודי בתחום. -
ZONEהוא שם האזור שבו נוצר ה-NEG. -
NETWORKהוא שם הרשת שבה נוצר ה-NEG. -
SUBNETהוא שם רשת המשנה שאליה שייכות נקודות הקצה של הרשת.
הוספת נקודות קצה לקבוצה של נקודות קצה ברשת
המסוף
כדי להוסיף נקודות קצה לקבוצה של נקודות קצה ברשת:
- נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
לדף Network Endpoint Groups - לוחצים על השם של קבוצת נקודות הקצה ברשת שאליה רוצים להוסיף נקודות קצה. יוצג הדף Network endpoint group details.
- בקטע Network endpoints in this group (נקודות קצה ברשת בקבוצה הזו), לוחצים על Add network endpoint (הוספת נקודת קצה ברשת). מוצג הדף Add network endpoint.
- בוחרים מכונה וירטואלית כדי להוסיף את כתובות ה-IP הפנימיות שלה כנקודות קצה ברשת ולוחצים על הוספה. יוצגו ממשק הרשת, האזור, רשת המשנה וכתובת ה-IP הפנימית של ממשק מכונת ה-VM שהוקצתה לנקודת הקצה.
- ל-NEGs אזוריים עם נקודות קצה מסוג
GCE_VM_IP_PORTבלבד, מבצעים את הפעולות הבאות:- מזינים את כתובת ה-IP של נקודת הקצה החדשה ברשת.
- בוחרים את סוג הניוד.
- אם בוחרים באפשרות ברירת מחדל, נקודת הקצה משתמשת ביציאה שמוגדרת כברירת מחדל לכל נקודות הקצה בקבוצת נקודות הקצה ברשת.
- אם בוחרים באפשרות Custom, צריך להזין את מספר היציאה של נקודת הקצה שבה רוצים להשתמש.
- כדי להוסיף עוד נקודות קצה, לוחצים על הוספת נקודת קצה ברשת וחוזרים על שלבים 5 ו-6.
- אחרי שמוסיפים את כל נקודות הקצה שרוצים, לוחצים על יצירה.
gcloud
הוספת נקודות קצה ל-GCE_VM_IP zonal NEG
כדי להוסיף נקודות קצה ל-GCE_VM_IP zonal NEG, מריצים את הפקודה gcloud compute network-endpoint-groups update. אפשר להוסיף נקודות קצה של IPv4 ו-IPv6 ל-NEG אזורי GCE_VM_IP.
מוסיפים נקודות קצה של IPv4 לקבוצת נקודות הקצה ברשת:
gcloud compute network-endpoint-groups update NEG_NAME \
--zone=ZONE \
--add-endpoint 'instance=INSTANCE_NAME,[ip=IPv4_ADDRESS]' \
[--add-endpoint ...]
מוסיפים נקודות קצה של IPv6 לקבוצה של נקודות קצה ברשת:
gcloud compute network-endpoint-groups update NEG_NAME \
--zone=ZONE \
--add-endpoint 'instance=INSTANCE_NAME,[ipv6=IPv6_ADDRESS]' \
[--add-endpoint ...]
מחליפים את מה שכתוב בשדות הבאים:
-
NEG_NAME: השם של ה-NEG -
ZONE: השם של האזור שבו נמצא ה-NEG -
INSTANCE_NAME: השם של המכונה הווירטואלית שאליה שייכת כתובת ה-IP. -
IPv4_ADDRESS: כתובת ה-IPv4 הפנימית הראשית של ממשק רשת -
IPv6_ADDRESS: כתובת ה-IPv6 הראשונה (/128) מתוך טווח/96שהוקצה לממשק רשת של מכונה וירטואלית
אם לא מציינים כתובת IP, כתובת ה-IP נבחרת על סמך ממשק הרשת שנמצא ברשת המשנה של קבוצת נקודות הקצה לרשת (NEG). מידע נוסף על כתובת ה-IP שנבחרה זמין במאמר מפרטי נקודות קצה ל-GCE_VM_IPNEGs אזוריים.
הוספת נקודות קצה ל-GCE_VM_IP_PORT zonal NEG
כדי להוסיף נקודות קצה ל-GCE_VM_IP_PORT zonal NEG,
מריצים את הפקודה gcloud compute network-endpoint-groups update.
אפשר להוסיף נקודות קצה של IPv4, IPv6 ו-dual-stack ל-GCE_VM_IP_PORT zonal NEG.
מוסיפים נקודות קצה של IPv4 לקבוצת נקודות הקצה ברשת:
gcloud compute network-endpoint-groups update NEG_NAME \
--zone=ZONE \
--add-endpoint 'instance=INSTANCE_NAME,[ip=IPv4_ADDRESS],[port=PORT]' \
[--add-endpoint ...]
מוסיפים נקודות קצה של IPv6 לקבוצת נקודות הקצה ברשת:
gcloud compute network-endpoint-groups update NEG_NAME \
--zone=ZONE \
--add-endpoint 'instance=INSTANCE_NAME,[ipv6=IPv6_ADDRESS],[port=PORT]' \
[--add-endpoint ...]
מוסיפים נקודות קצה עם תמיכה ב-IPv4 ו-IPv6 לקבוצה של נקודות קצה ברשת:
gcloud compute network-endpoint-groups update NEG_NAME \
--zone=ZONE \
--add-endpoint 'instance=INSTANCE_NAME,[ip=IPv4_ADDRESS],[ipv6=IPv6_ADDRESS],[port=PORT]' \
[--add-endpoint ...]
מחליפים את מה שכתוב בשדות הבאים:
-
NEG_NAME: השם של ה-NEG -
ZONE: השם של האזור שבו נמצא ה-NEG -
INSTANCE_NAME: השם של המכונה הווירטואלית שאליה שייכת כתובת ה-IP -
IPv4_ADDRESS: כתובת ה-IPv4 הפנימית הראשית של ממשק רשת או כתובת IPv4 פנימית מתוך טווח כתובות ה-IP של הכינוי שהוקצה לממשק רשת של מכונה וירטואלית -
IPv6_ADDRESS: כל כתובת IPv6 (/128) מטווח/96שהוקצה לממשק רשת של מכונה וירטואלית
PORT: היציאה של נקודת הקצה ברשת שמוסיפים. היציאה היא אופציונלית אם יציאת ברירת המחדל מצוינת ב-NEG. השדה הזה לא נתמך ב-NEGs אזוריים עם נקודות קצה שלGCE_VM_IP.אם לא מציינים כתובת IP, כתובת ה-IP נבחרת על סמך ממשק הרשת שנמצא ברשת המשנה של קבוצת נקודות הקצה לרשת (NEG). מידע נוסף על כתובת ה-IP שנבחרה זמין במאמר מפרטי נקודות קצה ל-
GCE_VM_IP_PORTNEGs אזוריים.
בדוגמה הבאה, נקודות קצה של IPv4 מתווספות ל-NEG אזורי GCE_VM_IP_PORT:
gcloud compute network-endpoint-groups update my-lb-neg \
--zone=asia-southeast1-a \
--add-endpoint 'instance=my-vm1,ip=10.1.1.1,port=80'
פרטים נוספים זמינים במאמר סקירה כללית של קבוצות של נקודות קצה ברשת אזורית.
הוספת NEG אזורי לשירות קצה עורפי
המסוף
כדי להוסיף קבוצה של נקודות קצה ברשת לשירות קצה עורפי:
- נכנסים לדף Load balancing במסוף Google Cloud .
כניסה לדף Load balancing - לוחצים על השם של מאזן העומסים שרוצים לערוך את שירות הקצה העורפי שלו.
- בדף Load balancer details (פרטי מאזן העומסים), לוחצים על Edit (עריכה) .
- בדף Edit load balancer, לוחצים על Backend configuration.
- בדף Backend configuration, לוחצים על Edit .
- לוחצים על +הוספת קצה עורפי.
- בוחרים קבוצה של נקודות קצה ברשת אזורית ולוחצים על סיום.
- לוחצים על עדכון.
gcloud
כדי להוסיף NEG לשירות קצה עורפי:
gcloud compute backend-services add-backend BACKEND_SERVICE \
--network-endpoint-group=NETWORK_ENDPOINT_GROUP \
--network-endpoint-group-zone=ZONE
לדוגמה, כדי להוסיף GCE_VM_IP_PORT zonal NEG לשירות לקצה העורפי:
gcloud compute backend-services add-backend my-lb \ --network-endpoint-group my-lb-neg \ --network-endpoint-group-zone=asia-southeast1-a \ --global \ --balancing-mode=RATE \ --max-rate-per-endpoint=5
הסרת NEG משירות קצה עורפי
המסוף
- נכנסים לדף Load balancing במסוף Google Cloud .
כניסה לדף Load balancing - לוחצים על השם של מאזן העומסים שרוצים לערוך את שירות הקצה העורפי שלו.
- בדף Load balancer details (פרטי מאזן העומסים), לוחצים על Edit (עריכה) .
- בדף Edit load balancer, לוחצים על Backend configuration.
- בדף Backend configuration, לוחצים על Edit בשירות הקצה העורפי שממנו רוצים להסיר את ה-NEG.
- בקטע Backend, מאתרים את ה-NEG שרוצים להסיר ולוחצים על סמל האשפה שלו.
- לוחצים על עדכון.
gcloud
כדי להסיר NEG משירות קצה עורפי:
gcloud compute backend-services remove-backend BACKEND_SERVICE \
--network-endpoint-group=NETWORK_ENDPOINT_GROUP \
--network-endpoint-group-zone=NETWORK_ENDPOINT_GROUP_ZONE
לדוגמה:
gcloud compute backend-services remove-backend my-lb \
--network-endpoint-group=my-lb-neg \
--network-endpoint-group-zone=asia-southeast1-a
הסרת נקודות קצה מקבוצה של נקודות קצה ברשת
כשמסירים נקודת קצה ברשת מקבוצת נקודות קצה ברשת לאיזון עומסים, מופעל ניתוק הדרגתי של החיבורים על סמך פרמטרי הניתוק שצוינו בשירות הקצה העורפי. אם כמה שירותים לקצה העורפי מפנים לאותו NEG, המערכת תחיל את מרווח הניקוז המקסימלי על כל השירותים לקצה העורפי.
המסוף
כדי להסיר נקודות קצה מקבוצה של נקודות קצה ברשת:
- נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
לדף Network Endpoint Groups - לוחצים על השם של קבוצת נקודות הקצה ברשת שממנה רוצים למחוק נקודות קצה. יוצג הדף Network endpoint group detail.
- בוחרים את נקודות הקצה ברשת שרוצים למחוק ולוחצים על הסרת נקודת קצה.
gcloud
כדי להסיר נקודות קצה מקבוצה של נקודות קצה ברשת:
gcloud compute network-endpoint-groups update NEG_NAME \ --zone=ZONE \ --remove-endpoint 'instance=INSTANCE_NAME,[ip=IP],[port=PORT]' \ [--remove-endpoint ...]
לדוגמה, כדי להסיר נקודת קצה מ-GCE_VM_IP_PORT zonal NEG:
gcloud compute network-endpoint-groups update my-lb-neg \
--remove-endpoint 'instance=my-vm1,ip=10.1.1.1,port=80' \
--zone=asia-southeast1-a
איך רואים את רשימת הקבוצות של נקודות קצה ברשת
המסוף
כדי לראות רשימה של קבוצות של נקודות קצה ברשת, עוברים לדף Network Endpoint Groups במסוף Google Cloud .
לדף Network Endpoint Groups
gcloud
כדי לראות את רשימת קבוצות נקודות הקצה ברשת:
gcloud compute network-endpoint-groups list
תיאור של קבוצה ספציפית של נקודות קצה ברשת
המסוף
כדי לקבל את הפרטים של קבוצה ספציפית של נקודות קצה ברשת:
- נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
לדף Network Endpoint Groups - לוחצים על השם של קבוצת נקודות הקצה ברשת שרוצים לראות את הפרטים שלה.
gcloud
כדי לקבל את הפרטים של קבוצה ספציפית של נקודות קצה ברשת:
gcloud compute network-endpoint-groups describe NEG_NAME \
--zone=ZONE
מחליפים את מה שכתוב בשדות הבאים:
-
NEG_NAME: השם של קבוצת נקודות הקצה ברשת -
ZONE: השם האופציונלי של האזור שבו נוצר ה-NEG.
לדוגמה, הפקודה gcloud הבאה מציגה מידע על קבוצת נקודות הקצה ברשת my-lb-neg.
gcloud compute network-endpoint-groups describe my-lb-neg \
--zone=asia-southeast1-a
הפלט של הפקודה אמור להיראות כך:
creationTimestamp: '2018-04-09T14:51:34.381-07:00'
id: '5260475207627726473'
kind: compute#networkEndpointGroup
loadBalancer:
defaultPort: 80
network: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/networks/default
zone: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/asia-southeast1-a
הסרה של קבוצות נקודות קצה ברשת
אי אפשר למחוק קבוצת נקודות קצה ברשת אם היא מצורפת לשירות קצה עורפי. לפני שמוחקים NEG, מוודאים שהוא מנותק משירות לקצה העורפי.
מחיקה של מכונת VM גורמת להסרה מיידית של כל נקודות הקצה ברשת במכונת ה-VM מה-NEG, ולסגירה של כל החיבורים. אם מוחקים NEG אחרי שמוחקים שירות backend, גם כל נקודות הקצה ב-NEG הזה נמחקות בלי זמן להשלמת תהליך (connection draining).
המסוף
כדי להסיר קבוצה של נקודות קצה ברשת משירות קצה עורפי:
- נכנסים לדף Load balancing במסוף Google Cloud .
כניסה לדף Load balancing - לוחצים על השם של מאזן העומסים שרוצים לערוך את שירות הקצה העורפי שלו.
- בדף Load balancer details (פרטי מאזן העומסים), לוחצים על Edit (עריכה) .
- בדף Edit load balancer, לוחצים על Backend configuration.
- בדף Backend configuration, לוחצים על Edit בשירות הקצה העורפי שממנו רוצים להסיר את ה-NEG.
- בקטע Backend, מאתרים את ה-NEG שרוצים להסיר ולוחצים על סמל האשפה שלו.
- לוחצים על עדכון.
כדי למחוק קבוצת נקודות קצה ברשת:
- נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
לדף Network Endpoint Groups - מאתרים את קבוצת נקודות הקצה ברשת שרוצים למחוק.
- לוחצים על סמל פח האשפה בשורה.
gcloud
כדי להסיר קבוצה של נקודות קצה ברשת משירות קצה עורפי:
gcloud compute backend-services remove-backend BACKEND_SERVICE \
--network-endpoint-group=NETWORK_ENDPOINT_GROUP \
--network-endpoint-group-zone=ZONE
כדי למחוק קבוצת נקודות קצה ברשת:
gcloud compute network-endpoint-groups delete NEG_NAME \
--zone=ZONE
לדוגמה:
gcloud compute backend-services remove-backend my-neg-backend \
--network-endpoint-group=my-lb-neg \
--network-endpoint-group-zone=southeast1-a
gcloud compute network-endpoint-groups delete my-lb-neg \
--zone=asia-southeast1-a
הצגת נקודות קצה בקבוצה של נקודות קצה ברשת
המסוף
כדי לראות רשימה של נקודות קצה בקבוצה של נקודות קצה ברשת:
- נכנסים לדף Network Endpoint Groups במסוף Google Cloud .
לדף Network Endpoint Groups - לוחצים על השם של קבוצת נקודות הקצה ברשת שממנה רוצים למחוק נקודות קצה. יוצג הדף Network endpoint group detail, שבו מפורטות נקודות הקצה של קבוצת נקודות הקצה ברשת.
- כדי לסנן את נקודות הקצה, יוצרים צמדי מפתח:ערך בשדה הטקסט שמתחת לנקודות קצה ברשת בקבוצה הזו.
gcloud
כדי להציג רשימה של כל נקודות הקצה ברשת בקבוצת נקודות קצה ברשת:
gcloud compute network-endpoint-groups list-network-endpoints NEG_NAME \
--zone=ZONE
סינון בהתאמה אישית כשמציגים רשימה של נקודות קצה בקבוצה של נקודות קצה ברשת
אתם יכולים להשתמש במסנן מותאם אישית כדי להגביל את נקודות הקצה שמופיעות בקבוצת נקודות קצה ברשת. סינון בהתאמה אישית מופעל רק ב-API בארכיטקטורת REST. אי אפשר להשתמש בסינון מותאם אישית ממסוף Google Cloud או באמצעות ממשק שורת הפקודה gcloud.
פרטים נוספים זמינים במסמכי העזרה בנושא השיטה networkEndpointGroups.listNetworkEndpoints.
בדיקת תקינות של נקודות קצה ברשת
שירותים לקצה העורפי עם קצוות עורפיים של NEG אזוריים חייבים להשתמש בבדיקת תקינות שבה מפרט היציאה הוא:
- יציאה קבועה (ממוספרת) (
--port) - מוגדר לשימוש ביציאת ההגשה של נקודת הקצה ברשת
(
--use-serving-port)
בדוגמה הבאה נוצרת בדיקת תקינות של HTTP שמשתמשת ביציאה למילוי הבקשה של נקודת הקצה ברשת עם הדגל --use-serving-port. שימו לב שהדגל --use-serving-port מיושם עם gcloud compute
health-checks create, אבל לא עם gcloud compute health-checks update.
gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME
--use-serving-port
אי אפשר להשתמש בבדיקת תקינות מדור קודם עם קצה עורפי של NEG אזורי. מידע נוסף מופיע במאמר מושגים שקשורים לבדיקת תקינות.