Я пытаюсь развернуть 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, но, возможно, я ошибаюсь.
Я пытался переименовать мои файлы, чтобы увидеть, есть ли путаница в путях, но это не работает.
Надеюсь, я дал вам достаточно информации, чтобы помочь мне решить эту проблему. Заранее благодарю за помощь.