אפשר להעביר את הנתונים ברשתות פרטיות על ידי יצירת קישוריות בין כתובות ה-IP הפרטיות של מסדי הנתונים של המקור והיעד. כדי להגדיר כתובות IP פרטיות למסד הנתונים של היעד, אפשר להשתמש בגישה לשירותים פרטיים עם קישור בין רשתות VPC שכנות (peering) או ב-Private Service Connect.
לכל שיטת חיבור יש יתרונות וחסרונות ייחודיים. חשוב לבחור את הגישה שהכי מתאימה לתרחיש שלכם. מידע נוסף על גישה לשירותים פרטיים ועל Private Service Connect ב-Cloud SQL זמין במאמר סקירה כללית על כתובות IP פרטיות במאמרי העזרה של Cloud SQL.
הגדרת קישוריות באמצעות קישור בין רשתות VPC שכנות (peering)
קישור בין רשתות שכנות (peering) של VPC פועל על ידי הגדרת רשתות ה-VPC כך שיוכלו לתקשר ביניהן. אם המקור נמצא באותו פרויקט ב-Cloud SQL או ב-Compute Engine, ההגדרה הזו מאפשרת ליעד לתקשר עם המקור ישירות. Google Cloud אם המקור נמצא בתוך VPN (לדוגמה, ב-AWS או ב-VPN מקומי משלכם), צריך להגדיר את ה-VPN של המקור ואת Cloud VPN כך שיפעלו יחד. מידע נוסף זמין במאמר חיבור רשתות VPC באמצעות רשתות VPN.אין תמיכה בשרשור של רשתות VPC. אם המקור נמצא בפרויקט אחר Google Cloud , אפשר לעיין במאמר סקירה כללית על VPC משותף כדי ללמוד איך לחבר משאבים מכמה פרויקטים לרשת VPC משותפת לקישור בין רשתות VPC שכנות.
צריך להגדיר את חומת האש של שרת מסד הנתונים של המקור כך שתאפשר את כל טווח כתובות ה-IP הפנימיות שהוקצה לחיבור השירות הפרטי של רשת ה-VPC שבה מכונת היעד של Cloud SQL תשתמש.
כדי למצוא את טווח כתובות ה-IP הפנימיות במסוף:
נכנסים לדף VPC networks במסוף Google Cloud .
בוחרים את רשת ה-VPC שרוצים להשתמש בה.
בוחרים באפשרות גישה לשירותים פרטיים > הקצאת טווחי כתובות IP לשירותים.
מאתרים את טווח כתובות ה-IP הפנימיות שמשויך לחיבור שנוצר על ידי servicenetworking-googleapis-com.
pg_hba.conf
או בהגדרות של קבוצות האבטחה ב-AWS RDS במסד הנתונים של המקור עודכן כך שיאפשר חיבורים מטווח כתובות ה-IP של ה-VPC ב-Cloud SQL.
בקישור בין רשתות VPC שכנות נעשה שימוש בגישה לשירותים פרטיים, שצריך להגדיר אותה פעם אחת לכל פרויקט שמשתמש בקישור בין רשתות VPC שכנות. אחרי שמקימים את private services access, בודקים את משימת ההעברה כדי לוודא שיש קישוריות.
הגדרת גישה לשירותים פרטיים עבור Database Migration Service
אם אתם משתמשים בכתובת IP פרטית עבור אחד מהמופעים של Database Migration Service, אתם צריכים להגדיר גישה לשירותים פרטיים רק פעם אחת לכל פרויקט ב-Google Cloud שיש בו מופע של Database Migration Service או שצריך להתחבר אליו.
כדי להגדיר גישה לשירותים פרטיים, צריך את תפקיד ה-IAM compute.networkAdmin. אחרי שתגדירו גישה לשירותים פרטיים ברשת שלכם, לא תצטרכו יותר את תפקיד ה-IAM compute.networkAdmin כדי להגדיר מכונה לשימוש בכתובת IP פרטית.
כדי להשתמש בגישה פרטית לשירותים, צריך קודם להקצות טווח של כתובות IP פנימיות, ואז ליצור חיבור פרטי ולייצא מסלול מותאם אישית.
טווח מוקצה הוא בלוק CIDR שמור, שאי אפשר להשתמש בו ברשת ה-VPC המקומית. כשיוצרים חיבור פרטי, מציינים הקצאה. החיבור הפרטי מקשר בין רשת ה-VPC שלכם לבין רשת ה-VPC הבסיסית (של בעלים של שירות מנוהל).
כשיוצרים חיבור פרטי, רשת ה-VPC והרשת של ספק השירות מחליפות רק מסלולים של רשתות משנה. צריך לייצא את המסלולים המותאמים אישית של רשת ה-VPC כדי שהרשת של ספק השירות תוכל לייבא אותם ולנתב את התנועה בצורה נכונה לרשת המקומית.
הגדרת קישור בין רשתות VPC שכנות (peering) קובעת את הכוונה להתחבר לרשת VPC אחרת. הרשת שלכם והרשת השנייה לא מחוברות עד שלכל אחת מהן יש הגדרת שיוך לרשת השנייה. אחרי שברשת השנייה תהיה הגדרה תואמת לצורך יצירת קשר עם הרשת שלכם, מצב הפירינג ישתנה ל-ACTIVE בשתי הרשתות, והן יתחברו. אם אין הגדרת שיוך תואמת ברשת השנייה, מצב השיוך יישאר INACTIVE, כלומר הרשת שלכם לא מחוברת לרשת השנייה.
אחרי החיבור, שתי הרשתות תמיד מחליפות מסלולי רשת משנה. אפשר לייבא נתיבים סטטיים ודינמיים מותאמים אישית מרשת שנוצרה איתה שותפות, אם היא הוגדרה לייצא אותם.
תהליך ההגדרה של הגישה לשירותים פרטיים מורכב משני חלקים:
- הקצאת טווח כתובות IP. הטווח כולל את כל המקרים.
- יצירת חיבור פרטי מרשת ה-VPC לרשת של בעלים של שירות מנוהל.
הקצאת טווח כתובות IP
המסוף
- נכנסים לדף VPC networks במסוף Google Cloud .
- בוחרים את רשת ה-VPC שרוצים להשתמש בה.
- לוחצים על הכרטיסייה Private service connection (חיבור שירות פרטי).
- בוחרים בכרטיסייה Allocated IP ranges for services (טווחים של כתובות IP שהוקצו לשירותים).
- לוחצים על הקצאת טווח כתובות IP.
בשדה Name (שם) של הטווח שהוקצה, מציינים את הערך
google-managed-services-VPC_NETWORK_NAME, כאשרVPC_NETWORK_NAMEהוא השם של רשת ה-VPC שאליה מתחברים (לדוגמה,google-managed-services-default). השדה Description (תיאור) הוא אופציונלי.לוחצים על הקצאה כדי ליצור את הטווח המוקצה.
gcloud
מבצעים אחת מהפעולות הבאות:
כדי לציין טווח כתובות ואורך קידומת (מסכה של רשת משנה), משתמשים בדגלים
addressesו-prefix-length. לדוגמה, כדי להקצות את בלוק ה-CIDR192.168.0.0/16, מציינים192.168.0.0לכתובת ו-16לאורך הקידומת.gcloud compute addresses create google-managed-services-[VPC_NETWORK_NAME] \ --global \ --purpose=VPC_PEERING \ --addresses=192.168.0.0 \ --prefix-length=16 \ --network=[VPC_NETWORK_NAME]כדי לציין רק אורך של קידומת (מסכה של רשת משנה), פשוט משתמשים בדגל
prefix-length. כשמשמיטים את טווח הכתובות, Google Cloudבוחר באופן אוטומטי טווח כתובות שלא נמצא בשימוש ברשת ה-VPC. בדוגמה הבאה נבחר טווח כתובות IP שלא נמצא בשימוש עם אורך קידומת של16ביטים.gcloud compute addresses create google-managed-services-[VPC_NETWORK_NAME] \ --global \ --purpose=VPC_PEERING \ --prefix-length=16 \ --network=[VPC_NETWORK_NAME]
מחליפים את [VPC_NETWORK_NAME] בשם של רשת ה-VPC, למשל my-vpc-network.
בדוגמה הבאה מוקצה טווח כתובות IP שמאפשר למשאבים ברשת ה-VPC my-vpc-network להתחבר למופעים של Database Migration Service באמצעות כתובת IP פרטית.
gcloud compute addresses create google-managed-services-my-vpc-network \
--global \
--purpose=VPC_PEERING \
--prefix-length=16 \
--network=my-vpc-network \
--project=my-project
יצירת חיבור פרטי
המסוף
- נכנסים לדף VPC networks במסוף Google Cloud .
- בוחרים את רשת ה-VPC שרוצים להשתמש בה.
- לוחצים על הכרטיסייה Private service connection (חיבור שירות פרטי).
- בוחרים בכרטיסייה Private connections to services (חיבורים פרטיים לשירותים).
- לוחצים על יצירת חיבור כדי ליצור חיבור פרטי בין הרשת שלכם לבין בעלים של שירות מנוהל.
- בשדה הקצאה שהוקצתה, בוחרים טווחים קיימים שהוקצו ושלא נמצאים בשימוש של ספקי שירות אחרים, ואז לוחצים על אישור.
- לוחצים על קישור כדי ליצור את הקישור.
gcloud
יוצרים חיבור פרטי.
gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --ranges=google-managed-services-[VPC_NETWORK_NAME] \ --network=[VPC_NETWORK_NAME] \ --project=[PROJECT_ID]מחליפים את
[VPC_NETWORK_NAME]בשם של רשת ה-VPC ואת[PROJECT_ID]במזהה של הפרויקט שמכיל את רשת ה-VPC.הפקודה מפעילה פעולה ממושכת ומחזירה שם פעולה.
בודקים אם הפעולה הצליחה.
gcloud services vpc-peerings operations describe \ --name=[OPERATION_NAME]מחליפים את
[OPERATION_NAME]בשם הפעולה שהתקבל בשלב הקודם.
כשיוצרים חיבור פרטי, אפשר לציין יותר מטווח מוקצה אחד. לדוגמה, אם טווח מסוים מוצה, אפשר להקצות טווחים נוספים. השירות משתמש בכתובות IP מכל הטווחי הכתובות שציינתם, לפי הסדר שבו ציינתם אותם.
ייצוא של נתיבים מותאמים אישית
עדכון של חיבור קיים של קישור בין רשתות VPC שכנות כדי לשנות את האפשרות של רשת ה-VPC לייצא או לייבא מסלולים מותאמים אישית אל רשת ה-VPC השכנה או ממנה.
הרשת שלכם מייבאת נתיבים מותאמים אישית רק אם רשת הפירינג מייצאת גם נתיבים מותאמים אישית, ורשת הפירינג מקבלת נתיבים מותאמים אישית רק אם היא מייבאת אותם.
המסוף
- נכנסים לדף VPC Network Peering במסוף Google Cloud .
לדף VPC Network Peering - בוחרים את חיבור ה-Peering שרוצים לעדכן.
- לוחצים על עריכה.
- כדי לעדכן את ההגדרות של הנתיב המותאם אישית, מסמנים או מבטלים את הסימון של ייבוא נתיבים מותאמים אישית או ייצוא נתיבים מותאמים אישית.
- לוחצים על SAVE.
gcloud
מעדכנים את חיבור ה-Peering כדי לשנות את הגדרות הייבוא או הייצוא של מסלולים מותאמים אישית.
gcloud compute networks peerings update [PEERING-NAME] \
--network=[MY-LOCAL-NETWORK] \
[--[no-]import-custom-routes] \
[--[no-]export-custom-routes]
הקצאת התפקיד roles/servicenetworking.serviceAgent
gcloud beta services identity create \
--service=servicenetworking.googleapis.com \
--project=project-id
gcloud projects add-iam-policy-binding project-id \
--member="service-account-prefix@service-networking.iam.gserviceaccount.com" \
--role="roles/servicenetworking.serviceAgent"
הגדרת קישוריות באמצעות ממשקי Private Service Connect
במיגרציות הומוגניות, Cloud SQL יכול להשתמש בממשקי Private Service Connect כדי ליצור חיבור ברשתות פרטיות. שיטת הקישוריות הזו זמינה רק כשמעבירים למופע קיים.
כדי להשתמש בממשקי Private Service Connect, צריך לבצע את הפעולות הבאות:
יוצרים מכונה של Cloud SQL עם Private Service Connect מופעל. מידע נוסף זמין במאמר בנושא יצירת מכונה עם Private Service Connect במסמכי התיעוד של Cloud SQL.
מגדירים את Private Service Connect לקישוריות יוצאת במכונה. באופן כללי, התהליך הזה כולל:
2.1. יצירת קובץ מצורף לרשת ברשת ה-VPC שדרכה אפשר להגיע לכתובת ה-IP הפרטית של מסד הנתונים של המקור. שימו לב: הטווח של תת-הרשת ששמור לצירוף הרשת חייב להיות בטווח RFC 1918.
2.2. הקצאת רכיב Network Attachment למכונת היעד של Cloud SQL ל-MySQL.
התהליך המלא מוסבר במאמר הגדרת קישוריות יוצאת במאמרי העזרה של Cloud SQL.
בשלב מאוחר יותר, כשיוצרים את משימת ההעברה, בוחרים באפשרות ממשק PSC כשיטת הקישוריות.