أتمتة التكامل المستمر باستخدام إصدارات مسارات Azure

ينطبق على:Azure Data Factory Azure Synapse Analytics

تلميح

جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!

فيما يلي دليل لإعداد إصدار Azure Pipelines يقوم بأتمتة نشر مصنع بيانات إلى بيئات متعددة.

المتطلبات

  • اشتراك Azure مرتبط بخادم Azure DevOps (المعروف سابقا ب Visual Studio خادم أساس الفريق) أو Azure Repos الذي يستخدم نقطة نهاية خدمة Azure Resource Manager.

  • مصنع بيانات تم تكوينه باستخدام تكامل Azure Repos Git.

  • مخزن مفاتيح Azure الذي يحتوي على أسرار كل بيئة.

إعداد إصدار Azure Pipelines

  1. في Azure DevOps، افتح المشروع الذي تمت تهيئته مع مصنع البيانات.

  2. على الجانب الأيمن من الصفحة، حدد Pipelines، ثم حدد Releases.

    Select Pipelines, Releases

  3. حدد New pipeline، أو، إذا كان لديك مسارات موجودة، فحدد New ثم New release pipeline.

  4. حدد قالب المهمة الفارغة.

    Select Empty job

  5. في المربع اسم المرحلة، أدخل اسم البيئة الخاصة بك.

  6. حدد Add artifact، ثم حدد مستودع git الذي تم تكوينه مع مصنع بيانات التطوير الخاص بك. حدد publish branch في المستودع Default branch. بشكل افتراضي، فرع النشر هذا هو adf_publish. بالنسبة للإصدار الافتراضي، حدد الأحدث من الفرع الافتراضي.

    Add an artifact

  7. إضافة مهمة نشر Azure Resource Manager:

    أ. في طريقة عرض المرحلة، حدد عرض مهام المرحلة.

    Stage view

    ب. أنشئ مهمة جديدة. ابحث عن ARM Template Deployment، ثم حدد Add.

    جـ. في مهمة «Deployment»، حدد «subscription» و«resource «group و«location» لمصنع البيانات المستهدف. وفر بيانات الاعتماد إذا لزم الأمر.

    د. في قائمة الإجراءات ، حدد إنشاء أو تحديث مجموعة الموارد.

    هـ. حدد زر علامة الحذف (...) بجوار مربع القالب. استعرض قالب Azure Resource Manager الذي تم إنشاؤه في فرع النشر الخاص بك في مستودع git الذي تم تكوينه. ابحث عن الملف ARMTemplateForFactory.json في مجلد <FactoryName> لفرع adf_publish.

    و. حدد بجوار مربع Template parameters لاختيار ملف المعلمات. ابحث عن الملف ARMTemplateParametersForFactory.json في مجلد >FactoryName< لفرع adf_publish.

    ز. حدد بجوار مربع Override template parameters، ثم أدخل قيم المعلمات المطلوبة لمصنع البيانات المستهدف. بالنسبة إلى معلومات تسجيل الدخول التي تأتي من Azure Key Vault، أدخل اسم البيانات السرية بين علامات اقتباس مزدوجة. على سبيل المثال، إذا كان اسم السر هو cred1، أدخل "$(cred1)" لهذه القيمة.

    ح. حدد Incremental لوضع النشر.

    تحذير

    في وضع النشر الكامل، سيتم حذف الموارد الموجودة في مجموعة الموارد ولكن لم يتم تحديدها في قالب Resource Manager الجديد. لمزيد من المعلومات، يرجى الرجوع إلى أوضاع نشر Azure Resource Manager

    Data Factory Prod Deployment

  8. احفظ مسار الإصدار.

  9. لتشغيل إصدار، حدد إنشاء إصدار. لأتمتة إنشاء الإصدارات، راجع مشغلات إصدار Azure DevOps

    Select Create release

هام

في سيناريوهات التكامل المستمر/التسليم المستمر، يجب أن يكون نوع وقت تشغيل التكامل (IR) واحدًا في البيئات المختلفة. على سبيل المثال، إذا كان لديك وقت تشعيل تكامل مستضاف ذاتيًا في بيئة التطوير، يجب أن يكون نفس وقت تشغيل التكامل (IR) من النوع المستضاف ذاتيًا في البيئات الأخرى، مثل الاختبار والإنتاج. وبالمثل، إذا كنت تشارك أوقات تشغيل التكامل عبر مراحل متعددة، يجب عليك تكوين أوقات تشغيل التكامل باعتبارها مستضافة ذاتيًا في جميع البيئات، مثل التطوير والاختبار والإنتاج.

الحصول على البيانات السرية من Azure Key Vault

إذا كانت لديك بيانات سرية لتمريرها في قالب Azure Resource Manager، نوصي باستخدام Azure Key Vault مع إصدار Azure Pipelines.

هناك طريقتان للتعامل مع البيانات السرية:

  • إضافة البيانات السرية إلى ملف المعلمات. لمزيد من المعلومات راجع استخدام Azure Key Vault لتمرير قيمة المعلمة الآمنة أثناء النشر.

    قم بإنشاء نسخة من ملف المعلمات الذي تم تحميله إلى فرع النشر. عين قيم المعلمات التي تريد الحصول عليها من Key Vault باستخدام هذا التنسيق:

    {
        "parameters": {
            "azureSqlReportingDbPassword": {
                "reference": {
                    "keyVault": {
                        "id": "/subscriptions/<subId>/resourceGroups/<resourcegroupId> /providers/Microsoft.KeyVault/vaults/<vault-name> "
                    },
                    "secretName": " < secret - name > "
                }
            }
        }
    }
    

    عند استخدام هذا الأسلوب، يتم سحب البيانات السرية من المخزن الرئيسي تلقائيًا.

    يجب أن يكون ملف المعلمات في فرع النشر أيضًا.

  • أضف مهمة Azure Key Vault قبل مهمة نشر Azure Resource Manager الموضحة في القسم السابق:

    1. في علامة التبويب المهام ، قم بإنشاء مهمة جديدة. ابحث عن Azure Key Vault وأضفه.

    2. في المهمة «Key Vault»، حدد الاشتراك الذي أنشأت فيه المخزن الرئيسي. قم بتوفير بيانات الاعتماد إذا لزم الأمر، ثم حدد key vault.

    Add a Key Vault task

منح الأذونات إلى عامل Azure Pipelines

قد تفشل مهمة Azure Key Vault مع وجود خطأ Access Denied إذا لم يتم تعيين الأذونات الصحيحة. قم بتنزيل سجلات الإصدار ثم حدد موقع الملف .ps1 الذي يحتوي على الأمر لإعطاء أذونات إلى عامل Azure Pipelines يمكنك تشغيل الأمر مباشرة. أو يمكنك نسخ المعرف الأساسي من الملف وإضافة نهج الوصول يدويًا في مدخل Microsoft Azure. Get و List هي الحد الأدنى من الأذونات المطلوبة.

تحديث المشغلات النشطة

ثبّت أحدث وحدات نمطية Azure PowerShell باتباع الإرشادات الواردة في كيفية تثبيتAzure PowerShell وتكوينه.

تحذير

إذا كنت لا تستخدم أحدث إصدارات PowerShell والوحدة النمطية لـ Data Factory، فقد تتعرض لأخطاء إلغاء التسلسل أثناء تشغيل الأوامر.

قد تفشل عملية التوزيع إذا حاولت تحديث المشغلات النشطة. لتحديث المشغلات النشطة، تحتاج إلى إيقافها يدويًا ثم إعادة تشغيلها بعد التوزيع. يمكنك القيام بذلك باستخدام مهمة Azure PowerShell:

  1. في علامة التبويب المهام في الإصدار، أضف مهمة Azure PowerShell . اختر إصدار مهمة هو أحدث إصدار من Azure PowerShell.

  2. حدد الاشتراك الذي يوجد به المصنع.

  3. حدد Script File Path كنوع البرنامج النصي. يتطلب منك هذا حفظ البرنامج النصي PowerShell الخاص بك في المستودع لديك. يمكن استخدام البرنامج النصي PowerShell التالي لإيقاف المشغلات:

    $triggersADF = Get-AzDataFactoryV2Trigger -DataFactoryName $DataFactoryName -ResourceGroupName $ResourceGroupName
    
    $triggersADF | ForEach-Object { Stop-AzDataFactoryV2Trigger -ResourceGroupName $ResourceGroupName -DataFactoryName $DataFactoryName -Name $_.name -Force }
    

يمكنك إكمال خطوات مماثلة (مع الدالة Start-AzDataFactoryV2Trigger ) لإعادة تشغيل المشغلات بعد النشر.

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

إشعار

استخدم PrePostDeploymentScript.Ver2.ps1 إذا كنت ترغب في إيقاف تشغيل/ تشغيل المشغلات التي تم تعديلها فقط بدلاً من إيقاف تشغيل/ تشغيل جميع المشغلات أثناء CI/CD.

تحذير

تأكد من استخدام PowerShell Core في مهمة ADO لتشغيل البرنامج النصي