首页 > 解决方案 > 在 Azure Json 上找不到模块 DSC 扩展

问题描述

我正在尝试在安装期间运行 DSC 文件,它昨天和今天都在工作,但我收到以下错误:

       "code": "VMExtensionProvisioningError",
        "message": "VM has reported a failure when processing extension 'IIS2'. Error message: \"The DSC Extension received an incorrect input: An error occurred while executing script or module 'configuration':  
The specified module 'configuration' was not loaded because no valid module file was found in any module directory..\nPlease correct the input and retry executing the extension.\"."

我认为没有人弄乱它,但我花了几个小时试图找出问题可能是什么,希望能得到一些想法,如果有人能看到我可能错过的任何东西。

DSC 文件是:

configuration IIS2
    {

    Import-DscResource -ModuleName xActiveDirectory, xStorage, xNetworking, PSDesiredStateConfiguration, xPendingReboot, xDnsServer

        Node localhost
        {
            LocalConfigurationManager
            {
                RebootNodeIfNeeded = $true
            }

            xWaitforDisk Disk2
            {
                DiskId = 2
                RetryIntervalSec =$RetryIntervalSec
                RetryCount = $RetryCount
            }

            xDisk ADDataDisk {
                DiskId = 2
                DriveLetter = "F"
                DependsOn = "[xWaitForDisk]Disk2"
            }

            WindowsFeature Failover-Clustering
            {
                Ensure = "Present"
                Name = "Failover-Clustering"
            }

            WindowsFeature Web-Server
            {
                Ensure = "Present"
                Name = "Web-Server"
            }

       }
    }

标签: azurepowershellarm-templatedscazure-template

解决方案


我认为你所说的它是什么configuration,它实际上是什么IIS2(我的意思是来自 ARM 模板)。

{
    "name": "System_PowerShell_DSC",
    "properties": {
        "publisher": "Microsoft.Powershell",
        "type": "DSC",
        "typeHandlerVersion": "2.19",
        "autoUpgradeMinorVersion": true,
        "settings": {
            "configuration": {
                "url": "url",
                "script": "file-name.ps1",
                "function": "function-name" # IIS2 in your case
            }
        },
        "protectedSettings": {
            "configurationArguments": {
                "sfCert": {
                    "userName": "yyy",
                    "password": "xxx"
                }
            }
        }
    }

推荐阅读