1. מבוא
ב-codelab הזה תלמדו ליצור מאזן עומסים אזורי של אפליקציות ברמה 7 (L7) וקצה עורפי של Private Service Connect כדי לקבל גישה מצפון ל-Looker. כדי לקבל גישה מצפון ל-Looker, צריך להוסיף את ה-VPC של הצרכן לרשימת ההיתרים של מכונה של Looker PSC.
Private Service Connect הוא יכולת של רשתות Google Cloud שמאפשרת לצרכנים לגשת לשירותים מנוהלים באופן פרטי מתוך רשת ה-VPC שלהם. באופן דומה, היא מאפשרת ליצרני שירותים מנוהלים לארח את השירותים האלה ברשתות VPC נפרדות ולהציע חיבור פרטי לצרכנים שלהם. לדוגמה, כשמשתמשים ב-Private Service Connect כדי לגשת ל-Looker, אתם צרכן השירות ו-Google היא בעלת השירות, כפי שמודגש באיור 1.
איור 1.
גישה דרומה, שנקראת גם PSC הפוך, מאפשרת לצרכן ליצור שירות שפורסם כבעלים כדי לאפשר ל-Looker לגשת לנקודות קצה (endpoints) בארגון, ב-VPC, לשירותים מנוהלים ולאינטרנט. אפשר לפרוס חיבורים דרומיים בכל אזור, ללא קשר למיקום שבו Looker PSC פרוס, כפי שמודגש באיור 2.
איור 2.
מה תלמדו
- דרישות רשת
- עדכון רשימת ההיתרים של Looker לגישה לכיוון צפון
- יצירת קצה עורפי של Private Service Connect ב-VPC לצרכן
- אישורים של Google לעומת אישורים בחתימה עצמית
מה צריך להכין
- פרויקט ב-Google Cloud עם הרשאות בעלים
- דומיין רשום
- מופע קיים של Looker PSC ב-Looker
2. מה תפַתחו
עליך ליצור רשת צרכנים שנמצאת ברשימת ההיתרים, כדי לפרוס מאזן עומסים חיצוני של אפליקציות L7 ו-NEG בקצה עורפי של PSC שמחייבים אישור של Google או אישור בחתימה עצמית. בכל אחת מהשיטות, נדרש דומיין רשום שתואם לדומיין המותאם אישית שהוגדר ב-Looker.
3. דרישות רשת
הנה פירוט של דרישות הרשת:
רכיבים | תיאור |
VPC (looker-psc-demo) | VPC במצב מותאם אישית |
תת-רשת של PSC NEG | משמש להקצאת כתובת IP לקבוצת נקודות הקצה ברשת |
תת-רשת ל-Proxy בלבד | לכל אחד משרתי ה-proxy של מאזן העומסים מוקצית כתובת IP פנימית. לחבילות שנשלחות משרת proxy למכונה וירטואלית בקצה העורפי או לנקודת קצה יש כתובת IP של מקור מהתת-רשת של שרת ה-proxy בלבד. |
שירות לקצה העורפי | שירות לקצה העורפי משמש כגשר בין מאזן העומסים לבין המשאבים בקצה העורפי. במדריך, השירות לקצה העורפי משויך ל-PSC NEG. |
4. טופולוגיה של Codelab
5. הגדרה ודרישות
הגדרת סביבה בקצב אישי
- נכנסים למסוף Google Cloud ויוצרים פרויקט חדש או עושים שימוש חוזר בפרויקט קיים. אם אין לכם עדיין חשבון Gmail או חשבון Google Workspace, עליכם ליצור חשבון.
- שם הפרויקט הוא השם המוצג של המשתתפים בפרויקט. זוהי מחרוזת תווים שלא משמשת את Google APIs. תמיד אפשר לעדכן.
- מזהה הפרויקט הוא ייחודי לכל הפרויקטים ב-Google Cloud ואי אפשר לשנות אותו אחרי שמגדירים אותו. מסוף Cloud יוצר מחרוזת ייחודית באופן אוטומטי; בדרך כלל לא מעניין אותך מה זה. ברוב ה-codelabs תצטרכו להפנות למזהה הפרויקט שלכם (בדרך כלל מזוהה כ-
PROJECT_ID
). אם המזהה שנוצר לא מוצא חן בעיניכם, אתם יכולים ליצור מזהה אקראי אחר. לחלופין, אפשר לנסות שם משלך ולראות אם הוא זמין. לא ניתן לשנות את השם אחרי השלב הזה, והוא יישאר למשך כל תקופת הפרויקט. - לידיעתך, יש ערך שלישי, Project Number, שבו משתמשים בחלק מממשקי ה-API. מידע נוסף על כל שלושת הערכים האלה זמין במסמכי העזרה.
- בשלב הבא צריך להפעיל את החיוב במסוף Cloud כדי להשתמש במשאבים או בממשקי API של Cloud. מעבר ב-Codelab הזה לא יעלה הרבה כסף, אם בכלל. כדי להשבית את המשאבים ולמנוע חיובים אחרי סיום המדריך, אפשר למחוק את המשאבים שיצרתם או למחוק את הפרויקט. משתמשים חדשים ב-Google Cloud זכאים להשתתף בתוכנית תקופת ניסיון בחינם בשווי 1,200 ש"ח.
הפעלת Cloud Shell
אפשר להפעיל את Google Cloud מרחוק מהמחשב הנייד, אבל בסדנת הקוד הזו נשתמש ב-Google Cloud Shell, סביבת שורת פקודה שפועלת ב-Cloud.
במסוף Google Cloud, לוחצים על סמל Cloud Shell בסרגל הכלים שבפינה הימנית העליונה:
תהליך ההקצאה והחיבור לסביבת העבודה אמור להימשך רק כמה רגעים. בסיום, אמור להופיע משהו כזה:
המכונה הווירטואלית הזו כוללת את כל הכלים הדרושים למפתחים. יש בה ספריית בית בנפח מתמיד של 5GB והיא פועלת ב-Google Cloud, מה שמשפר משמעותית את ביצועי הרשת והאימות. אתם יכולים לבצע את כל העבודה בקודלאב הזה בדפדפן. אתה לא צריך להתקין שום דבר.
6. לפני שמתחילים
הפעלת ממשקי API
ב-Inside Cloud Shell, מוודאים שמזהה הפרויקט מוגדר:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
echo $project
echo $region
מפעילים את כל השירותים הנחוצים:
gcloud services enable compute.googleapis.com
7. רשת צרכנים
בקטע הבא צריך ליצור את הרשתות לצרכנים, שיעודכנו ברשימת ההיתרים של Looker PSC VPC.
רשת VPC
ב-Cloud Shell, מבצעים את הפעולות הבאות:
gcloud compute networks create looker-psc-demo --subnet-mode custom
יצירת תת-רשתות
ב-Cloud Shell, יוצרים את תת-הרשת של קבוצת נקודות הקצה ברשת של הצרכן:
gcloud compute networks subnets create consumer-psc-neg-subnet --network looker-psc-demo --range 172.16.30.0/28 --region $region --enable-private-ip-google-access
Inside Cloud Shell, יוצרים את רשת המשנה האזורית של ה-Proxy האזורי בלבד:
gcloud compute networks subnets create $region-proxy-only-subnet \
--purpose=REGIONAL_MANAGED_PROXY \
--role=ACTIVE \
--region=$region \
--network=looker-psc-demo \
--range=10.10.10.0/24
שמירת כתובת ה-IP של מאזן העומסים
Inside Cloud Shell, שומרים כתובת IP חיצונית למאזן העומסים:
gcloud compute addresses create regional-alb-static-ip \
--region=$region \
--network-tier=STANDARD
בתוך Cloud Shell, צופים בכתובת ה-IP השמורה:
gcloud compute addresses describe regional-alb-static-ip --region=us-central1 | grep -i address:
פלט לדוגמה:
user@cloudshell$ gcloud compute addresses describe regional-alb-static-ip --region=us-central1 | grep -i address:
address: 35.208.202.244
8. יצירת דומיין מותאם אישית
כדי ליצור דומיין מותאם אישית, צריך לפעול לפי השלבים הבאים:
דוגמה לדומיין מותאם אישית
הדומיין המותאם אישית looker.cosmopup.com קיים בתור תת-דומיין ציבורי ב-DNS שמשויך לרשומת A של כתובות ה-IP הסטטיות (regional-alb-static-ip) שהוגדרו קודם. צילום מסך שנלקח ממסוף שמאמת את בדיקת ה-DNS.
בשלב הבא יוצרים את דומיין הלקוח באמצעות תת-הדומיין looker.cosmopup.com
דוגמה ל-OAuth
בהמשך מוצגת דוגמה לפרטי כניסה של OAuth עבור מקורות מורשים וקריאה חוזרת (callback) עבור תת-דומיין looker.cosmopup.com.
9. אישורים
אפשר ליצור אישורים של Compute Engine או של מנהל האישורים. אפשר להשתמש באחת מהשיטות הבאות כדי ליצור אישורים באמצעות מנהל האישורים:
- אישורים אזוריים בניהול עצמי. מידע נוסף על יצירת אישורים אזוריים בניהול עצמי ועל שימוש בהם זמין במאמר פריסה של אישור אזורי בניהול עצמי. אין תמיכה במפות אישורים.
- אישורים אזוריים בניהול Google. אין תמיכה במפות אישורים. מערכת Certificate Manager תומכת בסוגי האישורים האזוריים הבאים בניהול Google:
- אישורים אזוריים שמנוהלים על ידי Google עם הרשאת DNS לכל פרויקט. מידע נוסף זמין במאמר פריסת אישור אזורי בניהול Google.
- אישורים אזוריים (פרטיים) בניהול Google באמצעות שירות של רשות אישורים. מידע נוסף זמין במאמר פריסת אישור אזורי שמנוהל על ידי Google באמצעות שירות CA.
10. הוספה לרשימת ההיתרים של VPC ב-Looker
הצגת רשימת ה-VPCs המורשים
בקטע הבא תשתמשו בממשק המשתמש של Cloud Console כדי להציג את רשימת ה-VPC המותרות של Looker.
במסוף Cloud, עוברים אל:
Looker ← מכונת Looker ← פרטים
בדוגמה הבאה, אין רשומות ברשימת ה-VPC המותרות:
עדכון רשימת ה-VPCs המורשים
מעדכנים את המכונה של Looker כך שתתמוך בגישה צפונה על ידי הוספת Looker-psc-demo בתור VPC מורשה.
במסוף Cloud, עוברים אל:
Looker → Looker Instance → Edit
Connections (חיבורים) → Allowed VPCs (רשתות VPC מותרות)
חשוב לבחור את הפרויקט שבו נפרסת Looker-psc-demo, ואחר כך ללחוץ על VPC looker-psc-demo ולהמשיך.
אימות של רשימת ה-VPCs המורשים
הצגת רשימת ה-VPC המורשים המעודכנת
במסוף Cloud, עוברים אל:
Looker ← מכונת Looker ← פרטים
11. יצירת קצה עורפי מסוג PSC
Looker PSC בתור מפיק שירות יוצר URI של קובץ מצורף לשירות, שמשמש את צרכני השירות לפרוס נקודות קצה וקצוות עורפיים כדי לקבל גישה ל-Looker לכיוון צפון. בשלב הבא, תזהו את ה-URI של צירוף השירות של Looker ב-PSC, ולאחר מכן תיצורו קצה עורפי של קבוצת נקודות קצה ברשת (NEG) ב-Private Service Connect ב-VPC של הצרכן.
זיהוי הקובץ המצורף לשירות PSC של Looker
במסוף Cloud, מנווטים ב-URI של השירות המצורף ומעתיקים אותו:
Looker ← מופע של Looker ← פרטים
יצירת קבוצת נקודות קצה של רשת PSC
Inside Cloud Shell מבצעים את הפעולות הבאות כדי לוודא שמעדכנים את psc-target-service:
gcloud compute network-endpoint-groups create looker-northbound-neg \
--network-endpoint-type=private-service-connect \
--psc-target-service=[UPDATE WITH YOU LOOKER SERVICE ATTACHMENT URI] \
--region=$region \
--network=looker-psc-demo \
--subnet=consumer-psc-neg-subnet
דוגמה:
gcloud compute network-endpoint-groups create looker-northbound-neg \
--network-endpoint-type=private-service-connect \
--psc-target-service=projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183 \
--region=$region \
--network=looker-psc-demo \
--subnet=consumer-psc-neg-subnet
אימות יצירת קבוצה של קצה רשת PSC
ב-Cloud Shell, מבצעים את הפעולות הבאות ומוודאים שהערך של pscConnectionStatus אושר:
gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:
דוגמה:
user@cloudshell$ gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:
pscConnectionStatus: ACCEPTED
יצירת מאזן עומסי אפליקציות אזוריות
בשלבים הבאים נעשה שימוש במסוף Cloud כדי ליצור את מאזן העומסים החיצוני האזורי של האפליקציות, תוך שיוך האישורים שנוצרו להגדרות הקצה הקדמי.
במסוף Cloud, עוברים אל:
שירותי רשת ← איזון עומסים ← יצירת מאזן עומסים
צריך לבחור אחת מהאפשרויות האלה:
יצירת התצורה של הקצה הקדמי
בוחרים את האפשרויות הבאות ומתאימים אישית את הסביבה בהתאם לפריסה:
- האזור שמשמש לפריסת תשתית הרשת
- רשת המשנה 'שרת proxy בלבד' מאוכלסת באופן אוטומטי בהתאם לאזור שלך
- כתובת IP סטטית שהוגדרה בעבר זמינה בהתאם לאזור שבחרתם
בחירה ב'אישור' תגרום לתפריט הנפתח של האפשרות להשתמש באישור קיים או חדש:
מעלים את האישור והמפתח הפרטי ובוחרים באפשרות CREATE (יצירה):
בוחרים באפשרות 'סיום' כדי להשלים את הגדרת הקצה הקדמי:
יצירת תצורת הקצה העורפי
צריך לבחור אחת מהאפשרויות האלה:
יצירת כללי הניתוב
בוחרים באפשרויות הבאות (אפשרויות ברירת המחדל):
בדיקה וסיום
בודקים את ההגדרות ובוחרים באפשרות CREATE:
מאזן העומסים מופעל עכשיו:
גישה לממשק המשתמש של Looker
עכשיו, כשמאזן העומסים פעיל, אתם יכולים לגשת לדומיין המותאם אישית שלכם ב-Looker דרך דפדפן אינטרנט. חשוב לציין שייתכן שתוצג לכם אזהרה בהתאם לסוג האישור שבו אתם משתמשים. לדוגמה, אישור לא מהימן לעומת אישור מהימן.
בהמשך מופיעה דוגמה (אישור לא מהימן) לגישה לדומיין המותאם אישית של Looker, looker.cosmopup.com, שמעניק גישה מצפון לממשק המשתמש של Looker:
12. הסרת המשאבים
מחיקת רכיבי מעבדה ממסוף Cloud Shell אחד
gcloud compute forwarding-rules delete regional-external-alb-fr --region=$region -q
gcloud compute target-https-proxies delete regional-external-alb-target-proxy --region=$region -q
gcloud compute url-maps delete regional-external-alb --region=$region -q
gcloud compute backend-services delete looker-psc-neg-backend-svc --region=$region -q
gcloud compute addresses delete regional-alb-static-ip --region=$region -q
gcloud compute network-endpoint-groups delete looker-northbound-neg --region=$region -q
gcloud compute networks delete looker-psc-demo -q
13. מזל טוב
כל הכבוד! הגדרתם בהצלחה ואימתתם את הקישוריות לכיוון צפון ל-Looker באמצעות דומיין לקוח ומאזן עומסים של אפליקציות חיצוניות אזוריות.
יצרתם את התשתית לצרכנים, למדתם איך ליצור PSC NEG ודומיין מותאם אישית, והכרתם את האפשרויות השונות לאישורים. יש כל כך הרבה דברים מעניינים שאפשר לעשות עם Looker.
Cosmopup חושב שהקורסים של Codelab הם מדהימים!!
מה השלב הבא?
כדאי לעיין בחלק מהקורסים האלה ב-Codelab…
- שימוש ב-Private Service Connect כדי לפרסם ולצרוך שירותים
- התחברות לשירותים מקומיים באמצעות Networking היברידי באמצעות Private Service Connect ומאזן עומסים פנימי של TCP Proxy
- גישה לכל ה-codelabs שפורסמו בנושא Private Service Connect
קריאה נוספת וסרטונים
מסמכי עזר
- שימוש באישורי SSL בניהול עצמי | איזון עומסים | Google Cloud
- פריסה של אישור אזורי שמנוהל על ידי Google
- יצירת קצה עורפי של Private Service Connect | VPC | Google Cloud
- יצירת קצה עורפי של Private Service Connect | VPC | Google Cloud
- יצירת מכונה של Private Service Connect ב-Looker (ליבה של Google Cloud)
- איך לפרסם שירות באמצעות Private Service Connect