إعداد اتصال Git الخاص لمجلدات Databricks Git (Repos)

تعرف على وكيل خادم Git لمجلدات Databricks Git وتكوينه، وهي خدمة قابلة للتكوين تمكنك من وكيل أوامر Git من مجلدات Git لمساحة عمل Databricks إلى المستودعات المحلية التي يقدمها GitHub Enterprise Server وAzure DevOps Server وBitbucket Server وGitLab المدار ذاتيا.

إشعار

يجب على المستخدمين الذين لديهم وكيل خادم Databricks Git تم تكوينه أثناء المعاينة ترقية أذونات نظام المجموعة للحصول على أفضل أداء. راجع إزالة أذونات CAN_ATTACH_TO العمومية.

ما هو وكيل خادم Git لمجلدات Databricks Git؟

وكيل خادم Databricks Git لمجلدات Git هي ميزة تسمح لك بوكيل أوامر Git من مساحة عمل Azure Databricks إلى خادم Git محلي.

تمثل مجلدات Databricks Git (سابقا Repos) مستودع Git المتصل كمجلدات. يتم التحكم في محتويات هذه المجلدات بواسطة مزامنتها مع مستودع Git المتصل. بشكل افتراضي، يمكن مزامنة مجلدات Git فقط مع موفري Git العامين (مثل GitHub العام وGitLab وAzure DevOps وغيرها). ومع ذلك، إذا كنت تستضيف خادم Git المحلي الخاص بك (مثل GitHub Enterprise Server أو Bitbucket Server أو GitLab المدار ذاتيا)، فيجب عليك استخدام وكيل خادم Git مع مجلدات Git لتوفير وصول Databricks إلى خادم Git الخاص بك. يجب أن يكون خادم Git الخاص بك متاحا من مستوى بيانات Azure Databricks (عقدة برنامج التشغيل).

إشعار

حاليا، يمكن أن تحتوي مجلدات Databricks Git على دفاتر ملاحظات Databricks ومجلدات فرعية فقط، بالإضافة إلى مجموعة محددة من أنواع الأصول الأخرى. للحصول على قائمة حالية من أنواع الأصول المدعومة، راجع الحدود والأسئلة المتداولة لتكامل Git مع مجلدات Databricks Git.

كيف يعمل Git Server Proxy لمجلدات Databricks Git؟

وكيل خادم Git لمجلدات Databricks Git وكلاء أوامر Git من وحدة التحكم Databricks إلى "نظام مجموعة وكيل" قيد التشغيل في مستوى حساب مساحة عمل Databricks. في هذا السياق، نظام مجموعة الوكيل هو نظام مجموعة تم تكوينه لتشغيل خدمة وكيل لأوامر Git من مجلدات Databricks Git إلى مستودع Git المستضاف ذاتيا. تتلقى خدمة الوكيل هذه أوامر Git من وحدة التحكم Databricks وتحيلها إلى مثيل خادم Git الخاص بك.

يوضح الرسم التخطيطي أدناه بنية النظام الشاملة:

رسم تخطيطي يوضح كيفية تكوين Git Server Proxy لمجلدات Databricks Git للتشغيل من مستوى حساب العميل

حاليا، لم يعد وكيل خادم Git يتطلب CAN_ATTACH_TO إذنا لجميع المستخدمين. يمكن الآن مسؤول مع مجموعات وكيل موجودة تعديل إذن ACL لنظام المجموعة لتمكين هذه الميزة. لتمكينها:

  1. حدد Compute من الشريط الجانبي، ثم انقر فوق قائمة كباب قائمة kebab بجوار إدخال Compute ل Git Server Proxy الذي تقوم بتشغيله:

    حدد Compute من الشريط الجانبي، وحدد kebab على يمين مورد حساب خادم وكيل Git

  2. من مربع الحوار، قم بإزالة الإدخال يمكن إرفاق إلى لكافة المستخدمين:

    في مربع الحوار المشروط الذي ينبثق، انقر فوق X إلى يمين كل المستخدمين، ويمكن إرفاق ب

كيف أعمل إعداد Git Server Proxy لمجلدات Databricks Git؟

يصف هذا القسم كيفية إعداد مثيل خادم Git ل Git Server Proxy لمجلدات Databricks Git وإنشاء الوكيل والتحقق من صحة التكوين الخاص بك.

قبل البدء

قبل تمكين الوكيل، ضع في اعتبارك المتطلبات الأساسية التالية ومهام التخطيط:

  • مساحة العمل الخاصة بك لديها ميزة مجلدات Databricks Git ممكنة.
  • يمكن الوصول إلى مثيل خادم Git الخاص بك من وحدة حساب مساحة عمل Azure Databricks VPC، وقد تم تمكين كل من HTTPS ورموز الوصول الشخصية (PATs).

إشعار

يعمل وكيل خادم Git ل Databricks في جميع المناطق التي يدعمها VPC الخاص بك.

الخطوة 1: إعداد مثيل خادم Git

لتكوين مثيل خادم Git الخاص بك:

  1. امنح عقدة برنامج تشغيل نظام مجموعة الوكيل حق الوصول إلى خادم Git الخاص بك.

    يمكن أن يكون لخادم allowlist Git الخاص بمؤسستك عناوين IP التي يسمح بالوصول منها.

    1. إقران عنوان IP صادر ثابت لنسبة استخدام الشبكة التي تنشأ من نظام مجموعة الوكيل. يمكنك القيام بذلك باستخدام Azure Firewall أو جهاز الخروج.
    2. أضف عنوان IP من الخطوة السابقة إلى قائمة السماح لخادم Git.
  2. قم بتعيين مثيل خادم Git للسماح بنقل HTTPS.

    • بالنسبة إلى GitHub Enterprise، راجع عنوان URL البعيد الذي يجب استخدامه في تعليمات GitHub Enterprise.
    • بالنسبة إلى Bitbucket، انتقل إلى صفحة إدارة خادم Bitbucket وحدد إعدادات الخادم. في قسم استضافة HTTP(S) SCM، قم بتمكين خانة الاختيار تمكين HTTP(S).

الخطوة 2: تشغيل دفتر ملاحظات التمكين

لتمكين الوكيل:

  1. سجل الدخول إلى مساحة عمل Azure Databricks كمسؤول مساحة عمل مع حقوق الوصول لإنشاء نظام مجموعة.

  2. استيراد دفتر الملاحظات هذا:

    تمكين وكيل خادم Git لمجلدات Databricks Git لاتصال خادم Git الخاص في مجلدات Git.

  3. حدد "Run All" لتنفيذ المهام التالية:

    • إنشاء مجموعة عقدة واحدة تسمى "Databricks Git Proxy"، والتي لا تنهي تلقائيا. هذه هي "مجموعة الوكيل" التي ستقوم بمعالجة أوامر Git وإعادة توجيهها من مساحة عمل Azure Databricks إلى خادم Git المحلي.
    • تمكين علامة ميزة تتحكم في ما إذا كانت طلبات Git في مجلدات Databricks Git مدعومة عبر نظام المجموعة.

هام

يجب أن تكون مسؤولا في مساحة العمل مع حقوق الوصول لإنشاء نظام مجموعة.

إشعار

يجب أن تكون على علم بما يلي:

  • يؤدي تشغيل مجموعة إضافية طويلة الأمد لاستضافة برنامج الوكيل إلى تكبد وحدات DBUs إضافية. لتقليل التكاليف، يقوم دفتر الملاحظات بتكوين الوكيل لاستخدام مجموعة عقدة واحدة بنوع عقدة غير مكلفة. ومع ذلك، قد تحتاج إلى تعديل خيارات نظام المجموعة لتناسب احتياجاتك.

الخطوة 3: التحقق من صحة تكوين خادم Git

للتحقق من صحة تكوين خادم Git الخاص بك، حاول استنساخ مستودع مستضاف على خادم Git الخاص بك عبر نظام مجموعة الوكيل. يعني النسخ الناجح أنك قمت بتمكين وكيل خادم Git لمساحة العمل الخاصة بك بنجاح.

الخطوة 4: إنشاء مستودعات ممكنة بالوكيل

بعد قيام المستخدمين بتكوين بيانات اعتماد Git الخاصة بهم، لا يلزم اتخاذ خطوات إضافية لإنشاء أو مزامنة المستودعات الخاصة بك. لتكوين بيانات الاعتماد وإنشاء مستودع في مجلدات Databricks Git، راجع تكوين بيانات اعتماد Git وتوصيل مستودع بعيد ب Azure Databricks.

إزالة أذونات CAN_ATTACH_TO العمومية

يمكن مسؤول مع مجموعات وكيل موجودة الآن تعديل إذن ACL للمجموعة للاستفادة من سلوك وكيل خادم Git المتوفر بشكل عام.

إذا قمت مسبقا بتكوين وكيل خادم Databricks Git بامتيازات CAN_ATTACH_TO ، فاستخدم الخطوات التالية لإزالة هذه الأذونات:

  1. حدد Compute من الشريط الجانبي، ثم انقر فوق قائمة كباب قائمة kebab بجوار إدخال Compute لوكيل خادم Git الذي تقوم بتشغيله:

    حدد Compute من الشريط الجانبي، وحدد kebab على يمين مورد حساب خادم وكيل Git

  2. من مربع الحوار، قم بإزالة الإدخال يمكن إرفاق إلى لكافة المستخدمين:

    في مربع الحوار المشروط الذي ينبثق، انقر فوق X إلى يمين كل المستخدمين، ويمكن إرفاق ب

استكشاف الأخطاء وإصلاحها

هل واجهت خطأ أثناء تكوين وكيل خادم Git لمجلدات Databricks Git؟ فيما يلي بعض المشكلات الشائعة وطرق تشخيصها بشكل أكثر فعالية.

قائمة اختيار المشاكل الشائعة

قبل البدء في تشخيص خطأ، تأكد من إكمال الخطوات التالية:

  • تأكد من تشغيل نظام مجموعة الوكيل.
  • تأكد من أن مجلدات Databricks Git الخاصة بك لدى المستخدمين أذونات "إرفاق إلى" على نظام مجموعة الوكيل.
  • قم بتشغيل دفتر ملاحظات التمكين مرة أخرى والتقاط النتائج، إذا لم تكن قد قمت بالفعل. إذا لم تتمكن من تصحيح المشكلة، يمكن لدعم Databricks مراجعة النتائج. يمكنك تصدير دفتر ملاحظات التمكين وإرساله كأرشيف DBC.

فحص السجلات على نظام مجموعة الوكيل

يحتوي الملف في /databricks/git-proxy/git-proxy.log على نظام مجموعة الوكيل على سجلات مفيدة لأغراض تصحيح الأخطاء.

يجب أن يبدأ ملف السجل بالخط Data-plane proxy server binding to ('', 8000)… إذا لم يكن كذلك، فهذا يعني أن الخادم الوكيل لم يبدأ بشكل صحيح. حاول إعادة تشغيل نظام المجموعة، أو احذف نظام المجموعة الذي أنشأته وقم بتشغيل دفتر ملاحظات التمكين مرة أخرى.

إذا كان ملف السجل يبدأ بهذا السطر، فراجع عبارات السجل التي تتبعه لكل طلب Git بدأته عملية Git في مجلدات Databricks Git.

على سبيل المثال:

  do_GET: https://server-address/path/to/repo/info/refs?service=git-upload-pack 10.139.0.25 - - [09/Jun/2021 06:53:02] /
  "GET /server-address/path/to/repo/info/refs?service=git-upload-pack HTTP/1.1" 200`

يمكن أن تكون سجلات الأخطاء المكتوبة إلى هذا الملف مفيدة لمساعدتك أو مشاكل تصحيح أخطاء دعم Databricks.

رسائل الخطأ الشائعة ودقتها

  • تعذر تأسيس اتصال آمن بسبب مشاكل SSL

    قد ترى الخطأ التالي:

      https://git.consult-prodigy.com/Prodigy/databricks_test: Secure connection to https://git.consult-prodigy.com/Prodigy/databricks_test could not be established because of SLL problems
    

    غالبا ما يعني هذا أنك تستخدم مستودعا يتطلب شهادات SSL خاصة. تحقق من محتوى الملف على /databricks/git-proxy/git-proxy.log نظام مجموعة الوكيل. إذا كان يقول فشل التحقق من صحة الشهادة، فيجب عليك إضافة شهادة المرجع إلى سلسلة شهادات النظام. أولا، استخراج شهادة الجذر (باستخدام المتصفح أو خيار آخر) وتحميلها إلى DBFS. ثم قم بتحرير مجموعة Git folders Git Proxy لاستخدام GIT_PROXY_CA_CERT_PATH متغير البيئة للإشارة إلى ملف الشهادة الجذر. لمزيد من المعلومات حول تحرير متغيرات بيئة نظام المجموعة، راجع متغيرات البيئة.

    بعد إكمال هذه الخطوة، أعد تشغيل نظام المجموعة.

    مربع الحوار المشروط Databricks حيث تقوم بتعيين متغيرات البيئة لوكيل Git

  • فشل استنساخ المستودع مع ظهور الخطأ "بيانات اعتماد Git مفقودة/غير صالحة"

    أولا، تحقق من تكوين بيانات اعتماد Git في الإعدادات المستخدم.

    قد تواجه هذا الخطأ:

      Error: Invalid Git credentials. Go to User Settings -> Git Integration and check that your personal access token or app password has the correct repo access.
    

    إذا كانت مؤسستك تستخدم SAML SSO، فتأكد من تخويل الرمز المميز (يمكن القيام بذلك من صفحة إدارة الرمز المميز للوصول الشخصي (PAT) لخادم Git الخاص بك).

الأسئلة الشائعة

ما هي الآثار الأمنية لوكيل خادم Git؟

أهم الأشياء التي يجب معرفتها هي:

  • لا يؤثر الوكيل على بنية الأمان لمستوى التحكم في Databricks.
  • يمكنك الحصول على مجموعة خادم وكيل Git واحدة فقط لكل مساحة عمل.

نعم. في الإصدار الحالي، لا تفرق مساحة عمل Azure Databricks بين المستودعات proxied وغير proxied.

هل تعمل ميزة وكيل Git مع موفري خادم مؤسسة Git الآخرين؟

تدعم مجلدات Databricks Git GitHub Enterprise وBitbucket Server وAzure DevOps Server وGitLab المدار ذاتيا. يجب أن يعمل موفرو خادم Git الآخرون للمؤسسات أيضا إذا كانوا يتوافقون مع مواصفات Git الشائعة.

هل تدعم مجلدات Databricks Git توقيع GPG على التثبيتات؟

‏‏لا.

هل تدعم مجلدات Databricks Git نقل SSH لعمليات Git؟

‏‏لا. يتم دعم HTTPS فقط.

هل استخدام منفذ HTTPS غير افتراضي على خادم Git مدعوم؟

حاليا، يفترض دفتر ملاحظات التمكين أن خادم Git الخاص بك يستخدم منفذ HTTPS الافتراضي 443. يمكنك تعيين متغير GIT_PROXY_CUSTOM_HTTP_PORT البيئة للكتابة فوق قيمة المنفذ بقيمة مفضلة.

هل يمكنك مشاركة وكيل واحد لمساحات عمل متعددة أو هل تحتاج إلى نظام مجموعة وكيل واحد لكل مساحة عمل؟

تحتاج إلى نظام مجموعة وكيل واحد لكل مساحة عمل Azure Databricks.

هل يعمل الوكيل مع إصدار دفتر ملاحظات واحد قديم؟

لا، لا يعمل الوكيل مع إصدار دفتر ملاحظات واحد قديم. يجب على المستخدمين الترحيل إلى إصدار مجلدات Databricks Git.

هل يمكن ل Databricks إخفاء عناوين URL لخادم Git التي يتم نسخها عن بعد؟ هل يمكن للمستخدمين إدخال عناوين URL الأصلية لخادم Git بدلا من عناوين URL proxied؟

نعم لكلا السؤالين. لا يحتاج المستخدمون إلى ضبط سلوكهم للوكيل. مع تنفيذ الوكيل الحالي، يتم توجيه جميع حركة مرور Git لمجلدات Databricks Git من خلال الوكيل. يدخل المستخدمون عنوان URL العادي ل Git repo مثل https://git.company.com/org/repo-name.git.

كم مرة سيعمل المستخدمون مع عناوين URL ل Git؟

عادة ما يضيف المستخدم عنوان URL Git فقط عند إنشاء مستودع جديد أو سحب مستودع موجود لم يتم سحبه بالفعل.

هل الميزة بشفافية بيانات مصادقة الوكيل إلى خادم Git؟

نعم، يستخدم الوكيل الرمز المميز لخادم Git لحساب المستخدم للمصادقة على خادم Git.

هل هناك وصول Databricks إلى رمز خادم Git؟

تصل خدمة وكيل Azure Databricks إلى مستودع Git على خادم Git باستخدام بيانات الاعتماد التي يوفرها المستخدم ومزامنة أي ملفات تعليمات برمجية في المستودع مع المستودع. يتم تقييد الوصول من خلال الأذونات المحددة في رمز الوصول الشخصي الذي يوفره المستخدم (PAT).