העברת עומסי עבודה (workloads) אל Google Cloud באמצעות Hybrid Subnets
Hybrid Subnets עוזרים להעביר עומסי עבודה מרשת מקומית לרשת VPC בלי לשנות כתובות IP. במאמר הזה מתוארים השלבים להגדרת ניתוב היברידי של רשתות משנה, לבדיקת הקישוריות בבלוק ה-CIDR שמשותף לרשתות המקומיות ולרשתות ה-VPC, ולהעברת עומסי עבודה מהרשת המקומית.
לפני שמתחילים
חשוב לוודא שביצעתם את השלבים שמפורטים בקטע הכנה ל-Hybrid Subnets.
הפעלת ניתוב היברידי של רשתות משנה
כדי לתמוך בקישוריות פנימית בין רשתות מקומיות ורשתות VPC שמשתפות בלוק CIDR, צריך לפחות רשת משנה אחת שמופעל בה ניתוב היברידי של רשתות משנה.
תת-הרשת שמשתמשת בניתוב היברידי של תת-רשתות צריכה לעמוד בדרישות הבאות:
- הוא צריך להיות באותו אזור כמו Cloud Router ומנהרות HA VPN או קבצים מצורפים של VLAN שמספקים קישוריות היברידית.
- טווח כתובות ה-IPv4 של רשת המשנה צריך להיות זהה לטווח כתובות ה-IP של הרשת המקומית שמארחת את עומסי העבודה שרוצים להעביר.
אפשר להפעיל ניתוב היברידי של רשתות משנה כשיוצרים רשת משנה חדשה, או לעדכן רשת משנה קיימת כדי להפעיל את התכונה.
יצירת תת-רשת חדשה עם ניתוב היברידי של תת-רשתות
כדי ליצור רשת משנה חדשה עם ניתוב היברידי של רשתות משנה, פועלים לפי השלבים הבאים.
המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
לוחצים על השם של רשת ה-VPC שבה רוצים להגדיר ניתוב היברידי של רשתות משנה.
לוחצים על הכרטיסייה Subnets.
לוחצים על הוספת רשת משנה. בחלונית שמופיעה:
- מזינים שם.
- בחירת אזור.
- בקטע מטרה, בוחרים באפשרות ללא.
- בקטע Stack type, בוחרים באפשרות IPv4 (single-stack).
- בשדה טווח IPv4, מזינים את בלוק ה-CIDR שמשותף בין תת-הרשת הזו לבין עומסי העבודה שרוצים להעביר.
- בקטע Hybrid subnets, בוחרים באפשרות On.
- לוחצים על הוספה.
gcloud
משתמשים בפקודה gcloud compute networks subnets create.
gcloud compute networks subnets create SUBNET \
--network=NETWORK \
--region=REGION \
--range=RANGE \
--allow-cidr-routes-overlap
מחליפים את מה שכתוב בשדות הבאים:
-
SUBNET: השם של תת-הרשת -
NETWORK: השם של רשת ה-VPC של רשת המשנה -
RANGE: בלוק ה-CIDR שמשותף לתת-הרשת הזו ולעומסי העבודה שרוצים להעביר. -
REGION: האזור של תת-הרשת
API
יוצרים רשת משנה חדשה עם ניתוב היברידי של רשתות משנה.
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט
- REGION: האזור של תת-הרשת
- SUBNET: השם של תת-הרשת
- NETWORK_NAME: השם של רשת ה-VPC של תת-הרשת
- RANGE: חסימת ה-CIDR שמשותפת בין רשת המשנה הזו לבין עומסי העבודה שרוצים להעביר.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks
תוכן בקשת JSON:
{ "name": "SUBNET", "network": "projects/PROJECT_ID/global/networks/NETWORK_NAME", "ipCidrRange": "RANGE", "allowSubnetCidrRoutesOverlap": true }כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{ "kind": "compute#operation", "id": "5973660558170953708", "name": "operation-1680288003494-5f8368991917a-59bf1c92-1897c7c6", "operationType": "insert", "targetLink": "https://www.googleapis.com/compute/v1/projects/test-project/regions/us-central1/subnetworks/subnet-name", "targetId": "5514771331600183201", "status": "RUNNING", "user": "user@gmail.com", "progress": 0, "insertTime": "2023-03-31T11:40:03.882-07:00", "startTime": "2023-03-31T11:40:03.893-07:00", "selfLink": "https://www.googleapis.com/compute/v1/projects/test-project/regions/us-central1/operations/operation-1680288003494-5f8368991917a-59bf1c92-1897c7c6", "region": "https://www.googleapis.com/compute/v1/projects/test-project/regions/us-central1" }
הפעלת ניתוב היברידי של רשתות משנה ברשת משנה קיימת
כדי להפעיל ניתוב היברידי של רשתות משנה קיימות:
המסוף
נכנסים לדף VPC networks במסוף Google Cloud .
לוחצים על השם של רשת ה-VPC שמכילה את רשת המשנה שרוצים לעדכן.
לוחצים על הכרטיסייה Subnets.
לוחצים על רשת המשנה שרוצים לעדכן.
לוחצים על Edit.
בקטע Hybrid subnets, בוחרים באפשרות On.
לוחצים על Save.
gcloud
משתמשים בפקודה gcloud compute networks subnets update.
gcloud compute networks subnets update SUBNET \
--region=REGION \
--allow-cidr-routes-overlap
מחליפים את מה שכתוב בשדות הבאים:
-
SUBNET: השם של תת-הרשת -
REGION: האזור של תת-הרשת
API
מוצאים את מזהה רשת המשנה
fingerprint.לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט
- REGION: האזור של תת-הרשת
- SUBNET_NAME: השם של תת-הרשת
ה-method של ה-HTTP וכתובת ה-URL:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{ "kind": "compute#subnetwork", "id": "5514771331600183201", "creationTimestamp": "2022-09-16T12:41:02.010-07:00", "name": "subnet-name", "network": "https://www.googleapis.com/compute/v1/projects/project-name/global/networks/network-name", "ipCidrRange": "10.6.0.0/16", "gatewayAddress": "10.6.0.1", "region": "https://www.googleapis.com/compute/v1/projects/project-name/regions/us-central1", "selfLink": "https://www.googleapis.com/compute/v1/projects/project-name/regions/us-central1/subnetworks/subnet-name", "privateIpGoogleAccess": true, "fingerprint": "YiItidAFRsA5", "allowSubnetCidrRoutesOverlap": false, "enableFlowLogs": true, "privateIpv6GoogleAccess": "DISABLE_GOOGLE_ACCESS", "purpose": "PRIVATE", "stackType": "IPV4_ONLY" }הפעלת ניתוב היברידי של רשתות משנה.
לפני שמשתמשים בנתוני הבקשה, מחליפים את SUBNET_FINGERPRINT במזהה טביעת האצבע של רשת המשנה שמצאתם בבקשה הקודמת – לדוגמה,
YiItidAFRsA5.ה-method של ה-HTTP וכתובת ה-URL:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME
תוכן בקשת JSON:
{ "allowSubnetCidrRoutesOverlap": true, "fingerprint": "SUBNET_FINGERPRINT" }כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{ "kind": "compute#operation", "id": "5973660558170953708", "name": "operation-1680288003494-5f8368991917a-59bf1c92-1897c7c6", "operationType": "compute.subnetworks.patch", "targetLink": "https://www.googleapis.com/compute/v1/projects/test-project/regions/us-central1/subnetworks/subnet-name", "targetId": "5514771331600183201", "status": "RUNNING", "user": "user@gmail.com", "progress": 0, "insertTime": "2023-03-31T11:40:03.882-07:00", "startTime": "2023-03-31T11:40:03.893-07:00", "selfLink": "https://www.googleapis.com/compute/v1/projects/test-project/regions/us-central1/operations/operation-1680288003494-5f8368991917a-59bf1c92-1897c7c6", "region": "https://www.googleapis.com/compute/v1/projects/test-project/regions/us-central1" }כדי לוודא ש-
allowSubnetCidrRoutesOverlapמופעל ברשת המשנה, שולחים בקשתGETנוספת ומוודאים שהתגובה כוללת את הפרטים הבאים:"allowSubnetCidrRoutesOverlap": true
בדיקת הקישוריות לרשת מרשת ה-VPC לרשת המקומית
כדי לבדוק את הקישוריות בין רשת ה-VPC לבין הרשת המקומית באמצעות בלוק ה-CIDR המשותף, אפשר לבצע את הפעולות הבאות:
- יוצרים מכונת VM לבדיקה ברשת המשנה שמשתמשת בניתוב היברידי של רשתות משנה.
- שימו לב לכתובת ה-IPv4 הפנימית הראשית של המכונה הווירטואלית לבדיקה.
- ברשת ה-VPC שמכילה את המכונה הווירטואלית לבדיקה, מגדירים פרסום מותאם אישית בסשנים הרלוונטיים של Cloud Router BGP, כולל
/32פרסום מותאם אישית של נתיב ספציפי שתואם לכתובת ה-IPv4 הפנימית הראשית של המכונה הווירטואלית לבדיקה. מידע נוסף זמין במאמרים Advertised routes ו-Advertise custom address ranges במאמרי העזרה של Cloud Router. - מוודאים שכללי חומת האש ברשת המקומית וברשת ה-VPC מאפשרים קישוריות (TCP ו-ICMP) ממערכת מקומית למכונה הווירטואלית לבדיקה.
- משתמשים ב-SSH כדי להתחבר למכונה הווירטואלית.
- בשורת הפקודה של מערכת ההפעלה, משתמשים בפקודה
pingכדי לבדוק את הקישוריות למערכת ברשת המקומית.
העברת עומסי עבודה ועדכון הניתוב
בכל פעם שמעבירים עומס עבודה או קבוצה של עומסי עבודה, צריך לבצע את השלבים הבאים.
העברת עומסי עבודה
העברת עומסי עבודה ומכונות וירטואליות מהרשת המקומית לרשת ה-VPC בשיטה המועדפת עליכם.
מידע על אפשרויות ההעברה זמין במאמר אפשרויות העברה.
עדכון של מסלול מפורסם בהתאמה אישית
במהלך העברת המכונות הווירטואליות אל Google Cloud, צריך לעדכן את המסלולים המותאמים אישית שמועברים בפרסום של סשן ה-BGP של Cloud Router כך שיכללו את כתובת ה-IPv4 הפנימית הראשית של כל מכונה וירטואלית שהועברה.
במקרה של בלוקים רציפים של כתובות IP, כדאי לאחד את הכתובות לכמה שפחות מודעות בהתאמה אישית. המודעות צריכות להיות ספציפיות יותר (להכיל מסכות תת-רשת ארוכות יותר) מטווח כתובות ה-IPv4 של תת-הרשת שבה מופעלת ניתוב היברידי של תת-רשתות.
בדיקת הקישוריות למכונה וירטואלית שהועברה מהרשת המקומית
כדי לבדוק את הקישוריות למכונה וירטואלית שהעברתם אל Google Cloud, אתם יכולים לבצע את הפעולות הבאות:
- חשוב לוודא שעדכנתם את המודעות המותאמות אישית עבור סשנים של BGP שמנהלים קישוריות היברידית. הפרסומים של המסלול צריכים לכלול את כתובת ה-IP הפנימית של המכונה הווירטואלית שהועברה.
- משתמשים בפקודה
pingכדי לבדוק את הקישוריות ממערכת ברשת המקומית לכתובת ה-IP של המכונה הווירטואלית שהועברה.