בדף הזה מוסבר איך להשתמש בשיטת הקישוריות לרשת "רשימת היתרים של כתובות IP ציבוריות" של Database Migration Service, כדי לשדרג מכונה של Cloud SQL Enterprise Edition ל-Cloud SQL Enterprise Plus Edition. Database Migration Service יוצר מכונה חדשה של Cloud SQL ומעביר אליה את הנתונים.
סקירה כללית
מהדורת Cloud SQL Enterprise Plus מתאימה במיוחד לאפליקציות שדורשות ביצועי כתיבה מקסימליים. מידע נוסף על השיפורים האלה זמין במאמר שיפורים בביצועים.
כדי להפעיל את השיפורים האלה במכונות הקיימות של Cloud SQL Enterprise, צריך לשדרג אותן ל-Cloud SQL Enterprise Plus באמצעות Database Migration Service.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אנחנו ממליצים למשתמשים חדשים ב- Google Cloudליצור חשבון כדי שיוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- מפעילים את Database Migration Service API.
- מוודאים שלחשבון המשתמש שלכם הוקצה התפקיד "אדמין של Database Migration".
דרישות
ב-Database Migration Service יש אפשרויות שונות של מסדי נתונים במקור ושיטות שונות לחיבור לרשת. מקורות שונים פועלים טוב יותר עם שיטות קישוריות מסוימות מאשר עם אחרות. בדף הזה אנחנו מניחים שאתם משתמשים במכונה של Cloud SQL מהדורת Enterprise בסביבה שבה אתם יכולים להגדיר את הרשת כדי להוסיף כלל חומת אש לתעבורת נתונים נכנסת. אנחנו לא יכולים לדעת את הפרטים הספציפיים של הסביבה שלכם, ולכן אנחנו לא יכולים לספק שלבים מפורטים לגבי הגדרת הרשת.
הגדרת המכונה של המקור
כדי להגדיר את מכונת המקור של Cloud SQL מהדורת Enterprise:
- אם אין לכם את מסד הנתונים
postgresבמכונה של המקור, אתם צריכים ליצור אותו. מידע נוסף זמין במאמר יצירת מסד נתונים במכונה של Cloud SQL. - מתקינים את החבילה
pglogicalבמסדי הנתונים של מכונת המקור. מוודאים שהחבילה נכללת במשתנהshared_preload_libraries. מידע נוסף זמין במאמר הגדרת מסדי נתונים של מקורות. - מפעילים שכפול ופענוח לוגיים למסדי הנתונים של מכונת המקור. מידע נוסף זמין במאמר הפעלת שכפול לוגי ופענוח של מסדי הנתונים של המקור.
הגדרת מסדי הנתונים של המקור
חוץ ממסדי הנתונים template0 ו-template1, שירות Database Migration Service מעביר את כל מסדי הנתונים האחרים במכונה של Cloud SQL מהדורת Enterprise במקור.
בכל מסד נתונים במכונה של המקור שלא צוין למעלה, מבצעים את הפעולות הבאות:
כדי להתקין את התוסף
pglogicalבמסד הנתונים, מריצים את הפקודהCREATE EXTENSION IF NOT EXISTS pglogical.בטבלאות שאין בהן מפתחות ראשיים, מעבירים את ההצהרות
UPDATEו-DELETEבאופן ידני.כדי להגדיר את ההרשאות האלה בכל אחד ממסדי הנתונים שהועברו, צריך ליצור משתמש או להגדיר את ההרשאות של משתמש קיים. אתם משתמשים במשתמש הזה כדי להתחבר למכונה של המקור, ומגדירים אותו כמשתמש בדף Connection profiles. למשתמש הזה צריכות להיות הרשאות מסוימות בכל אחד ממסדי הנתונים שהועברו, וגם במסד הנתונים
postgresשמוגדר כברירת מחדל.כדי להגדיר את ההרשאות האלה, מתחברים למכונה ומריצים את הפקודות הבאות:
GRANT USAGE on SCHEMA SCHEMA to USERבכל הסכימות (מלבד סכימת המידע והסכימות שמתחילות ב-pg_) בכל מסד נתונים שרוצים להעביר.GRANT USAGE on SCHEMA pglogical to PUBLIC;בכל מסד נתונים שרוצים להעביר.GRANT SELECT on ALL TABLES in SCHEMA pglogical to USERבכל מסדי הנתונים כדי לקבל מידע על הרפליקציה ממסדי הנתונים של המקור.GRANT SELECT on ALL TABLES in SCHEMA SCHEMA to USERבכל הסכימות (מלבד סכימת המידע והסכימות שמתחילות ב-pg_) בכל מסד נתונים שרוצים להעביר.GRANT SELECT on ALL SEQUENCES in SCHEMA SCHEMA to USERבכל הסכימות (מלבד סכימת המידע והסכימות שמתחילות ב-pg_) בכל מסד נתונים שרוצים להעביר.ALTER USER USER with REPLICATION role
הפעלת שכפול ופענוח לוגיים במסדי הנתונים של המקור
מפעילים את הרפליקציה והפענוח הלוגיים במסדי הנתונים של מכונת המקור של Cloud SQL מהדורת Enterprise, על ידי הגדרת הדגלים cloudsql.logical_decoding ו-cloudsql.enable_pglogical לערך On. מידע נוסף על הדגלים האלה זמין במאמר הגדרת דגלים לניהול מסדי נתונים.
כדי להפעיל את שתי ההגדרות האלה, מבצעים את השלבים הבאים:
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- לוחצים על המכונה של המקור.
- לוחצים על Edit.
- בקטע Customize your instance, אם התפריט Show configuration options מופיע, לוחצים עליו.
מרחיבים את הקטע Flags.
כדי להגדיר את הדגלים
cloudsql.logical_decodingו-cloudsql.enable_pglogical:- לוחצים על Add a database flag.
- בתפריט הנפתח, בוחרים את הדגל של
cloudsql.logical_decoding. - מגדירים את הערך של הדגל הזה בתור
On. - לוחצים על סיום.
- חוזרים על השלבים האלה עם הדגל
cloudsql.enable_pglogical.
לוחצים על Save.
בתיבת הדו-שיח Changes require restart, לוחצים על Save and restart. מערכת Cloud SQL מפעילה מחדש את מכונת המקור כדי שהשינויים בהגדרות של הדגלים ייכנסו לתוקף.
- בחלונית Configuration, מאשרים את השינויים בקטע דגלים לניהול מסד נתונים.
יצירת פרופיל חיבור
פרופיל החיבור מכיל מידע על מסד הנתונים של המקור ב-Cloud SQL מהדורת Enterprise. שירות Database Migration Service משתמש במידע שבפרופיל החיבור כדי להעביר נתונים ממסד הנתונים של המקור למכונה של מהדורת Cloud SQL Enterprise Plus ביעד.
כדי ליצור פרופיל חיבור:
במסוף Google Cloud , נכנסים לדף Connection profiles ב-Database Migration Service.
לוחצים על יצירת פרופיל.
בתפריט הנפתח המנוע של מסד הנתונים, בוחרים באפשרות Cloud SQL ל-PostgreSQL.
בשדה Connection profile name, נותנים שם לפרופיל החיבור של מסד הנתונים במקור, למשל
My Connection Profile.בוחרים את האזור שבו רוצים לשמור את פרופיל החיבור.
בתפריט הנפתח Cloud SQL instance, בוחרים את השם של המכונה של Cloud SQL מהדורת Enterprise.
כדי לאמת את המכונה של המקור, מזינים שם משתמש וסיסמה. אחר כך לוחצים על המשך.
אם אתם רוצים להצפין את הנתונים, הפעילו את הצפנת SSL/TLS בחיבור בין מסד הנתונים של המקור לבין מסד הנתונים של היעד. אחרת, משאירים את ערך ברירת המחדל None.
לוחצים על Continue.
בתפריט הנפתח Connectivity test, בוחרים באפשרות Public IP.
מוודאים שהמקור הוגדר בצורה נכונה ושהשירות Database Migration Service יכול לתקשר עם המקור:
לוחצים על הפעלת בדיקה.
מוודאים שמופיע הסטטוס
Your connection profile test was successful!.
אם הבדיקה נכשלת, אתם יכולים לטפל בבעיה בחלק המתאים בתהליך ולחזור לבדיקה חוזרת.
לוחצים על יצירה.
יצירת משימת העברה
ב-Database Migration Service, משתמשים במשימות העברה כדי להעביר נתונים ממכונה של מסד נתונים במקור ב-Cloud SQL מהדורת Enterprise למכונה ביעד ב-Cloud SQL Enterprise Plus.
כדי ליצור משימת העברה:
- הגדרת המשימה.
- בוחרים את פרופיל החיבור שיצרתם למסד הנתונים של המקור ב-Cloud SQL מהדורת Enterprise. זהו פרופיל החיבור של המקור.
- הגדרת המכונה של מהדורת Cloud SQL Enterprise Plus שאליה רוצים להעביר את הנתונים.
- הגדרת הקישוריות בין המכונות של מסד הנתונים במקור וביעד.
- בדיקת משימת ההעברה כדי לוודא שפרטי החיבור שסיפקתם למשימה תקינים.
הגדרת משימת ההעברה
במסוף Google Cloud , נכנסים לדף Migration jobs ב-Database Migration Service.
לוחצים על Create migration job.
בשדה Migration job name, מזינים שם למשימת ההעברה, למשל
My Migration Job.בתפריט הנפתח המנוע של מסד הנתונים של המקור, בוחרים באפשרות Cloud SQL ל-PostgreSQL.
בתפריט הנפתח Destination database engine, בוחרים באפשרות Cloud SQL for PostgreSQL.
בוחרים את אזור היעד שבו נוצר המכונה של מהדורת Cloud SQL Enterprise Plus.
ברשימה הנפתחת Migration job type, בוחרים באפשרות Continuous כי רוצים שהשינויים השוטפים במסד הנתונים של מהדורת Cloud SQL Enterprise במקור יועברו למכונה של מהדורת Cloud SQL Enterprise Plus ביעד.
בודקים את דרישות הקדם שנוצרות באופן אוטומטי כדי להבין איך להכין את הסביבה למשימת ההעברה. הדרישות המוקדמות האלה יכולות לכלול את אופן ההגדרה של מסד הנתונים של המקור ב-Cloud SQL מהדורת Enterprise, ואת אופן החיבור שלו למכונה של היעד ב-Cloud SQL Enterprise Plus.
מומלץ להשלים את הדרישות המוקדמות האלה בשלב הזה, אבל אפשר להשלים אותן בכל שלב לפני שבודקים או מתחילים את משימת ההעברה.
לוחצים על שמירה והמשך.
מציינים מידע על פרופיל החיבור של המקור
ברשימה הנפתחת Select source connection profile, בוחרים את פרופיל החיבור שיצרתם.
לוחצים על שמירה והמשך.
הגדרת המכונה של מהדורת Cloud SQL Enterprise Plus ביעד
בשדה Password, מזינים סיסמה אלפאנומרית למכונה של מהדורת Cloud SQL Enterprise Plus ביעד. זו הסיסמה לחשבון האדמין של
postgresבמכונה.בתפריט הנפתח Database version, בוחרים את מכונת היעד מרשימת הגרסאות הנתמכות של Cloud SQL למנוע מסד הנתונים שצוין.
בוחרים באפשרות Enterprise Plus.
בקטע Choose region and zone, בוחרים את האזור הרצוי Google Cloud למכונה החדשה של מהדורת Cloud SQL Enterprise Plus (או משאירים את האפשרות Any).
מסמנים את התיבה Public IP.
בוחרים את תצורת המכונה של Cloud SQL Enterprise Plus. גודל הדיסק צריך להיות שווה לגודל של מסד הנתונים במקור או גדול ממנו.
מגדירים את סוג האחסון ואת נפח האחסון של המכונה ב-Cloud SQL.
כדי ליצור את המכונה החדשה, לוחצים על Create & Continue.
בתיבת הדו-שיח שמופיעה, לוחצים על יצירת יעד והמשך. יצירת המכונה עשויה להימשך כמה דקות.
הגדרת הקישוריות
- ברשימה הנפתחת Connectivity method, בוחרים באפשרות IP allowlist.
כדי להשתמש בכתובות ה-IP היוצאות של מכונת היעד ב-Cloud SQL Enterprise Plus, כדי ליצור חיבור למכונת המקור ב-Cloud SQL מהדורת Enterprise, מבצעים את השלבים הבאים:
- באזור כתובות IP יוצאות של יעד, לוחצים על Copy all.
- פותחים כרטיסייה נפרדת בדפדפן.
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- לוחצים על המכונה של המקור.
- לוחצים על Edit.
- בקטע Customize your instance, אם התפריט Show configuration options מופיע, לוחצים עליו.
- לוחצים על הקטע חיבורים.
- לוחצים על הוספת רשת.
- בשדה Name, נותנים שם לרשת שמייצגת את כתובת ה-IP הראשונה שהעתקתם, למשל
My First Network. הרשת הזו משמשת ליצירת חיבור בין מכונות מסד הנתונים של מהדורת Cloud SQL Enterprise במקור לבין מהדורת Cloud SQL Enterprise Plus ביעד. - בשדה Network, מזינים את כתובת ה-IP הראשונה שהעתקתם, ואחריה את הערך
/32. כך הרשת תקבל חיבורים רק מכתובת ה-IP הזו. - לוחצים על סיום.
- חוזרים על השלבים האלה לכל כתובת IP שהעתקתם.
- לוחצים על Save. המכונה של Cloud SQL מהדורת Enterprise מופעלת מחדש כדי שהשינויים בהגדרות ייכנסו לתוקף.
- בכרטיסייה שבה נמצאת משימת ההעברה, לוחצים על שמירה והמשך.
בדיקה, יצירה והפעלה של משימת ההעברה
בודקים את ההגדרות שנבחרו למשימת ההעברה.
מוודאים שהמקור הוגדר בצורה נכונה, שמכונות המקור (Cloud SQL מהדורת Enterprise) והיעד (Cloud SQL Enterprise Plus מהדורת Plus) יכולות לתקשר זו עם זו, ושמשימת המיגרציה תקפה:
לוחצים על בדיקת המשרה.
מוודאים שמופיע הסטטוס
Your migration job test was successful!.
אם הבדיקה נכשלת, אתם יכולים לטפל בבעיה בחלק המתאים בתהליך ולחזור לבדיקה חוזרת.
כדי ליצור את משימת ההעברה ולהתחיל אותה מיד, לוחצים על Create & start job.
בתיבת הדו-שיח שמופיעה, לוחצים על יצירה והתחלה.
בדף Migration jobs, מוודאים שהסטטוס של משימת ההעברה הוא
Starting.אחרי כמה דקות, מוודאים שהסטטוס השתנה ל-
Running.
אימות של משימת ההעברה
כדי לוודא ש-Database Migration Service השתמש במשימת ההעברה כדי להעביר נתונים ממכונת מסד הנתונים של המקור ב-Cloud SQL מהדורת Enterprise למכונת מסד הנתונים של היעד ב-Cloud SQL Enterprise Plus, מבצעים את השלבים הבאים:
נכנסים לדף SQL Instances במסוף Google Cloud .
לוחצים על הרשומה של עותק לקריאה בלבד של משימת ההעברה.
- לוחצים על הסמל Activate Cloud Shell שמופיע ליד השדה Search.
בשורת הפקודה, כדי להתחבר למכונה של מסד הנתונים של מהדורת Cloud SQL Enterprise Plus, משתמשים בפקודה
gcloud sql connect.gcloud sql connect DESTINATION_INSTANCE_NAME --user=postgresמחליפים את DESTINATION_INSTANCE_NAME בשם של מכונת היעד של מהדורת Cloud SQL Enterprise Plus.
- אופציונלי: אם מופיעה תיבת הדו-שיח Authorize Cloud Shell, לוחצים על Authorize.
- בבקשה Enter password, מזינים את הסיסמה שציינתם בקטע הגדרת המכונה של מהדורת Cloud SQL Enterprise Plus ביעד.
- בהנחיה postgres, כדי להציג את רשימת מסדי הנתונים ולוודא שמופיע המכונה של מסד הנתונים במקור ב-Cloud SQL מהדורת Enterprise, מזינים
\list. - בהנחיה postgres, כדי לראות את הטבלאות שמשויכות למכונה הזו של מסד הנתונים, מזינים
\connect SOURCE_DB_NAME. שם ההנחיה משתנה מ-postgresל-SOURCE_DB_NAME. - כדי לראות את הטבלאות של המכונה, מזינים
\dtבהנחיה SOURCE_DB_NAME. - בהנחיה SOURCE_DB_NAME, כדי לתת למשתמש הזה הרשאה לגשת לנתונים בטבלאות של המכונה הזו, מזינים
GRANT cloudsqlexternalsync to USER;.מחליפים את USER בשם המשתמש שבו השתמשתם כדי להתחבר למכונה של מסד הנתונים של מהדורת Cloud SQL Enterprise Plus.
- בהנחיה SOURCE_DB_NAME, כדי לראות את המידע שמשוכפל מטבלה במכונה של מסד הנתונים במקור ב-Cloud SQL מהדורת Enterprise, מזינים
SELECT * from TABLE_NAME;. - מוודאים שהמידע שמוצג בטבלה נכון.
קידום משימת ההעברה
כשמקַדמים את משימת ההעברה, המכונה של מסד הנתונים של Cloud SQL Enterprise Plus edition ביעד מחליפה את המכונה של מסד הנתונים של Cloud SQL Enterprise edition במקור בתור מסד הנתונים הראשי.
כדי לקדם את משימת ההעברה, מבצעים את השלבים הבאים:
חוזרים לדף Migration jobs.
לוחצים על משימת ההעברה שרוצים לקדם. מופיע הדף Migration job details.
עוצרים את כל פעולות הכתיבה במסד הנתונים של המקור ב-Cloud SQL מהדורת Enterprise.
מוודאים שעיכוב הרפליקציה הוא מינימלי.
לוחצים על משימת ההעברה שרוצים לקדם. הסטטוס של המשימה הזו הוא
Running.כדי לקדם את משימת ההעברה, לוחצים על Promote.
בתיבת הדו-שיח שמופיעה, לוחצים על קידום.
מוודאים שהסטטוס של משימת ההעברה הוא
Promote in progress. אחרי כמה דקות, מוודאים שהסטטוס השתנה ל-Completed.
מכונת מסד הנתונים החדשה שלכם במהדורת Cloud SQL Enterprise Plus מוכנה לשימוש.
הסרת המשאבים
כדי לא לצבור חיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה, אתם יכולים להשתמש במסוף Google Cloud כדי למחוק את משימת ההעברה, את פרופיל החיבור, את מכונת המקור של Cloud SQL מהדורת Enterprise ואת הפרויקט, אם אתם לא צריכים אותם.
המאמרים הבאים
- מידע נוסף על התכונות העיקריות של Cloud SQL Enterprise Plus
- מידע נוסף על שיפורי הביצועים במהדורת Cloud SQL Enterprise Plus
- מידע נוסף על תמיכה באזורים במהדורת Cloud SQL Enterprise Plus
- מידע נוסף על התמחור של Cloud SQL Enterprise Plus edition