كيانات الخدمة ل CI/CD

توضح هذه المقالة كيفية استخدام أساسيات الخدمة ل CI/CD مع Azure Databricks. كيان الخدمة هو هوية تم إنشاؤها للاستخدام مع الأدوات والتطبيقات التلقائية، بما في ذلك:

كأفضل ممارسة أمان، توصي Databricks باستخدام كيان الخدمة ورمزها المميز بدلا من مستخدم Azure Databricks أو رمز الوصول الشخصي لمستخدم مساحة العمل الخاص بك لمنح أنظمة CI/CD الأساسية حق الوصول إلى موارد Azure Databricks. وتشمل بعض فوائد هذا النهج ما يلي:

  • يمكنك منح وتقييد الوصول إلى موارد Azure Databricks لكيان الخدمة بشكل مستقل عن المستخدم. على سبيل المثال، يسمح لك هذا بحظر كيان الخدمة من العمل كمسؤول في مساحة عمل Azure Databricks مع السماح لمستخدمين محددين آخرين في مساحة العمل الخاصة بك بالاستمرار في العمل كمسؤولين.
  • يمكن للمستخدمين حماية رموز الوصول المميزة الخاصة بهم من الوصول إليها بواسطة الأنظمة الأساسية CI/CD.
  • يمكنك تعطيل كيان خدمة أو حذفه مؤقتا دون التأثير على المستخدمين الآخرين. على سبيل المثال، يسمح لك هذا بإيقاف الوصول مؤقتا أو إزالته من كيان خدمة تشك في أنه يتم استخدامه بطريقة ضارة.
  • إذا غادر مستخدم مؤسستك، يمكنك إزالة هذا المستخدم دون التأثير على أي كيان خدمة.

لمنح نظام أساسي CI/CD حق الوصول إلى مساحة عمل Azure Databricks، قم بما يلي:

  1. إنشاء كيان خدمة مدار من Azure Databricks أو كيان خدمة مدار بواسطة معرف Microsoft Entra.
  2. إنشاء رمز Azure Databricks OAuth المميز أو الرمز المميز لمعرف Microsoft Entra لكيان الخدمة المدار من Azure Databricks أو كيان الخدمة المدار من Microsoft Entra ID، اعتمادا على أنواع رموز الوصول المميزة التي يدعمها النظام الأساسي CI/CD. لمزيد من المعلومات، راجع وثائق النظام الأساسي CI/CD.
  3. امنح رمز Azure Databricks OAuth المميز هذا أو الرمز المميز لمعرف Microsoft Entra إلى النظام الأساسي CI/CD.

لإكمال الخطوات من 1 إلى 2، راجع إدارة كيانات الخدمة.

لإكمال الخطوة 3، أكمل الإرشادات الواردة في هذه المقالة.

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

المتطلبات

  • رمز Azure Databricks OAuth المميز أو الرمز المميز لمعرف Microsoft Entra لكيان خدمة مدار من Azure Databricks أو كيان خدمة مدار بواسطة معرف Microsoft Entra. لإنشاء كيان خدمة مدار من Azure Databricks أو مدير خدمة مدار من Microsoft Entra ID ورمز Azure Databricks OAuth المميز أو الرمز المميز لمعرف Microsoft Entra، راجع إدارة أساسيات الخدمة.
  • حساب مع موفر Git الخاص بك.

إعداد إجراءات GitHub

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

لتمكين GitHub Actions من الوصول إلى مساحة عمل Azure Databricks، يجب توفير معلومات حول كيان الخدمة المدارة من Azure Databricks أو كيان الخدمة المدارة من Microsoft Entra ID إلى GitHub Actions. يمكن أن يتضمن ذلك معلومات مثل معرف التطبيق (العميل)، أو معرف الدليل (المستأجر) لمدير خدمة مدار من Microsoft Entra ID، أو كيان الخدمة المدار في Azure Databricks أو سر عميل كيان الخدمة المدار من Microsoft Entra، أو access_token قيمة كيان خدمة مدار من Azure Databricks، اعتمادا على متطلبات إجراء GitHub. لمزيد من المعلومات، راجع إدارة كيانات الخدمة ووثائق إجراء GitHub.

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

توفير معلومات حول كيان الخدمة الخاص بك إلى GitHub Actions

يصف هذا القسم كيفية تمكين GitHub Actions من الوصول إلى مساحة عمل Azure Databricks.

كأفضل ممارسة أمان، توصي Databricks بعدم إدخال معلومات حول كيان الخدمة مباشرة في نص ملف GitHub Actions. يجب توفير هذه المعلومات إلى GitHub Actions باستخدام أسرار GitHub المشفرة بدلا من ذلك.

تعتمد إجراءات GitHub، مثل تلك التي تسردها Databricks في التكامل والتسليم المستمر باستخدام GitHub Actions، على أسرار GitHub المشفرة المختلفة مثل:

  • DATABRICKS_HOST، وهي القيمة https:// متبوعة باسم مثيل مساحة العمل، على سبيل المثال adb-1234567890123456.7.azuredatabricks.net.
  • AZURE_CREDENTIALS، وهو مستند JSON يمثل إخراج تشغيل Azure CLI للحصول على معلومات حول كيان خدمة مدار بواسطة معرف Microsoft Entra. لمزيد من المعلومات، راجع وثائق GitHub Action.
  • AZURE_SP_APPLICATION_ID، وهي قيمة معرف التطبيق (العميل) لمدير خدمة مدار من Microsoft Entra ID.
  • AZURE_SP_TENANT_ID، وهي قيمة معرف الدليل (المستأجر) لمدير خدمة مدار من Microsoft Entra ID.
  • AZURE_SP_CLIENT_SECRET، وهي قيمة قيمة سر العميل لمدير خدمة مدار من Microsoft Entra ID.

لمزيد من المعلومات حول البيانات السرية المشفرة ل GitHub المطلوبة لإجراء GitHub، راجع إدارة كيانات الخدمة والوثائق الخاصة بإجراء GitHub هذا.

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

إضافة رمز الوصول الشخصي GitHub لمستخدم جهاز GitHub إلى مساحة عمل Azure Databricks

يصف هذا القسم كيفية تمكين مساحة عمل Azure Databricks من الوصول إلى GitHub باستخدام مجلدات Azure Databricks Git. هذه مهمة اختيارية في سيناريوهات CI/CD.

كأفضل ممارسة أمنية، توصي Databricks باستخدام مستخدمي جهاز GitHub بدلا من حسابات GitHub الشخصية، للعديد من الأسباب نفسها التي يجب أن تستخدم أساس الخدمة بدلا من مستخدم Azure Databricks. لإضافة رمز الوصول الشخصي GitHub لمستخدم جهاز GitHub إلى مساحة عمل Azure Databricks، قم بما يلي:

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

    إشعار

    عند إنشاء حساب GitHub منفصل جديد كمستخدم جهاز GitHub، لا يمكنك إقرانه بعنوان البريد الإلكتروني لحساب GitHub الشخصي الخاص بك. بدلا من ذلك، راجع مسؤول البريد الإلكتروني لمؤسستك حول الحصول على عنوان بريد إلكتروني منفصل يمكنك إقرانه بحساب GitHub المنفصل الجديد كمستخدم جهاز GitHub.

    راجع مسؤول حساب مؤسستك حول إدارة عنوان البريد الإلكتروني المنفصل ومستخدم جهاز GitHub المرتبط به ورمز الوصول الشخصي GitHub الخاص به داخل مؤسستك.

  2. امنح مستخدم جهاز GitHub حق الوصول إلى مستودع GitHub الخاص بك. راجع دعوة فريق أو شخص في وثائق GitHub. لقبول الدعوة، قد تحتاج أولا إلى تسجيل الخروج من حسابك الشخصي في GitHub، ثم تسجيل الدخول مرة أخرى كمستخدم جهاز GitHub.

  3. سجل الدخول إلى GitHub كمستخدم الجهاز، ثم أنشئ رمز وصول شخصي GitHub لمستخدم الجهاز هذا. راجع إنشاء رمز مميز للوصول الشخصي في وثائق GitHub. تأكد من منح رمز الوصول الشخصي GitHub الوصول إلى مستودع الرمز المميز.

  4. اجمع الرمز المميز لمعرف Microsoft Entra لكيان الخدمة، واسم مستخدم جهاز GitHub، ثم أضف بيانات اعتماد موفر Git إلى مساحة عمل Azure Databricks.

إعداد Azure Pipelines

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

تعتمد ملفات البنية الأساسية لبرنامج ربط العمليات التجارية ل Azure YAML على متغيرات البيئة للوصول إلى مساحة عمل Azure Databricks. تتضمن متغيرات البيئة هذه متغيرات مثل:

  • DATABRICKS_HOST، وهي القيمة https:// متبوعة باسم مثيل مساحة العمل، على سبيل المثال adb-1234567890123456.7.azuredatabricks.net.
  • DATABRICKS_TOKEN، وهي قيمة token_value القيمة التي نسختها بعد إنشاء الرمز المميز لمعرف Microsoft Entra لكيان الخدمة المدار من Microsoft Entra ID.

لإضافة متغيرات البيئة هذه إلى البنية الأساسية لبرنامج ربط العمليات التجارية Azure، راجع استخدام أسرار قيمة مفتاح Azure في Azure Pipelines وتعيين المتغيرات السرية في وثائق Azure.

راجع أيضا مدونة Databricks التالية:

اختياري لسيناريوهات CI/CD: إذا كانت مساحة العمل تستخدم مجلدات Azure Databricks Git، وتريد تمكين مساحة العمل الخاصة بك من الوصول إلى Azure Pipelines، فاجمع:

  • الرمز المميز لمعرف Microsoft Entra لكيان الخدمة
  • اسم مستخدم Azure Pipelines

ثم أضف بيانات اعتماد موفر Git إلى مساحة عمل Azure Databricks.

إعداد GitLab CI/CD

يجب أن يكون GitLab CI/CD قادرا على الوصول إلى مساحة عمل Azure Databricks. إذا كنت تريد أيضا استخدام مجلدات Azure Databricks Git، يجب أن تكون مساحة العمل الخاصة بك قادرة على الوصول إلى GitLab CI/CD.

للوصول إلى مساحة عمل Azure Databricks، تعتمد ملفات GitLab CI/CD .gitlab-ci.yml ، مثل الملفات كجزء من قالب Python الأساسي في dbx، على متغيرات CI/CD المخصصة مثل:

  • DATABRICKS_HOST، وهي القيمة https:// متبوعة باسم مثيل مساحة العمل، على سبيل المثال adb-1234567890123456.7.azuredatabricks.net.
  • DATABRICKS_TOKEN، وهي قيمة token_value القيمة التي نسختها بعد إنشاء الرمز المميز لمعرف Microsoft Entra لكيان الخدمة.

لإضافة هذه المتغيرات المخصصة إلى مشروع GitLab CI/CD، راجع إضافة متغير CI/CD إلى مشروع في وثائق GitLab CI/CD.

إذا كانت مساحة العمل الخاصة بك تستخدم مجلدات Databricks Git، وتريد تمكين مساحة العمل من الوصول إلى GitLab CI/CD، فاجمع:

  • الرمز المميز لمعرف Microsoft Entra لكيان الخدمة
  • اسم مستخدم GitLab CI/CD

ثم أضف بيانات اعتماد موفر Git إلى مساحة عمل Azure Databricks.

إضافة بيانات اعتماد موفر Git إلى مساحة عمل Azure Databricks

يصف هذا القسم كيفية تمكين مساحة عمل Azure Databricks من الوصول إلى موفر Git لمجلدات Azure Databricks Git. هذا اختياري في سيناريوهات CI/CD. على سبيل المثال، قد ترغب فقط في أن يصل موفر Git الخاص بك إلى مساحة عمل Azure Databricks، ولكنك لا تريد أيضا استخدام مجلدات Azure Databricks Git في مساحة العمل الخاصة بك مع موفر Git الخاص بك. إذا كان الأمر كذلك، فتخطى هذا القسم.

قبل البدء، اجمع المعلومات والأدوات التالية:

  • الرمز المميز لمعرف Microsoft Entra لكيان الخدمة.
  • اسم المستخدم المقترن بموفر Git الخاص بك.
  • رمز الوصول المقترن بالمستخدم لموفر Git الخاص بك.

إشعار

بالنسبة إلى Azure Pipelines، راجع استخدام رموز الوصول الشخصية المميزة على موقع Azure على الويب.

  • Databricks CLI الإصدار 0.205 أو أعلى. راجع ما هو Databricks CLI؟. لا يمكنك استخدام واجهة مستخدم Azure Databricks.
  • ملف تعريف تكوين Azure Databricks في الملف الخاص بك.databrickscfg، مع تعيين حقول ملف التعريف بشكل صحيح للمرتبط الذي host يمثل عنوان URL لكل مساحة عمل Azure Databricks، على سبيل المثال https://adb-1234567890123456.7.azuredatabricks.net، ويمثل token الرمز المميز لمعرف Microsoft Entra لكيان الخدمة. (لا تستخدم رمز الوصول الشخصي Databricks لمستخدم مساحة العمل.) راجع مصادقة الرمز المميز للوصول الشخصي ل Azure Databricks.

استخدم Databricks CLI لتشغيل الأمر التالي:

databricks git-credentials create <git-provider-short-name> --git-username <git-provider-user-name> --personal-access-token <git-provider-access-token> -p <profile-name>
  • استخدم أحد الإجراءات التالية ل <git-provider-short-name>:
    • بالنسبة إلى GitHub، استخدم GitHub.
    • بالنسبة إلى Azure Pipelines، استخدم AzureDevOpsServices.
    • بالنسبة إلى GitLab CI/CD، استخدم GitLab.
  • استبدل <git-provider-user-name> باسم المستخدم المقترن بموفر Git الخاص بك.
  • استبدل <git-provider-access-token> برمز الوصول المقترن بالمستخدم لموفر Git الخاص بك.
  • استبدل <profile-name> باسم ملف تعريف تكوين Azure Databricks في ملفك .databrickscfg .

تلميح

للتأكد من نجاح المكالمة، يمكنك تشغيل أحد أوامر Databricks CLI التالية، ومراجعة الإخراج:

databricks git-credentials list -p <profile-name>
databricks git-credentials get <credential-id> -p <profile-name>