התחברות למכונה של Cloud SQL ל-MySQL עם כתובת IP פרטית
בדף הזה מוסבר איך ליצור מכונת MySQL ולהתחבר אליה באמצעות כתובת IP פרטית. העלות של המשאבים שנוצרו במדריך למתחילים הזה היא בדרך כלל פחות מדולר אחד, בהנחה שמשלימים את השלבים, כולל ניקוי המשאבים, בזמן.
לחצו על תראו לי איך כדי לקרוא הסבר מפורט על המשימה ישירות במסוף Google Cloud :
לפני שמתחילים
- נכנסים לחשבון 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.
- מוודאים שיש לכם את ההרשאות הנדרשות כדי להשלים את המדריך הזה.
-
מפעילים את ממשקי ה-API הנדרשים. Google Cloud
המסוף
נכנסים לדף APIs במסוף Google Cloud .
מפעילים את Cloud SQL Admin API. הפעלת ה-API הזה מאפשרת להריץ את שרת ה-proxy ל-Cloud SQL Auth.gcloud
לוחצים על הלחצן הבא כדי לפתוח את Cloud Shell, שנותן גישה לשורת הפקודה של Google Cloud המשאבים ישירות מהדפדפן. אפשר להשתמש ב-Cloud Shell כדי להריץ את הפקודות של
gcloudשמוצגות במדריך למתחילים הזה.מריצים את הפקודה
gcloud services enableבאמצעות Cloud Shell כדי להפעיל את ממשקי ה-API שנדרשים במדריך למתחילים הזה:gcloud services enable sqladmin.googleapis.com
הפקודה הזו מפעילה את ממשקי ה-API הבאים:
- Cloud SQL Admin API. הפעלת ה-API הזה מאפשרת להריץ את שרת ה-proxy ל-Cloud SQL Auth.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות להגדרת Cloud SQL עם כתובת IP פרטית, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט שרוצים להגדיר ולהתחבר אליו:
-
יצירה או מחיקה של מופע, מסד נתונים ומשתמש:
תפקיד האדמין ב-Cloud SQL (
roles/cloudsql.admin). -
יצירה או מחיקה של חשבון שירות ב-IAM: התפקיד 'אדמין של חשבון שירות ב-IAM' (
roles/iam.serviceAccountAdmin). -
יצירה או מחיקה של מכונה וירטואלית:
- התפקיד אדמין של Compute (
roles/compute.admin) - התפקיד אדמין מכונות של Compute (
roles/compute.instanceAdmin.v1).
- התפקיד אדמין של Compute (
-
יצירת חיבור:
- אדמין ברשתות שירות (
roles/servicenetworking.networksAdmin)) - אדמין של שימוש בשירות (
roles/serviceusage.serviceUsageAdmin).
- אדמין ברשתות שירות (
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
סקירה כללית
יש הרבה דרכים להתחבר למופע Cloud SQL עם כתובת IP פרטית, בהתאם למיקום המקור. הגורם העיקרי הוא שמכונת המקור חייבת להיות באותה רשת VPC כמו מכונת Cloud SQL. אם המקור לא נמצא Google Cloud או לא נמצא Google Cloud באותו פרויקט, צריך להגדיר קישוריות באופן שונה ממה שמוצג כאן.
במדריך למתחילים הזה, אנחנו מגדירים קישוריות דרך הנתיב הישיר ביותר. המקור והיעד נמצאים באותו פרויקט ובאותה רשת VPC. Google Cloud אנחנו יוצרים מופע Cloud SQL עם כתובת IP פרטית (היעד) ומכונה וירטואלית של Compute Engine (המקור). אנחנו משתמשים במכונה הווירטואלית כדי להתקין את הכלים שנדרשים לחיבור מהמכונה הווירטואלית למופע Cloud SQL.
מבצעים את הפעולות הבאות:
- יצירת מכונה של Cloud SQL עם כתובת IP פרטית.
מוצאים את
connection nameשל המופע ושומרים אותו לשימוש מאוחר יותר. - יצירת מכונה וירטואלית ב-Compute Engine.
- פותחים שני חיבורי SSH למכונה הווירטואלית של Compute Engine.
תשתמשו בחלון הראשון כדי להתקין את mysql, להתקין ולהפעיל את שרת ה-proxy ל-Cloud SQL Auth. לאחר מכן, משתמשים בחלון השני כדי להתחבר למכונה של Cloud SQL באמצעות שרת proxy ל-Cloud SQL Auth.
- בחלון SSH מספר 1, מבצעים את הפעולות הבאות:
- מתקינים את לקוח MySQL.
- מתקינים את שרת ה-proxy ל-Cloud SQL Auth.
שרת ה-proxy ל-Cloud SQL Auth פועל כמחבר בין לקוח MySQL לבין מכונת Cloud SQL.
- מפעילים את שרת ה-proxy ל-Cloud SQL Auth.
אם הפעולה מצליחה, שרת ה-proxy ל-Cloud SQL Auth מאזין לבקשות חיבור.
- בחלון SSH מספר 2, מתחברים למכונה של Cloud SQL על ידי חיבור של לקוח MySQL לשרת ה-proxy ל-Cloud SQL Auth.
אם הפעולה מצליחה, מופיעה ההנחיה של mysql בחלון הזה, והודעה על חיבור מוצלח בחלון SSH מספר 1, שבו פועל Cloud SQL Auth Proxy.
- ניקוי.
יצירת מכונה של Cloud SQL עם כתובת IP פרטית
כדי ליצור מכונה שמשתמשת בחיבורי IP פרטיים, מבצעים את הפעולות הבאות:
-
נכנסים לדף Cloud SQL Get Started במסוף Google Cloud .
- בקטע Get started (תחילת העבודה), בוחרים בכרטיסייה MySQL ולוחצים על Create Sandbox instance (יצירת מכונת ארגז חול).
- אם מוצגת בקשה להפעיל את Compute API, לוחצים על הלחצן Enable API.
- בקטע Instance info, מזינים שם לInstance ID.
- מזינים סיסמה למשתמש ה-root. חשוב לשמור את הסיסמה שיצרתם, כי תצטרכו אותה בהמשך.
- בקטע Choose region and zonal availability (בחירת אזור וזמינות אזורית), בוחרים באפשרות Single zone (אזור יחיד).
- מרחיבים את הקטע הצגת אפשרויות ההגדרה.
- מרחיבים את Connections (חיבורים).
- מנקים את כתובת ה-IP הציבורית.
- בוחרים באפשרות כתובת IP פרטית.
- בוחרים באפשרות גישה פרטית לשירות (PSA).
- בתפריט הנפתח VPC Network, בוחרים באפשרות default.
- אם אתם משתמשים בפרויקט חדש, תוצג לכם ההודעה: Network connection is not set up, ותיבת דו-שיח עם הכותרת Network setup confirmation required תפנה אתכם אל המסמכים בנושא VPC להגדרת PSA.
- נכנסים לדף VPC networks במסוף Google Cloud :
- בוחרים את רשת ה-VPC default.
- מגדירים כלל לחומת האש שמאפשר גישה ליציאת TCP מספר 22:
- לוחצים על הכרטיסייה חומת אש.
- בקטע VPC firewall rules (כללי חומת אש ב-VPC), בוחרים באפשרות Create VPC firewall rule (יצירת כלל חומת אש ב-VPC).
- נותנים שם לכלל חומת האש.
- בקטע יעדים, בוחרים באפשרות כל המופעים ברשת.
- בקטע Source IPv4 ranges (טווחי IPv4 של המקור), מזינים
0.0.0.0/0. - בקטע Protocols and Ports (פרוטוקולים ויציאות), מסמנים את TCP ואז בתיבה Ports (יציאות) שמתחת, מזינים
22. - לוחצים על יצירה.
- הקצאת טווח של כתובות IP:
- לוחצים על הכרטיסייה גישה לשירותים פרטיים.
- בכרטיסייה גישה לשירותים פרטיים, בוחרים בכרטיסייה הקצאת טווחי כתובות IP לשירותים.
- לוחצים על הקצאת טווח כתובות IP.
- מזינים שם ואפשר גם תיאור לטווח שהוקצה.
- כדי לאפשר ל-Google לבחור טווח זמין, בוחרים באפשרות אוטומטי.
- מזינים אורך של קידומת בין
16ל-124 (מספר הכתובות שהוקצו שווה ל-2 בחזקת (32 פחות אורך הקידומת)). - לוחצים על הקצאה כדי ליצור את הטווח המוקצה.
- יצירת חיבור פרטי:
- בכרטיסייה גישה לשירותים פרטיים, עוברים לכרטיסייה חיבורים פרטיים לשירותים.
- לוחצים על הלחצן יצירת קישור.
- בתפריט הנפתח Assigned allocation בתיבה Create a private connection, בוחרים את השם של טווח כתובות ה-IP שיצרתם.
- לוחצים על Connect.
- אחרי שיוצרים את החיבור, חוזרים למקום שבו יצרתם את מכונת Cloud SQL ולוחצים על Confirm connection (אישור החיבור).
- אחרי שיוצרים את החיבור למערכת ה-PSA, לוחצים על Create instance (יצירת מופע).
תועברו לדף הסקירה הכללית של המופע בזמן שהמופע החדש נוצר.
אחרי שהיצירה של המופע מסתיימת, גוללים לקטע Connect to
this instance ושומרים את Connection name של המופע.
הערך connection name הוא בפורמט projectID:region:instanceID.
תשתמשו ב-connection name בהמשך כשתפעילו את שרת ה-proxy ל-Cloud SQL Auth.
יצירת מכונה וירטואלית ב-Compute Engine
כדי ליצור מכונה וירטואלית:
-
נכנסים לדף VM instances במסוף Google Cloud .
- לוחצים על Create instance.
- מזינים שם למופע.
- בחלונית הניווט, בוחרים באפשרות הגנה על נתונים ואז באפשרות ללא גיבויים.
- בחלונית הניווט, בוחרים באפשרות אבטחה. בקטע Access scopes, בוחרים באפשרות Allow full access to all Cloud APIs.
- לוחצים על יצירה וממתינים עד שהמכונה הווירטואלית תסיים את היצירה.
פותחים שני חיבורי SSH למכונה וירטואלית של Compute Engine
אנחנו משתמשים בשני חלונות במכונה הווירטואלית. בחלון הראשון משתמשים כדי להתקין את לקוח mysql ואת שרת ה-proxy ל-Cloud SQL Auth, לקבל את שם החיבור של המופע ולהשתמש בשם הזה כדי להפעיל את ה-proxy. החלון השני משמש לחיבור למופע Cloud SQL דרך ה-proxy.
- מרחיבים את התפריט SSH בעמודה Connect של מכונת ה-VM ב-Compute Engine.
- בוחרים באפשרות פתיחה בחלון דפדפן כדי לפתוח את חלון SSH מספר 1.
יכול להיות שיעברו כמה שניות עד שההודעה בחלון תהיה זמינה.
- כשמופיעה ההנחיה, מזינים
pwdכדי לוודא שאתם נמצאים בספרייה/home/$USER.בחלון הזה תתקינו את לקוח MySQL ואת Cloud SQL Auth Proxy, ותפעילו את Cloud SQL Auth Proxy.
- בוחרים שוב באפשרות פתיחה בחלון דפדפן כדי לפתוח את חלון SSH מספר 2.
תשתמשו בחלון הזה כדי להתחבר למכונה של Cloud SQL.
התקנת לקוח mysql
משתמשים בחלון SSH מספר 1 בשלב הזה.
מתקינים את לקוח MySQL ממנהל החבילות ועוצרים את השרת mysqld:
sudo apt-get update sudo apt-get install default-mysql-client
התקנת שרת proxy ל-Cloud SQL Auth
משתמשים בחלון SSH מספר 1 בשלב הזה.
- התקנה של
wget:sudo apt-get install wget
- מורידים את שרת ה-proxy ל-Cloud SQL Auth:
wget https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.8.2/cloud-sql-proxy.linux.amd64 \ -O cloud-sql-proxy
- הופכים את שרת ה-proxy ל-Cloud SQL Auth לקובץ הפעלה:
chmod +x cloud-sql-proxy
הפעלת שרת proxy ל-Cloud SQL Auth
משתמשים בחלון SSH מספר 1 בשלב הזה.
מפעילים את שרת ה-proxy ל-Cloud SQL Auth כדי לעקוב אחרי הפלט שלו. מחליפים את INSTANCE_CONNECTION_NAME ב-connection name שהעתקתם כשנוצר מופע Cloud SQL.
./cloud-sql-proxy --private-ip INSTANCE_CONNECTION_NAME
כששרת ה-proxy ל-Cloud SQL Auth מתחיל לפעול בהצלחה, הודעה שדומה להודעה הבאה מופיעה בחלון ה-SSH:
Listening on 127.0.0.1:3306 for myInstance Ready for new connections
חיבור למכונה של Cloud SQL
משתמשים בחלון SSH מספר 2 בשביל השלב הזה.
מריצים את הפקודה הבאה:
mysql -u root -p --host 127.0.0.1 --port 3306
בהנחיה Enter password:, מזינים את הסיסמה של חשבון משתמש Root של MySQL.
מוודאים שמופיעה שורת הפקודה של MySQL. התחברת למסד הנתונים שלך באמצעות לקוח mysql.
חוזרים לחלון הטרמינל שבו הפעלתם את שרת ה-proxy ל-Cloud SQL Auth. אמורה להופיע הודעה דומה לזו:
New connection for myInstance
הסרת המשאבים
כדי לא לצבור חיובים לחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה, פועלים לפי השלבים הבאים:
-
נכנסים לדף Cloud SQL Instances במסוף Google Cloud .
- בוחרים את מופע
myinstanceכדי לפתוח את הדף פרטי המופע. - בסרגל הסמלים בחלק העליון של הדף, לוחצים על מחיקה.
- בחלון Delete instance (מחיקת מכונה), מקלידים את שם המכונה ולוחצים על Delete (מחיקה).
שלבי ניקוי אופציונליים
אם אתם לא משתמשים בממשקי ה-API שהופעלו במסגרת ההפעלה המהירה הזו, אתם יכולים להשבית אותם.
- ממשקי ה-API שהופעלו במדריך הזה למתחילים:
- Cloud SQL Admin API
נכנסים לדף APIs במסוף Google Cloud .
בוחרים את Cloud SQL Admin API ולוחצים על הלחצן השבתת ה-API.
נכנסים לדף VM instances במסוף Google Cloud .
בוחרים את השם של המופע.
בתפריט פעולות נוספות, בוחרים באפשרות מחיקה.
המאמרים הבאים
בהתאם לצרכים שלכם, תוכלו לקרוא מידע נוסף על יצירת מכונות Cloud SQL.
אפשר גם לקרוא על יצירת משתמשי MySQL ומסדי נתונים עבור מכונת Cloud SQL.
בנוסף, אפשר לקרוא על חיבור למופע Cloud SQL מאפליקציות אחרות: Google Cloud