L7 ALB חיצוני אזורי של Looker PSC

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.

145ea4672c3a3b14.png

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

איור 2.

259493afd914f68b.png

מה תלמדו

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

מה צריך להכין

def88091b42bfe4d.png

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

7f06f9b9876f76c4.png

5. הגדרה ודרישות

הגדרת סביבה בקצב אישי

  1. נכנסים למסוף Google Cloud ויוצרים פרויקט חדש או עושים שימוש חוזר בפרויקט קיים. אם אין לכם עדיין חשבון Gmail או חשבון Google Workspace, עליכם ליצור חשבון.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • שם הפרויקט הוא השם המוצג של המשתתפים בפרויקט. זוהי מחרוזת תווים שלא משמשת את Google APIs. תמיד אפשר לעדכן.
  • מזהה הפרויקט הוא ייחודי לכל הפרויקטים ב-Google Cloud ואי אפשר לשנות אותו אחרי שמגדירים אותו. מסוף Cloud יוצר מחרוזת ייחודית באופן אוטומטי; בדרך כלל לא מעניין אותך מה זה. ברוב ה-codelabs תצטרכו להפנות למזהה הפרויקט שלכם (בדרך כלל מזוהה כ-PROJECT_ID). אם המזהה שנוצר לא מוצא חן בעיניכם, אתם יכולים ליצור מזהה אקראי אחר. לחלופין, אפשר לנסות שם משלך ולראות אם הוא זמין. לא ניתן לשנות את השם אחרי השלב הזה, והוא יישאר למשך כל תקופת הפרויקט.
  • לידיעתך, יש ערך שלישי, Project Number, שבו משתמשים בחלק מממשקי ה-API. מידע נוסף על כל שלושת הערכים האלה זמין במסמכי העזרה.
  1. בשלב הבא צריך להפעיל את החיוב במסוף Cloud כדי להשתמש במשאבים או בממשקי API של Cloud. מעבר ב-Codelab הזה לא יעלה הרבה כסף, אם בכלל. כדי להשבית את המשאבים ולמנוע חיובים אחרי סיום המדריך, אפשר למחוק את המשאבים שיצרתם או למחוק את הפרויקט. משתמשים חדשים ב-Google Cloud זכאים להשתתף בתוכנית תקופת ניסיון בחינם בשווי 1,200 ש"ח.

הפעלת Cloud Shell

אפשר להפעיל את Google Cloud מרחוק מהמחשב הנייד, אבל בסדנת הקוד הזו נשתמש ב-Google Cloud Shell, סביבת שורת פקודה שפועלת ב-Cloud.

במסוף Google Cloud, לוחצים על סמל Cloud Shell בסרגל הכלים שבפינה הימנית העליונה:

55efc1aaa7a4d3ad.png

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

7ffe5cbb04455448.png

המכונה הווירטואלית הזו כוללת את כל הכלים הדרושים למפתחים. יש בה ספריית בית בנפח מתמיד של 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.

6be44a9b2536e3f4.png

בשלב הבא יוצרים את דומיין הלקוח באמצעות תת-הדומיין looker.cosmopup.com

5424ce99136d5b3a.png

דוגמה ל-OAuth

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

c7e5b8c7d2cc6a01.png

9. אישורים

אפשר ליצור אישורים של Compute Engine או של מנהל האישורים. אפשר להשתמש באחת מהשיטות הבאות כדי ליצור אישורים באמצעות מנהל האישורים:

10. הוספה לרשימת ההיתרים של VPC ב-Looker

הצגת רשימת ה-VPCs המורשים

בקטע הבא תשתמשו בממשק המשתמש של Cloud Console כדי להציג את רשימת ה-VPC המותרות של Looker.

במסוף Cloud, עוברים אל:

Looker ← מכונת Looker ← פרטים

בדוגמה הבאה, אין רשומות ברשימת ה-VPC המותרות:

ad33177a2d721ea7.png

עדכון רשימת ה-VPCs המורשים

מעדכנים את המכונה של Looker כך שתתמוך בגישה צפונה על ידי הוספת Looker-psc-demo בתור VPC מורשה.

במסוף Cloud, עוברים אל:

Looker → Looker Instance → Edit

cbbc069688890b82.png

Connections (חיבורים) → Allowed VPCs (רשתות VPC מותרות)

חשוב לבחור את הפרויקט שבו נפרסת Looker-psc-demo, ואחר כך ללחוץ על VPC looker-psc-demo ולהמשיך.

dc931643e1b220a.png

3e26d16d83cceae9.png

אימות של רשימת ה-VPCs המורשים

הצגת רשימת ה-VPC המורשים המעודכנת

במסוף Cloud, עוברים אל:

Looker ← מכונת Looker ← פרטים

e34664c867929c66.png

11. יצירת קצה עורפי מסוג PSC

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

זיהוי הקובץ המצורף לשירות PSC של Looker

במסוף Cloud, מנווטים ב-URI של השירות המצורף ומעתיקים אותו:

Looker ← מופע של Looker ← פרטים

a253f94e946a1eef.png

יצירת קבוצת נקודות קצה של רשת 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, עוברים אל:

שירותי רשת ← איזון עומסים ← יצירת מאזן עומסים

e3474ca153d7c55a.png

צריך לבחור אחת מהאפשרויות האלה:

63c2e656953444f2.png

יצירת התצורה של הקצה הקדמי

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

  • האזור שמשמש לפריסת תשתית הרשת
  • רשת המשנה 'שרת proxy בלבד' מאוכלסת באופן אוטומטי בהתאם לאזור שלך
  • כתובת IP סטטית שהוגדרה בעבר זמינה בהתאם לאזור שבחרתם

a1c24bd4650b27d3.png

בחירה ב'אישור' תגרום לתפריט הנפתח של האפשרות להשתמש באישור קיים או חדש:

aac196a6fa1ee3d5.png

מעלים את האישור והמפתח הפרטי ובוחרים באפשרות CREATE (יצירה):

64a390bda0c9c3f1.png

בוחרים באפשרות 'סיום' כדי להשלים את הגדרת הקצה הקדמי:

758a1921e3020854.png

יצירת תצורת הקצה העורפי

צריך לבחור אחת מהאפשרויות האלה:

e9bf17b1277bd597.png

af3b4a59864b15bc.png

6c784cc0169c892b.png

ba3bf9fa7d3497a5.png

יצירת כללי הניתוב

בוחרים באפשרויות הבאות (אפשרויות ברירת המחדל):

8884421f10a50ce0.png

בדיקה וסיום

בודקים את ההגדרות ובוחרים באפשרות CREATE:

bdf5793ba8f46bb9.png

מאזן העומסים מופעל עכשיו:

61adc0509f07ab15.png

גישה לממשק המשתמש של Looker

עכשיו, כשמאזן העומסים פעיל, אתם יכולים לגשת לדומיין המותאם אישית שלכם ב-Looker דרך דפדפן אינטרנט. חשוב לציין שייתכן שתוצג לכם אזהרה בהתאם לסוג האישור שבו אתם משתמשים. לדוגמה, אישור לא מהימן לעומת אישור מהימן.

בהמשך מופיעה דוגמה (אישור לא מהימן) לגישה לדומיין המותאם אישית של Looker, looker.cosmopup.com, שמעניק גישה מצפון לממשק המשתמש של Looker:

ae43d0d0d7136044.png

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 הם מדהימים!!

c911c127bffdee57.jpeg

מה השלב הבא?

כדאי לעיין בחלק מהקורסים האלה ב-Codelab…

קריאה נוספת וסרטונים

מסמכי עזר