ملحق PowerShell DSC

ملاحظة

قبل تمكين ملحق DSC، نود أن تعرف أن إصدارا أحدث من DSC متاح الآن بشكل عام، تتم إدارته بواسطة ميزة من تكوين الجهاز المسمى Azure Automange. تجمع ميزة تكوين الجهاز بين ميزات معالج ملحق تكوين الحالة المطلوبة (DSC) وتكوين حالة أتمتة Azure والميزات الأكثر شيوعا المطلوبة من ملاحظات العملاء. يتضمن تكوين الجهاز أيضا دعم الجهاز المختلط من خلال الخوادم التي تدعم Arc.

نظرة عامة

يتم نشر ملحق PowerShell DSC لـ Windows ودعمه بواسطة Microsoft. يقوم الملحق بتحميل تكوين PowerShell DSC وتطبيقه على جهاز Azure ظاهري. ملحق DSC يستدعي PowerShell DSC لتفعيل تكوين DSC المستلم على الجهاز الظاهري. يوضح هذا المستند تفاصيل الأنظمة الأساسية المدعومة والتكوينات وخيارات التوزيع لملحق الجهاز الظاهري لـ DSC لنظام Windows.

المتطلبات الأساسية

نظام التشغيل

يدعم ملحق DSC أنظمة التشغيل التالية

Windows Server 2022 وWindows Server 2019 وWindows Server 2016 وWindows Server 2012R2 وWindows Server 2012 وWindows Server 2008 R2 SP1 وWindows Client 7/8.1/10

الاتصال بالإنترنت

يتطلب ملحق DSC Windows أن يكون الجهاز الظاهري الهدف قادرًا على الاتصال بـ Azure وموقع حزمة التكوين (ملف ‎.zip) إذا تم تخزينه في موقع خارج Azure.

مخطط الملحق

يعرض JSON التالي مخطط جزء الإعدادات من ملحق DSC في قالب Azure Resource Manager.

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "name": "Microsoft.Powershell.DSC",
  "apiVersion": "2018-10-01",
  "location": "<location>",
  "properties": {
    "publisher": "Microsoft.Powershell",
    "type": "DSC",
    "typeHandlerVersion": "2.77",
    "autoUpgradeMinorVersion": true,
    "settings": {
        "wmfVersion": "latest",
        "configuration": {
            "url": "http://validURLToConfigLocation",
            "script": "ConfigurationScript.ps1",
            "function": "ConfigurationFunction"
        },
        "configurationArguments": {
            "argument1": "Value1",
            "argument2": "Value2"
        },
        "configurationData": {
            "url": "https://foo.psd1"
        },
        "privacy": {
            "dataCollection": "enable"
        },
        "advancedOptions": {
            "forcePullAndApply": false,
            "downloadMappings": {
             "specificDependencyKey": "https://myCustomDependencyLocation"
            }
        }
    },
    "protectedSettings": {
        "configurationArguments": {
            "parameterOfTypePSCredential1": {
                "userName": "UsernameValue1",
                "password": "PasswordValue1"
            },
            "parameterOfTypePSCredential2": {
                "userName": "UsernameValue2",
                "password": "PasswordValue2"
            }
        },
        "configurationUrlSasToken": "?g!bber1sht0k3n",
        "configurationDataUrlSasToken": "?dataAcC355T0k3N"
    }
  }
}

قيم Property

الاسم القيمة / المثال نوع البيانات
apiVersion 2018-10-01 التاريخ
الناشر Microsoft.Powershell.DSC سلسلة
النوع DSC سلسلة
typeHandlerVersion 2.77 int

قيم خاصية الإعدادات

الاسم نوع البيانات الوصف
settings.wmfVersion سلسلة يحدد إصدار Windows Management Framework الواجب تثبيته على الجهاز الظاهري. سيؤدي تعيين هذه الخاصية إلى "الأحدث" إلى تثبيت أحدث إصدار من WMF. القيم الحالية الوحيدة الممكنة لهذه الخاصية هي "4.0" و"5.0" و"الأحدث". تخضع هذه القيم الممكنة للتحديثات. القيمة الافتراضية هي "الأحدث".
settings.configuration.url سلسلة يحدد موقع عنوان URL الذي يمكن منه تنزيل الملف المضغوط لتكوين DSC. إذا كان عنوان URL المقدم يتطلب رمزًا مميزًا لـ SAS للوصول، فستحتاج إلى تعيين الخاصية protectedSettings.configurationUrlSasToken على قيمة رمز SAS المميز الخاص بك. هذه الخاصية مطلوبة إذا تم تعريف settings.configuration.script و/أو settings.configuration.function.
settings.configuration.script سلسلة يحدد اسم ملف البرنامج النصي الذي يحتوي على تعريف تكوين DSC الخاص بك. يجب أن يكون هذا البرنامج النصي في المجلد الجذر للملف المضغوط الذي تم تنزيله من عنوان URL المحدد بواسطة الخاصية configuration.url. هذه الخاصية مطلوبة إذا تم تعريف settings.configuration.url و/أو settings.configuration.script.
settings.configuration.function سلسلة يحدد اسم تكوين DSC الخاص بك. يجب تضمين التكوين المسمى في البرنامج النصي المعرف بواسطة configuration.script. هذه الخاصية مطلوبة إذا تم تعريف settings.configuration.url و/أو settings.configuration.function.
settings.configurationArguments المجموعة يحدد أي معلمات ترغب في تمريرها إلى تكوين DSC الخاص بك. لن يتم تشفير هذه الخاصية.
settings.configurationData.url سلسلة يحدد عنوان URL الذي يمكنك منه تنزيل ملف بيانات التكوين (‎.pds1) لاستخدامه كإدخال لتكوين DSC. إذا كان عنوان URL المقدم يتطلب رمزًا مميزًا لـ SAS للوصول، فستحتاج إلى تعيين الخاصية protectedSettings.configurationDataUrlSasToken على قيمة رمز SAS المميز الخاص بك.
settings.privacy.dataEnabled سلسلة تمكين مجموعة بيانات تتبع الاستخدام أو تعطيلها. القيم الوحيدة الممكنة لهذه الخاصية هي "تمكين" أو "تعطيل" أو "$null". سيؤدي ترك هذه الخاصية فارغة أو خالية إلى تمكين بيانات تتبع الاستخدام
settings.advancedOptions.forcePullAndApply قيمة منطقية تم تصميم هذا الإعداد لتحسين تجربة العمل مع الملحق لتسجيل العقد باستخدام Azure Automation DSC. إذا كانت القيمة هي $true، فسينتظر الملحق التشغيل الأول للتكوين الذي تم سحبه من الخدمة قبل إرجاع النجاح / الفشل. إذا تم تعيين القيمة إلى «$false»، فستشير الحالة التي تم إرجاعها بواسطة الملحق فقط إلى ما إذا كانت العقدة قد تم تسجيلها في تكوين حالة التشغيل التلقائي لـ Azure بنجاح، ولن يتم تشغيل تكوين العقدة أثناء التسجيل.
settings.advancedOptions.downloadMappings المجموعة يحدد المواقع البديلة لتنزيل التبعيات، مثل WMF و‎.NET

قيم خاصية الإعدادات المحمية

الاسم نوع البيانات الوصف
protectedSettings.configurationArguments سلسلة يحدد أي معلمات ترغب في تمريرها إلى تكوين DSC الخاص بك. سيتم تشفير هذه الخاصية.
protectedSettings.configurationUrlSasToken سلسلة يحدد الرمز المميز SAS للوصول إلى عنوان URL المحدد بواسطة configuration.url. سيتم تشفير هذه الخاصية.
protectedSettings.configurationDataUrlSasToken سلسلة يحدد الرمز المميز SAS للوصول إلى عنوان URL المحدد بواسطة configurationData.url. سيتم تشفير هذه الخاصية.

توزيع القالب

يمكن توزيع ملحقات جهاز Azure الظاهري باستخدام قوالب Azure Resource Manager. تعد القوالب مثالية عند توزيع جهاز ظاهري واحد أو أكثر يشترط التكوين بعد التوزيع. يمكن العثور على نموذج قالب Resource Manager الذي يتضمن ملحق DSC لنظام Windows في معرض التشغيل السريع في Azure.

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

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

يمكن استرداد البيانات المتعلقة بحالة عمليات توزيع الملحقات من مدخل Microsoft Azure، وباستخدام Azure CLI. لمشاهدة حالة توزيع ملحقات جهاز ظاهري معين، قم بتشغيل الأمر التالي باستخدام Azure CLI.

az vm extension list --resource-group myResourceGroup --vm-name myVM -o table

يتم تنزيل حزمة الملحقات وتوزيعها في هذا الموقع على جهاز Azure ظاهري

C:\Packages\Plugins\{Extension_Name}\{Extension_Version}

يحتوي ملف حالة الملحق على رموز الحالة الفرعية ونجاح الحالة / رموز الخطأ إلى جانب الخطأ التفصيلي والوصف لكل تشغيل ملحق.

C:\Packages\Plugins\{Extension_Name}\{Extension_Version}\Status\{0}.Status  -> {0} being the sequence number

يتم تسجيل سجلات إخراج الملحقات إلى الدليل التالي:

C:\WindowsAzure\Logs\Plugins\{Extension_Name}\{Extension_Version}

رموز الخطأ ومعانيها

التعليمات البرمجية للأخطاء المعنى الإجراء الممكن اتخاذه
1000 خطأ عام يتم توفير رسالة هذا الخطأ بواسطة الاستثناء المحدد في سجلات الملحقات
52 خطأ تثبيت الملحق يتم توفير رسالة هذا الخطأ بواسطة الاستثناء المحدد
1002 خطأ تثبيت WMF حدث خطأ أثناء تثبيت WMF.
1004 حزمة مضغوطة غير صالحة حزمة مضغوطة غير صالحة؛ خطأ في تفريغ الحزمة المضغوطة
1100 خطأ في الوسيطة يشير إلى وجود مشكلة في الإدخال الذي يقدمه المستخدم. يتم توفير رسالة الخطأ بواسطة الاستثناء المحدد

الدعم

إذا كنت بحاجة إلى مزيد من المساعدة في أي وقت في هذه المقالة، فيمكنك الاتصال بخبراء Azure في منتديات MSDN Azure وStack Overflow. بدلاً من ذلك، يمكنك تقديم حدث دعم Azure. انتقل إلى موقع دعم Azure وحدد Get support. للحصول على معلومات حول استخدام Azure Support، اقرأ الأسئلة المتداولة حول دعم Microsoft Azure.