Шаблон ARM / DS C - Развертывание 4 виртуальных машин Sharepoint - Ошибка копирования модулей PowerShell на виртуальной машине - PullRequest
0 голосов
/ 30 января 2020

Я пытаюсь развернуть 4 виртуальных машины SharePoint (2 App / 2 Web) в домене AD, установленном на Azure, с использованием шаблона ARM и требуемой конфигурации состояния (DS C). Я использую конфигурацию DS C для настройки моего Sharepoint Vms, но, как вы можете себе представить, есть проблема ...

В моем шаблоне ARM (JSON) у меня есть следующее определение DS C extension:

{
        "name": "ConfiguringSharepoint",
        "type": "Microsoft.Resources/deployments",
        "apiVersion": "2015-01-01",
        "dependsOn": [
            "Microsoft.Resources/deployments/AddSPVMsToAD"
        ],
        "properties": {
            "mode": "Incremental",
            "templateLink": {
                "uri": "[variables('configuration').configuringSharepointUrl]",
                "contentVersion": "1.0.0.0"
            },
            "parameters": {
                "spappVMName": {
                    "value": "[parameters('spappVMName')]"
                },
                "sqlVMName": {
                    "value": "[parameters('sqlVMName')]"
                },
                "location": {
                    "value": "[parameters('location')]"
                },
                "spConfigurationModulesURL": {
                    "value": "[variables('configuration').spConfigurationModulesURL]"
                },
                "spConfigurationFunction": {
                    "value": "[variables('configuration').spConfigurationFunction]"
                },
                "domainName": {
                    "value": "[parameters('domainName')]"
                },
                "adminUserName": {
                    "value": "[parameters('adminUserName')]"
                },
                "adminPassword": {
                    "value": "[parameters('adminPassword')]"
                },
                "sharePointSetupUserAccountUserName": {
                    "value": "[parameters('sharePointSetupUserAccountUserName')]"
                },
                "sharePointFarmAccountUserName": {
                    "value": "[parameters('sharePointFarmAccountUserName')]"
                },
                "sqlServerServiceAccountUserName": {
                    "value": "[parameters('sqlServerServiceAccountUserName')]"
                },
                "sqlAOAGName": {
                    "value": "[variables('sqlAOAGName')]"
                },
                "administrationContentDatabaseName": {
                    "value": "[variables('administrationContentDatabaseName')]"
                },
                "configDatabaseName": {
                    "value": "[variables('configDatabaseName')]"
                },
                "contentDatabaseName": {
                    "value": "[variables('contentDatabaseName')]"
                },
                "sharepointCAfqdn": {
                    "value": "[variables('sharepointCAfqdn')]"
                },
                "sharePointSetupUserAccountPassword": {
                    "value": "[parameters('sharePointSetupUserAccountPassword')]"
                },
                "sharePointFarmAccountPassword": {
                    "value": "[parameters('sharePointFarmAccountPassword')]"
                },
                "sharePointFarmPassphrasePassword": {
                    "value": "[parameters('sharePointFarmPassphrasePassword')]"
                },
                "sqlServerServiceAccountPassword": {
                    "value": "[parameters('sqlServerServiceAccountPassword')]"
                },
                "spwebVMName": {
                    "value": "[parameters('spwebVMName')]"
                },
                "sharepointFarmName": {
                    "value": "[parameters('sharepointFarmName')]"
                },
                "sharepointWebfqdn": {
                    "value": "[variables('sharepointWebfqdn')]"
                },
                "spSiteTemplateName": {
                    "value": "[parameters('spSiteTemplateName')]"
                }
            }
        }
    }

Параметр spConfigurationModulesURL указывает на контейнер больших двоичных объектов Azure, который содержит ZIP-файл с моим SharePointConfiguration.ps1. находится в каталоге root архива ZIP.

Полный URL-адрес выглядит следующим образом: https://azuredeploy.blob.core.windows.net/azuredeploy-dsc/SharePointConfiguration.ps1.zip

И содержимое SharePointConfiguration.ps1.zip ZIP-архив: SharePointConfiguration.ps1.zip

На Azure, когда расширение работает на первой виртуальной машине (Azure -spapp0), я получаю следующую ошибку:

{"code": "DeploymentFailed", "message": "По крайней мере, одна операция развертывания ресурса завершилась неудачно. Для получения подробной информации перечислите операции развертывания. Подробности использования см. В https://aka.ms/arm-debug." "details": [{"code": "Conflict", "message": "{\ r \ n \" status \ ": \" Failed \ ", \ r \ n \" error \ ": {\ r \ n \ "code \": \ "ResourceDeploymentFailure \", \ r \ n \ "message \": \ "Операция ресурса завершена с состоянием подготовки терминала 'Failed'. \", \ r \ n \ "details \": [\ r \ n {\ r \ n \ "code \": \ "VMExtensionProvisioningError \", \ r \ n \ "message \": \ "ВМ сообщила об ошибке при обработке расширения 'Microsoft.Powershell.DS C». Сообщение об ошибке: \ "Расширение DS C получило неверный ввод: произошла ошибка при выполнении сценария или модуля« SharePointConfiguration.ps1 »: термин« C: \ Packages \ Plugins \ Microsoft.Powershell.DSC \ 2.80. 0.0 \ bin \ .. \ DSCWork \ SharePointConfiguration.ps1.2 \ SharePointConfiguration.ps1 'не распознается как имя командлета, функции, файла сценария или работоспособной программы. Проверьте правильность написания имени или если путь был включите, проверьте правильность пути и попробуйте еще раз .. \ nПожалуйста, исправьте ввод и повторите попытку, выполнив расширение. \ ". \" \ r \ n} \ r \ n] \ r \ n} \ r \ n} " }]}

Итак, я проанализировал журналы Azure на ВМ и выяснил, что DS C не копирует необходимые модули powershell из ZIP-архива в "C: \ ProgramFiles \ WindowsPowerShell \ Modules \ ", как и ожидалось, но вместо этого он копирует весь разархивированный архив" SharePointConfiguration.ps1 "и пытается установить его как модуль. Так что это, очевидно, не удалось.

Экран папки модуля Powershell на виртуальной машине Azure -spapp0: C: \ Program Files \ WindowsPowerShell \ Modules

Azure регистрируется на виртуальной машине Azure -spapp0 (C: \ WindowsAzure \ Logs \ Plugins \ Microsoft.Powershell.DSC \ 2.80.0.0):

VERBOSE: [2020-01-29 15:18:08Z] Downloading configuration package
VERBOSE: [2020-01-29 15:18:08Z] Downloading 
https://azuredeploy.blob.core.windows.net/azuredeploy-dsc/SharePointConfiguration.ps1.zip to 
C:\Packages\Plugins\Microsoft.Powershell.DSC\2.80.0.0\bin\..\DSCWork\SharePoint
Configuration.ps1.2\SharePointConfiguration.ps1.zip
VERBOSE: [2020-01-29 15:18:19Z] Extracting SharePointConfiguration.ps1.zip
VERBOSE: [2020-01-29 15:18:19Z] Installing custom DSC resource modules to 
C:\Program Files\WindowsPowerShell\Modules
VERBOSE: [2020-01-29 15:18:19Z] Installing custom DSC resource module 
SharePointConfiguration.ps1
VERBOSE: [2020-01-29 15:18:19Z] Copying 
C:\Packages\Plugins\Microsoft.Powershell.DSC\2.80.0.0\DSCWork\SharePointConfigu
ration.ps1.2\SharePointConfiguration.ps1 to C:\ProgramFiles\WindowsPowerShell\Modules\SharePointConfiguration.ps1 ...
VERBOSE: [2020-01-29 15:18:19Z] Looking for the definition of the configuration
 function.
VERBOSE: [2020-01-29 15:18:19Z] Executing 
C:\Packages\Plugins\Microsoft.Powershell.DSC\2.80.0.0\bin\..\DSCWork\SharePoint
Configuration.ps1.2\SharePointConfiguration.ps1
VERBOSE: [2020-01-29 15:18:19Z] Loading VM agent telemetry assemblies ...
VERBOSE: [2020-01-29 15:18:19Z] [ERROR] while enabling MDS telemetry... [MDS 
Telemetry] C:\WindowsAzure\Packages\WindowsAzureEventSource.dll does not exist 
...
VERBOSE: [2020-01-29 15:18:19Z] [ERROR] An error occurred while executing 
script or module 'SharePointConfiguration.ps1':  The term 
'C:\Packages\Plugins\Microsoft.Powershell.DSC\2.80.0.0\bin\..\DSCWork\SharePoin
tConfiguration.ps1.2\SharePointConfiguration.ps1' is not recognized as the name
 of a cmdlet, function, script file, or operable program. Check the spelling of
 the name, or if a path was included, verify that the path is correct and try 
again.

Я получил еще один DS * Расширение 1061 * для добавления моей виртуальной машины в домен AD, и модули правильно копируются следующим образом:

VERBOSE: [2020-01-29 15:15:08Z] Extracting AddSpServersToAD.ps1.zip
VERBOSE: [2020-01-29 15:15:08Z] Installing custom DSC resource modules to 
C:\Program Files\WindowsPowerShell\Modules
VERBOSE: [2020-01-29 15:15:08Z] Installing custom DSC resource module 
xActiveDirectory
VERBOSE: [2020-01-29 15:15:08Z] Copying 
C:\Packages\Plugins\Microsoft.Powershell.DSC\2.80.0.0\DSCWork\AddSpServersToAD.
ps1.1\xActiveDirectory to C:\Program 
Files\WindowsPowerShell\Modules\xActiveDirectory ...
VERBOSE: [2020-01-29 15:15:08Z] Installing custom DSC resource module 
xComputerManagement
VERBOSE: [2020-01-29 15:15:08Z] Copying 
C:\Packages\Plugins\Microsoft.Powershell.DSC\2.80.0.0\DSCWork\AddSpServersToAD.
ps1.1\xComputerManagement to C:\Program 
Files\WindowsPowerShell\Modules\xComputerManagement ...
VERBOSE: [2020-01-29 15:15:08Z] Looking for the definition of the configuration
 function.
VERBOSE: [2020-01-29 15:15:08Z] Executing 
C:\Packages\Plugins\Microsoft.Powershell.DSC\2.80.0.0\bin\..\DSCWork\AddSpServe
rsToAD.ps1.1\AddSpServersToAD.ps1

Так почему DS C не копирует файлы модулей Powershell для DS C настройка SharePoint, когда он делает это правильно для добавления виртуальной машины в домен? Я думаю, именно поэтому я получаю эту ошибку на Azure, но, возможно, я ошибаюсь.

Я пытался переименовать мои файлы, чтобы увидеть, есть ли путаница в путях, но это не работает.

Надеюсь, я дал вам достаточно информации, чтобы помочь мне решить эту проблему. Заранее благодарю за помощь.

...