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

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.

145ea4672c3a3b14.png

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

איור 2.

259493afd914f68b.png

מה תלמדו

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

מה תצטרכו

def88091b42bfe4d.png

2. מה תפַתחו

תקימו רשת צרכנים ברשימת ההיתרים, looker-psc-demo, כדי לפרוס מאזן עומסים של אפליקציות (ALB) אזורי חיצוני של L7 ו-NEG בקצה העורפי של PSC שדורש אישור של Google או אישור בחתימה עצמית. בכל אחת מהשיטות, נדרש דומיין רשום שתואם לדומיין המותאם אישית שהוגדר ב-Looker.

3. דרישות רשת

בהמשך מפורטות דרישות הרשת:

רכיבים

תיאור

VPC (looker-psc-demo)

מצב מותאם אישית של VPC

תת-רשת של PSC NEG

משמש להקצאת כתובת IP לקבוצת נקודות קצה ברשת

Proxy Only Subnet

לכל אחד מהפרוקסי של מאזן העומסים מוקצית כתובת IP פנימית. למנות שנשלחות משרת proxy למכונה וירטואלית או לנקודת קצה של קצה עורפי יש כתובת IP של מקור מרשת המשנה של ה-proxy בלבד.

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

שירות לקצה העורפי משמש כגשר בין מאזן העומסים לבין משאבי הקצה העורפי. במדריך, שירות הקצה העורפי משויך ל-NEG מסוג PSC.

4. טופולוגיית Codelab

7f06f9b9876f76c4.png

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

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

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

fbef9caa1602edd0.pnga99b7ace416376c4.png5e3ff691252acf41.png

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

מפעילים את Cloud Shell

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

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

55efc1aaa7a4d3ad.png

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

7ffe5cbb04455448.png

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

ב-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 עבור מקורות מורשים וקריאה חוזרת לתת-הדומיין looker.cosmopup.com.

c7e5b8c7d2cc6a01.png

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:

ad33177a2d721ea7.png

עדכון של רשתות VPC מותרות

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

ב-Cloud Console, עוברים אל:

‫Looker → מופע Looker → עריכה

cbbc069688890b82.png

חיבורים ← רשתות VPC מותרות

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

dc931643e1b220a.png3e26d16d83cceae9.png

אימות של רשתות VPC מותרות

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

ב-Cloud Console, עוברים אל:

‫Looker → מכונת Looker → פרטים

e34664c867929c66.png

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

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

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

במסוף Cloud, עוברים אל Service Attachment URI ומעתיקים אותו:

‫Looker → מכונת Looker → פרטים

a253f94e946a1eef.png

יצירת קבוצת נקודות קצה ברשת 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 (יצירת מאזן עומסים)

e3474ca153d7c55a.png

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

63c2e656953444f2.png

יצירת הגדרת הקצה הקדמי

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

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

a1c24bd4650b27d3.png

כשבוחרים באפשרות 'אישור', מופיע תפריט נפתח עם האפשרות להשתמש באישור קיים או ליצור אישור חדש:

aac196a6fa1ee3d5.png

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

64a390bda0c9c3f1.png

לוחצים על DONE (סיום) כדי להשלים את ההגדרה של Frontend:

758a1921e3020854.png

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

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

e9bf17b1277bd597.pngaf3b4a59864b15bc.png6c784cc0169c892b.pngba3bf9fa7d3497a5.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 באמצעות דומיין של לקוח ומאזן עומסים אזורי חיצוני של אפליקציות.

יצרתם את תשתית הצרכן, למדתם איך ליצור NEG של PSC ודומיין בהתאמה אישית, והכרתם את אפשרויות האישורים השונות. יש כל כך הרבה דברים מרתקים שתוכלו לעשות עם Looker.

‫Cosmopup חושב ש-codelabs הם מדהימים!!

c911c127bffdee57.jpeg

מה השלב הבא?

כדאי לעיין ב-Codelabs הבאים…

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

מסמכי עזר