1. מבוא
בשיעור Codelab הזה נסביר איך ליצור מאזן עומסים פנימי אזורי של אפליקציות ברמה 7 ובק-אנד של Private Service Connect כדי לקבל גישה צפונה ל-Looker. כדי לקבל גישה Northbound ל-Looker, צריך להוסיף את ה-VPC של הצרכן לרשימת ההיתרים של מופע Looker PSC.
Private Service Connect הוא יכולת של רשת Google Cloud שמאפשרת לצרכנים לגשת לשירותים מנוהלים באופן פרטי מתוך רשת ה-VPC שלהם. באופן דומה, הוא מאפשר ליצרני שירותים מנוהלים לארח את השירותים האלה ברשתות VPC נפרדות משלהם ולהציע חיבור פרטי לצרכנים שלהם. לדוגמה, כשמשתמשים ב-Private Service Connect כדי לגשת ל-Looker, המשתמש הוא צרכן השירות ו-Google היא בעלת השירות המנוהל, כפי שמודגש באיור 1.
Figure 1.

גישה מדרום לצפון, שנקראת גם PSC הפוך, מאפשרת לצרכן ליצור שירות שפורסם בתור יצרן כדי לאפשר ל-Looker גישה לנקודות קצה (endpoints) מקומיות, ב-VPC, לשירותים מנוהלים ולאינטרנט. אפשר לפרוס חיבורים מדרום לצפון בכל אזור, בלי קשר למיקום הפריסה של Looker PSC, כפי שמודגש באיור 2.
איור 2.

מה תלמדו
- דרישות רשת
- עדכון רשימת ההיתרים של Looker לגישה צפונה
- יצירת קצה עורפי של Private Service Connect ב-VPC של הצרכן
- אישורים של Google לעומת אישורים בחתימה עצמית
מה תצטרכו
- פרויקט ב-Google Cloud עם הרשאות בעלים
- דומיין רשום
- מופע קיים של Looker PSC

2. מה תפַתחו
תגדירו רשת צרכנים ברשימת ההיתרים, looker-psc-demo, כדי לפרוס מאזן עומסים פנימי אזורי של אפליקציות L7 ו-NEG בקצה העורפי של PSC שנדרש לו אישור של Google או אישור בניהול עצמי. לפרטים נוספים, אפשר לעיין בדף הסיכום של מאזן העומסים והאישור.
3. דרישות רשת
בהמשך מפורטות דרישות הרשת:
רכיבים | תיאור |
VPC (looker-psc-demo) | מצב מותאם אישית של VPC |
תת-רשת של PSC NEG | משמש להקצאת כתובת IP לקבוצת נקודות קצה ברשת |
Proxy Only Subnet | לכל אחד מהפרוקסי של מאזן העומסים מוקצית כתובת IP פנימית. למנות שנשלחות משרת proxy למכונה וירטואלית או לנקודת קצה של קצה עורפי יש כתובת IP של מקור מרשת המשנה של ה-proxy בלבד. |
שירות לקצה העורפי | שירות לקצה העורפי משמש כגשר בין מאזן העומסים לבין משאבי הקצה העורפי. במדריך, שירות הקצה העורפי משויך ל-NEG מסוג PSC. |
4. טופולוגיית Codelab

5. הגדרה ודרישות
הגדרת סביבה בקצב אישי
- נכנסים ל-מסוף Google Cloud ויוצרים פרויקט חדש או משתמשים בפרויקט קיים. אם עדיין אין לכם חשבון Gmail או Google Workspace, אתם צריכים ליצור חשבון.



- שם הפרויקט הוא השם המוצג למשתתפים בפרויקט. זו מחרוזת תווים שלא נמצאת בשימוש ב-Google APIs. תמיד אפשר לעדכן את המיקום.
- מזהה הפרויקט הוא ייחודי לכל הפרויקטים ב-Google Cloud ואי אפשר לשנות אותו אחרי שהוא מוגדר. מסוף Cloud יוצר באופן אוטומטי מחרוזת ייחודית, ובדרך כלל לא צריך לדעת מה היא. ברוב ה-Codelabs, תצטרכו להפנות למזהה הפרויקט (בדרך כלל מסומן כ-
PROJECT_ID). אם אתם לא אוהבים את המזהה שנוצר, אתם יכולים ליצור מזהה אקראי אחר. אפשר גם לנסות שם משתמש משלכם ולבדוק אם הוא זמין. אי אפשר לשנות את ההגדרה הזו אחרי השלב הזה, והיא נשארת לאורך הפרויקט. - לידיעתכם, יש ערך שלישי, מספר פרויקט, שחלק מממשקי ה-API משתמשים בו. מידע נוסף על שלושת הערכים האלה מופיע במאמרי העזרה.
- בשלב הבא, תצטרכו להפעיל את החיוב במסוף Cloud כדי להשתמש במשאבי Cloud או בממשקי API של Cloud. השלמת ה-codelab הזה לא תעלה לכם הרבה, אם בכלל. כדי להשבית את המשאבים ולמנוע חיובים נוספים אחרי שתסיימו את המדריך הזה, תוכלו למחוק את המשאבים שיצרתם או למחוק את הפרויקט. משתמשים חדשים ב-Google Cloud זכאים לתוכנית תקופת ניסיון בחינם בשווי 300$.
מפעילים את Cloud Shell
אפשר להפעיל את Google Cloud מרחוק מהמחשב הנייד, אבל ב-Codelab הזה נשתמש ב-Google Cloud Shell, סביבת שורת פקודה שפועלת בענן.
ב-מסוף Google Cloud, לוחצים על סמל Cloud Shell בסרגל הכלים שבפינה הימנית העליונה:

הקצאת המשאבים והחיבור לסביבה יימשכו רק כמה רגעים. בסיום התהליך, אמור להופיע משהו כזה:

המכונה הווירטואלית הזו כוללת את כל הכלים שדרושים למפתחים. יש בה ספריית בית בנפח מתמיד של 5GB והיא פועלת ב-Google Cloud, מה שמשפר מאוד את הביצועים והאימות ברשת. אפשר לבצע את כל העבודה ב-codelab הזה בדפדפן. לא צריך להתקין שום דבר.
6. לפני שמתחילים
הפעלת ממשקי ה-API
ב-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
ב-Cloud Shell, יוצרים את רשת המשנה של מאזן העומסים של אפליקציות (ALB) הפנימי:
gcloud compute networks subnets create consumer-ilb-subnet --network looker-psc-demo --range 172.16.40.0/28 --region $region --enable-private-ip-google-access
ב-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
8. יצירת דומיין מותאם אישית
כדי להגדיר דומיין מותאם אישית, צריך לבצע את השלבים הבאים:
בדוגמה שלמטה, looker.cosmopup.com הוא הדומיין המותאם אישית

דוגמה ל-OAuth
למטה מופיעה דוגמה לפרטי כניסה ל-OAuth עבור מקורות מורשים וקריאה חוזרת לתת-הדומיין looker.cosmopup.com.

9. אישורים
אתם יכולים ליצור אישורים של Compute Engine או של Certificate Manager. אפשר להשתמש בכל אחת מהשיטות הבאות כדי ליצור אישורים באמצעות Certificate Manager:
- אישורים אזוריים בניהול עצמי. מידע על יצירה ושימוש באישורים אזוריים בניהול עצמי זמין במאמר בנושא פריסת אישור אזורי בניהול עצמי. אין תמיכה במיפוי אישורים.
- אישורים אזוריים שמנוהלים על ידי Google. אין תמיכה במיפוי אישורים. מנהל האישורים תומך בסוגים הבאים של אישורים אזוריים בניהול Google:
- אישורים אזוריים שמנוהלים על ידי Google עם הרשאת DNS לכל פרויקט. מידע נוסף זמין במאמר בנושא פריסת אישור אזורי בניהול Google.
- אישורים אזוריים שמנוהלים על ידי Google (פרטיים) באמצעות Certificate Authority Service. מידע נוסף זמין במאמר בנושא פריסת אישור אזורי שמנוהל על ידי Google באמצעות CA Service.
10. הוספה לרשימת ההיתרים ב-VPC של Looker
הצגת רשתות VPC מותרות
בקטע הבא נשתמש בממשק המשתמש של מסוף Cloud כדי להציג את רשימת ה-VPC המותרים של Looker.
ב-Cloud Console, עוברים אל:
Looker → מכונת Looker → פרטים
בדוגמה הבאה, אין רשומות ברשימה Allowed VPCs:

עדכון של רשתות VPC מותרות
כדי לעדכן את מופע Looker כך שיתמוך בגישה באמצעות northbound, צריך להוסיף את looker-psc-demo כ-Allowed VPC.
ב-Cloud Console, עוברים אל:
Looker → מופע Looker → עריכה

חיבורים ← רשתות VPC מותרות
בוחרים את הפרויקט שבו נפרס looker-psc-demo, ואז את ה-VPC looker-psc-demo ולוחצים על Continue (המשך).


אימות של רשתות VPC מותרות
הצגת הרשימה המעודכנת של רשתות ה-VPC המותרות
ב-Cloud Console, עוברים אל:
Looker → מכונת Looker → פרטים

11. יצירת קצה עורפי מסוג PSC
Looker PSC כבעלים של שירות מנוהל יוצר URI של Service Attachment שמשמש את צרכני השירות לפריסת נקודות קצה ובק-אנדים כדי לקבל גישה צפונה ל-Looker. בשלב הבא, תזהו את ה-URI של צירוף שירות Looker PSC ואז תיצרו קצה עורפי של קבוצת נקודות קצה ברשת (NEG) מסוג Private Service Connect ב-VPC של הצרכן.
זיהוי קובץ מצורף של שירות PSC ב-Looker
במסוף Cloud, עוברים אל Service Attachment URI ומעתיקים אותו:
Looker → מכונת Looker → פרטים

יצירת קבוצת נקודות קצה ברשת PSC
ב-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 הוא accepted:
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
יצירת מאזן עומסים פנימי אזורי של אפליקציות (ALB)
בשלבים הבאים, תשתמשו במסוף Cloud כדי ליצור מאזן עומסים אזורי פנימי של אפליקציות (ALB), ותשייכו את האישורים שנוצרו להגדרת ממשק הקצה.
ב-Cloud Console, עוברים אל:
Network Services (שירותי רשת) → Load Balancing (איזון עומסים) → Create Load Balancer (יצירת מאזן עומסים)

בוחרים את האפשרויות הבאות:

יצירת תצורת הקצה העורפי
בוחרים באפשרויות הבאות ומתאימים אישית את הסביבה בהתאם לפריסה:
- האזור שבו נעשה שימוש לפריסת תשתית הרשת
- רשת: looker-psc-demo
- רשת משנה מסוג Proxy-Only מאוכלסת אוטומטית על סמך האזור והרשת שלכם




כללי ניתוב
לא נדרשת הגדרה

Frontend configuration



מוודאים שמאזן העומסים מופעל ומקבלים את כתובת ה-IP.
ב-Cloud Console → Network Services → Load Balancing → looker-ilb-alb

12. רזולוציית DNS
פענוח DNS לדומיין המותאם אישית יכול להיות סמכותי בשרת מקומי או ב-Cloud DNS. במדריך הזה נגדיר את Cloud DNS כשרת הסמכותי לדומיין המותאם אישית של Looker. כדי להפעיל פענוח DNS מ-On-Premises ל-GCP DNS, צריך להפעיל את מדיניות השרתים הנכנסים. כשיוצרים מדיניות שרתים להפניה פנימית, Cloud DNS יוצר נקודות כניסה למדיניות השרתים להפניה פנימית ברשת ה-VPC שאליה מוחלת מדיניות השרתים. נקודות הכניסה של מדיניות השרתים לתעבורה נכנסת הן כתובות IPv4 פנימיות שמקורן בטווח הכתובות הראשי של IPv4 של כל תת-רשת ברשת ה-VPC הרלוונטית, למעט תת-רשתות של Proxy בלבד.
בקטע הבא, נוצר אזור DNS פרטי לדומיין המותאם אישית של Looker, looker.cosmopup.com, ורשומת A שכוללת את כתובת ה-IP של איזון העומסים.
13. יצירת שרת DNS פרטי
ב-Cloud Shell, יוצרים את האזור הפרטי של Cloud DNS.
gcloud dns --project=$projectid managed-zones create looker-cosmopup-dns --description="" --dns-name="looker.cosmopup.com." --visibility="private" --networks="https://compute.googleapis.com/compute/v1/projects/$projectid/global/networks/looker-psc-demo"
ב-Cloud Shell, יוצרים את רשומת ה-A שכוללת את כתובת ה-IP של מאזן העומסים, שהתקבלה בשלב הקודם.
gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="<insert-your-ip>"
דוגמה:
gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="172.16.20.7"
לאחר מכן, צריך להגדיר רשת היברידית (למשל Interconnect, HA-VPN) בין ה-VPC של looker-psc-demo לבין הרשת המקומית כדי לאפשר קישוריות.
כדי ליצור קישוריות היברידית של NEG לשרת מקומי, צריך לבצע את השלבים הבאים:
- בחירת מוצרים של Network Connectivity | Google Cloud
- בארכיטקטורת רכזת וחישורים עם קישור בין רשתות VPC שכנות (peering), ה-NEG ההיברידי פרוס באותו VPC כמו Cloud Router (הרכזת).
- חשוב לוודא שחומות האש המקומיות מעודכנות כך שיכללו את טווח תת-הרשת של שרת ה-proxy בלבד, כי תת-הרשת הזו משמשת ככתובת ה-IP של המקור לתקשורת עם עומסי עבודה מקומיים.
- עדכון DNS מקומי עם כתובת ה-IP של העברת הנתונים הנכנסים כפותר DNS עבור looker.cosomopup.com
גישה לממשק המשתמש של Looker
עכשיו מאזן העומסים פועל, ואפשר לגשת לדומיין Looker המותאם אישית דרך דפדפן אינטרנט. חשוב לדעת: יכול להיות שתופיע אזהרה בהתאם לסוג האישור שבו אתם משתמשים, למשל אישור לא מהימן לעומת אישור מהימן.
בהמשך מופיעה דוגמה (אישור לא מהימן) לגישה לדומיין המותאם אישית של Looker, looker.cosmopup.com, שמאפשר גישה צפונה לממשק המשתמש של Looker:

14. הסרת המשאבים
ממסוף Cloud Shell יחיד, מוחקים את רכיבי המעבדה:
gcloud compute forwarding-rules delete regional-internal-alb-fr --region=$region -q
gcloud compute target-https-proxies delete regional-internal-alb-target-proxy --region=$region -q
gcloud compute url-maps delete regional-internal-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
15. מזל טוב
הגדרתם ואימתתם בהצלחה קישוריות צפונה ל-Looker באמצעות דומיין של לקוח ומאזן עומסים אזורי פנימי של אפליקציות (ALB).
יצרתם את תשתית הצרכן, למדתם איך ליצור NEG של PSC ודומיין בהתאמה אישית, והכרתם את אפשרויות האישורים השונות. יש כל כך הרבה דברים מרתקים שתוכלו לעשות עם Looker.
Cosmopup חושב ש-codelabs הם מדהימים!!

מה השלב הבא?
כדאי לעיין ב-Codelabs הבאים…
- שימוש ב-Private Service Connect כדי לפרסם ולצרוך שירותים
- התחברות לשירותים בארגון דרך Hybrid Networking באמצעות Private Service Connect ומאזן עומסים (LB) פנימי מסוג TCP Proxy
- גישה לכל ה-codelab שפורסמו בנושא 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 core)
- איך מפרסמים שירות באמצעות Private Service Connect