2017-02-02 12 views
0

Я развертываю группу ресурсов в Azure, состоящую из виртуальной машины, сети, учетной записи автоматизации с некоторыми рабочими книгами, между прочим, используя шаблон JSON.Развертывание шаблона Azure: что означает «ContentLink не может быть нулевым»?

Я получаю следующие ошибки,

New-AzureRmResourceGroupDeployment: 4:49:23 PM - Ресурс Microsoft.Automation/automationAccounts/нетривиальную 'DeployAutomationName/AzureClassicAutomationTutorial' не удалось с сообщением «{ «code»: «BadRequest», «message»: «{\" Message \ ": \" Указан неверный аргумент. Аргумент ContentLink не может быть пустым \ "}"

Как:

New-AzureRmResourceGroupDeployment:. 4:49:23 PM - Ресурс Microsoft.Automation/automationAccounts/модули ' DeployAutomationName/Microsoft.WSMan.Management 'с сообщением ' {"code": "BadRequest", "message": "{\" Message \ ": \" Свойство ContentLink должно быть предоставлено в PUT или re-PUT операции. \ "}" } '

Эти две ошибки повторяются для разных видов «Активы» (я думаю, это термин) моей учетной записи автоматизации. Таким образом, для modules, runbooks, certificates и connections.

Что такое contenLink, и как я могу убедиться, что это не Null? «ContentLink» нигде не появляется в моем шаблоне, и я не могу найти никаких объяснений в Интернете, что именно contentLink, кроме this. Кроме того, я предполагаю, что «PUT» или «re-PUT» является частью остального API, который доставляет шаблон, и я не имею прямого контроля над этим процессом. Какое использование является сообщением об ошибке, которое описывает проблемы, с которыми я не имею прямого контроля?

Эта проблема является синонимом многих трудностей, я был успешно поиск неполадок Azure шаблоны: кажется, сообщения об ошибках, которые я получаю, чтобы описывать Azure Internals, что у меня нет понимания, ни доступа тоже. Как я могу устранить или отладить, когда у меня нет доступа к коду, который на самом деле бросает это исключение, а также объяснение того, что означает это исключение?

Спасибо! Here это мой template, я бы только копировал соответствующего текст, но я не имею понятия, что является отношения и что не:

+0

вы можете указать ссылку на шаблон? – 4c74356b41

+0

Таким образом, мы можем видеть это в полном объеме? Дай мне попробовать. Btw Вы единственный человек, который отвечает на вопросы Azure ??? Мне плохо, что все мои проблемы падают на вас. – AllTradesJack

+0

Есть ли какая-либо конфиденциальная информация из шаблона, например, идентификатор подписки? – AllTradesJack

ответ

1

Итак, после того, как тыкать немного, это выглядит как вам не хватает содержимого рабочей книги (самого скрипта).так что ваш runbook ресурс должен выглядеть следующим образом:

{ 
    "type": "Microsoft.Automation/automationAccounts/runbooks", 
    "name": "[parameters('runbooks_AzureAutomationTutorial_name')]", 
    "apiVersion": "2015-10-31", 
    "location": "eastus2", 
    "properties": { 
     "runbookType": "GraphPowerShell", 
     "logVerbose": false, 
     "logProgress": false, 
     "publishContentLink": { 
      "uri": "[variables('scriptUri')]", 
      "version": "1.0.0.0" 
     } 
    }, 
    "resources": [], 
    "dependsOn": [ 
     "[resourceId('Microsoft.Automation/automationAccounts', parameters('automationAccounts_deployautomation_name_1'))]" 
    ] 
}, 

и переменное:

"variables": { 
    "scriptUri": "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-automation-runbook-getvms/Runbooks/Get-AzureVMTutorial.ps1", 
}, 

я не могу проверить весь шаблон, так как я не имею значения base64, но я считаю, что это должно решить вашу проблему. После этого может быть еще один, ты;) кто знает.

Справочные данные: https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-automation-runbook-getvms/azuredeploy.json

Кроме того, вы можете просто удалить модули из шаблона, так как они не являются обязательными, они все те, по умолчанию, но для них идея та же, вы устанавливаете модуль без предоставления данных модуля.

И возможно, вам не хватает других обязательных свойств здесь и там, похоже, что Automation Script на самом деле не работает с Azure Automation. Возможно, вы захотите прибегнуть к Powershell для предоставления учетной записи Automation, поскольку это работает отлично.

P.S. Я не знаю, как выглядит содержимое графической рабочей книги. Но я бы предположил, вы можете экспортировать его и загрузить в github, и это сработает.

+0

Это имеет смысл. Еще раз спасибо. – AllTradesJack

+0

Я до сих пор не знаю, как перемещаться по огромному пулу шаблонов и схем, чтобы найти информацию, необходимую мне для устранения неполадок, как вы это делали. Откуда вы узнали, где искать, что такое contentLink? Есть проводник ресурсов и шаблоны быстрого запуска, а также хранилище схем, но откуда вы узнаете, какой ресурс следует искать, когда и как вы находите то, что вам нужно в этом огромном ресурсе? – AllTradesJack

+0

ну, это сложная часть, на самом деле, я планирую сделать запись в блоге, если вы готовы подождать пару дней, я могу отправить вам ссылку – 4c74356b41

 Смежные вопросы

  • Нет связанных вопросов^_^