Looker PSC Northbound Regional External L7 ALB

1. مقدمة

في هذا الدرس التطبيقي حول الترميز، ستُنشئ "موازن تحميل التطبيقات على مستوى 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 إلى نقاط النهاية داخل الشركة وفي شبكة VPC إلى الخدمات المُدارة والإنترنت. يمكن نشر اتصالات الاتجاه الجنوبي في أي منطقة، بغض النظر عن مكان نشر Looker PSC، كما هو موضّح في الشكل 2.

الشكل 2.

259493afd914f68b.png

ما ستتعرّف عليه

  • متطلبات الشبكة
  • تعديل قائمة Looker المسموح بها للوصول إلى البيانات في الشمال
  • إنشاء خلفية Private Service Connect في "شبكة سحابة إلكترونية خاصة للمستهلك"
  • الشهادات الصادرة عن Google مقابل الشهادات الموقَّعة ذاتيًا

المتطلبات

def88091b42bfe4d.png

2. ما ستُنشئه

عليك إنشاء شبكة مستهلكين مُدرَجة في القائمة المسموح بها، وهي Looker-psc-demo، لتفعيل جهاز موازنة حمل التطبيقات L7 خارجي وواجهة PSC خلفية تتطلب شهادة موقَّعة ذاتيًا من Google أو شهادة موقَّعة ذاتيًا. في أيّ من الطريقتَين، يجب توفُّر نطاق مسجَّل يتطابق مع النطاق المخصّص المحدَّد في Looker.

3- متطلبات الشبكة

في ما يلي تفاصيل متطلبات الشبكة:

المكونات

الوصف

VPC (looker-psc-demo)

سحابة VPC للوضع المخصّص

الشبكة الفرعية لمجموعة نقاط نهاية شبكة اتصال الخدمة الخاصة

تُستخدَم لتخصيص عنوان IP لمجموعة نقاط النهاية في الشبكة.

الشبكة الفرعية للخادم الوكيل فقط

يتم تعيين عنوان IP داخلي لكلّ من الخوادم الوكيلة لجهاز موازنة الحمل. للحِزَم المُرسَلة من خادم وكيل إلى جهاز افتراضي أو نقطة نهاية في الخلفية عنوان IP للمصدر من الشبكة الفرعية للخادم الوكيل فقط.

خدمة الخلفية

تعمل خدمة الخلفية كجسر بين جهاز موازنة الحمل وموارد الخلفية. في البرنامج التعليمي، تكون خدمة الخلفية مرتبطة بـ PSC NEG.

4. طوبولوجيا الدرس التطبيقي حول الترميز

7f06f9b9876f76c4.png

5- الإعداد والمتطلبات

إعداد البيئة ذاتيًا

  1. سجِّل الدخول إلى Google Cloud Console وأنشئ مشروعًا جديدًا أو أعِد استخدام مشروع حالي. إذا لم يكن لديك حساب على Gmail أو Google Workspace، عليك إنشاء حساب.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • اسم المشروع هو الاسم المعروض للمشاركين في هذا المشروع. وهي سلسلة أحرف لا تستخدمها Google APIs. ويمكنك تعديلها في أي وقت.
  • يكون معرّف المشروع فريدًا في جميع مشاريع Google Cloud وغير قابل للتغيير (لا يمكن تغييره بعد ضبطه). تنشئ وحدة تحكّم Cloud Console سلسلة فريدة تلقائيًا، ولا يهمّك عادةً معرفة محتواها. في معظم مختبرات رموز البرامج، ستحتاج إلى الإشارة إلى معرّف المشروع (يُعرَف عادةً باسم PROJECT_ID). إذا لم يعجبك المعرّف الذي تم إنشاؤه، يمكنك إنشاء معرّف آخر عشوائي. يمكنك بدلاً من ذلك تجربة طلبك الخاص ومعرفة ما إذا كان متوفّرًا. ولا يمكن تغييره بعد هذه الخطوة ويبقى طوال مدة المشروع.
  • يُرجى العِلم أنّ هناك قيمة ثالثة، وهي رقم المشروع، تستخدمها بعض واجهات برمجة التطبيقات. اطّلِع على مزيد من المعلومات عن كلّ من هذه القيم الثلاث في المستندات.
  1. بعد ذلك، عليك تفعيل الفوترة في Cloud Console لاستخدام موارد/واجهات برمجة تطبيقات Cloud. لن تتطلّب المشاركة في هذا الدليل التعليمي البرمجي أي تكلفة، أو قد تتطلّب تكلفة بسيطة. لإيقاف الموارد لتجنُّب تحصيل رسوم بعد انتهاء هذا الدليل التعليمي، يمكنك حذف الموارد التي أنشأتها أو حذف المشروع. يكون مستخدمو Google Cloud الجدد مؤهَّلون للانضمام إلى برنامج فترة تجريبية مجانية بقيمة 300 دولار أمريكي.

بدء Cloud Shell

مع أنّه يمكن إدارة Google Cloud عن بُعد من الكمبيوتر المحمول، ستستخدم في هذا الدرس التطبيقي Google Cloud Shell، وهي بيئة سطر أوامر يتم تشغيلها في السحابة الإلكترونية.

من Google Cloud Console، انقر على رمز Cloud Shell في شريط الأدوات العلوي الأيسر:

55efc1aaa7a4d3ad.png

من المفترض ألا تستغرق عملية توفير البيئة والاتصال بها سوى بضع لحظات. عند الانتهاء، من المفترض أن يظهر لك ما يلي:

7ffe5cbb04455448.png

يتم تحميل هذه الآلة الافتراضية مزوّدة بكل أدوات التطوير التي ستحتاج إليها. وتوفّر هذه الشبكة دليلاً رئيسيًا دائمًا بسعة 5 غيغابايت وتعمل على Google Cloud، ما يحسّن بشكل كبير من أداء الشبكة والمصادقة. يمكنك تنفيذ جميع أعمالك في هذا الدليل التعليمي للترميز داخل متصفّح. لست بحاجة إلى تثبيت أي تطبيق.

6- قبل البدء

تفعيل واجهات برمجة التطبيقات

داخل 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، أنشئ الشبكة الفرعية للخادم الوكيل الإقليمي فقط للمنتِج:

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 كنطاق فرعي عام لنظام أسماء النطاقات مرتبط بسجل A لعناوين IP الثابتة (regional-alb-static-ip) المحددة مسبقًا. يمكنك الاطّلاع على لقطة شاشة مأخوذة من محطة دفع تتحقق من صحة بحث نظام أسماء النطاقات.

6be44a9b2536e3f4.png

بعد ذلك، أنشئ نطاق العميل باستخدام النطاق الفرعي looker.cosmopup.com.

5424ce99136d5b3a.png

مثال على OAuth

في ما يلي مثال على بيانات اعتماد OAuth لمصادر البيانات المعتمَدة وبيانات الإعادة للنطاقات الفرعية looker.cosmopup.com.

c7e5b8c7d2cc6a01.png

9. الشهادات

يمكنك إنشاء شهادات Compute Engine أو شهادات "مدير الشهادات". استخدِم أيًا من الطرق التالية لإنشاء الشهادات باستخدام "مدير الشهادات":

  • الشهادات الإقليمية المُدارة ذاتيًا للحصول على معلومات عن إنشاء الشهادات المُدارة ذاتيًا على مستوى منطقة معيّنة واستخدامها، يُرجى الاطّلاع على مقالة نشر شهادة مُدارة ذاتيًا على مستوى منطقة معيّنة. لا تتوفّر خرائط الشهادات.
  • الشهادات الإقليمية التي تديرها Google ولا تتوافق تعيينات الشهادات. يتوافق "مدير الشهادات" مع الأنواع التالية من الشهادات الإقليمية التي تديرها Google:
  • الشهادات الإقليمية التي تديرها Google مع تفويض نظام أسماء النطاقات لكل مشروع. لمزيد من المعلومات، يُرجى الاطّلاع على نشر شهادة إقليمية تديرها Google.
  • الشهادات (الخاصة) الإقليمية التي تديرها Google من خلال خدمة مرجع التصديق للمزيد من المعلومات، يُرجى الاطّلاع على نشر شهادة إقليمية تديرها Google باستخدام خدمة مرجع التصديق.

10. إضافة سحابة VPC إلى القائمة المسموح بها في Looker

عرض شبكات VPC المسموح بها

في القسم التالي، ستستخدم واجهة مستخدم Cloud Console لعرض قائمة "شبكات VPC المسموح بها" في Looker.

في Cloud Console، انتقِل إلى:

Looker ‏→ نسخة Looker ‏→ التفاصيل

في المثال أدناه، ما مِن إدخالات في قائمة "سحابة VPC" المسموح بها:

ad33177a2d721ea7.png

تعديل سحابة VPC المسموح بها

عدِّل نسخة Looker لتتيح الوصول من الشمال إلى الجنوب من خلال إضافة looker-psc-demo كشبكة سحابة إلكترونية خاصة مسموح بها.

في Cloud Console، انتقِل إلى:

Looker → نسخة Looker → تعديل

cbbc069688890b82.png

الاتصالات → شبكات VPC المسموح بها

تأكَّد من اختيار المشروع الذي تم نشر looker-psc-demo فيه، ثمّ VPC looker-psc-demo، ثمّ انقر على "متابعة".

dc931643e1b220a.png

3e26d16d83cceae9.png

التحقُّق من سحابة VPC المسموح بها

عرض قائمة "شبكات VPC المسموح بها" المعدّلة

في Cloud Console، انتقِل إلى:

Looker ‏→ نسخة Looker ‏→ التفاصيل

e34664c867929c66.png

11. إنشاء خلفية PSC

تُنشئ Looker PSC بصفتها مُنشئ خدمة عنوانًا موحّدًا للموارد (URI) لمرفق الخدمة يستخدمه مستهلكو الخدمة لنشر نقاط النهاية والخلفيات للحصول على إذن بالوصول إلى Looker من جهة الشمال. في الخطوة التالية، عليك تحديد معرّف الموارد المنتظم (URI) لمرفق خدمة Looker PSC، ثم إنشاء خلفية "مجموعة نقاط نهاية الشبكة" (NEG) في Private Service Connect في "سحابة المستهلك الافتراضية" (VPC).

تحديد مرفق خدمة Looker PSC

في Cloud Console، انتقِل إلى معرّف الموارد المنتظم (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:

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 Console لإنشاء أداة توزيع الأحمال للتطبيقات الخارجية على مستوى منطقة معيّنة مع ربط شهاداتك التي تم إنشاؤها بإعدادات الواجهة الأمامية.

في Cloud Console، انتقِل إلى:

خدمات الشبكة ← موازنة الحمل ← إنشاء جهاز موازنة الحمل

e3474ca153d7c55a.png

حدِّد الخيارات التالية:

63c2e656953444f2.png

إنشاء إعدادات الواجهة الأمامية

حدِّد الخيارات التالية وخصِّص البيئة استنادًا إلى عملية النشر:

  • المنطقة المستخدَمة في نشر البنية الأساسية للشبكة
  • يتم ملء الشبكة الفرعية للوكيل فقط تلقائيًا استنادًا إلى منطقتك.
  • يتوفّر عنوان IP الثابت المحدّد مسبقًا بناءً على المنطقة التي اخترتها.

a1c24bd4650b27d3.png

يؤدي اختيار "الشهادة" إلى عرض خيار استخدام شهادة حالية أو جديدة:

aac196a6fa1ee3d5.png

حمِّل شهادتك ومفتاحك الخاص، ثم اختَر "إنشاء":

64a390bda0c9c3f1.png

انقر على "تم" لإكمال عملية ضبط الواجهة الأمامية:

758a1921e3020854.png

إنشاء إعدادات الخلفية

حدِّد الخيارات التالية:

e9bf17b1277bd597.png

af3b4a59864b15bc.png

6c784cc0169c892b.png

ba3bf9fa7d3497a5.png

إنشاء قواعد التوجيه

حدِّد الخيارات التالية (الخيارات التلقائية):

8884421f10a50ce0.png

المراجعة والإنهاء

تأكَّد من الإعدادات واختَر "إنشاء":

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 أنّ الدروس التطبيقية حول الترميز رائعة.

c911c127bffdee57.jpeg

الخطوات التالية

اطّلع على بعض هذه الدروس التطبيقية حول الترميز...

تعزيز القراءة الفيديوهات

مستندات المرجع