Развертывание группы ресурсов с помощью службы приложений

Я опубликовал приложение API из Visual Studio в новую группу ресурсов, а также создал план службы приложений, поэтому после развертывания группа ресурсов содержит 2 элемента:

  • AppServicePlan1
  • AppService1

Теперь я пытаюсь развернуть эти элементы в другой группе ресурсов следующим образом:

  • Выберите «Сценарий автоматизации» в настройках группы ресурсов.
  • Нажмите «Развернуть»
  • Выберите «Создать новую» группу ресурсов, введите ее название.
  • Введите значение параметра Serverfarms_AppServicePlan1_name (имя нового плана обслуживания приложений, например AppServicePlan2).
  • Введите значение параметра Sites_AppService1_name (новое имя службы приложений, например AppService2).
  • Отметьте «Согласен с условиями»
  • Нажмите «Купить»

Процесс завершается со следующим сообщением об ошибке:

"Имя хоста AppService1.azurewebsites.net уже назначено другому веб-сайту Azure: AppService1."

Я пробовал разные вещи: развертывание плана службы приложений, приложений логики и т. д. из одной группы ресурсов в другую работает нормально, но развертывание службы приложений завершается сбоем, как описано выше.

Я попытался изменить свойство hostNames в файле шаблона на ["AppService2.azurewebsites.net"] вручную - тогда я не получаю ошибку (хотя я не уверен, может быть, что-то еще нужно изменить, например, свойства enabledHostNames, hostNameSslStates?) и развертывание, похоже, работает, однако «развернутую» службу приложений нельзя использовать, поскольку она содержит только 1 файл — hostingstart.html.

Что мне не хватает?


person 10p    schedule 07.03.2017    source источник


Ответы (1)


Я думаю, у вас все правильно - как вы заметили, когда вы используете сгенерированный скрипт автоматизации, он создаст все с теми же свойствами, которые существуют в настоящее время. Мы пытаемся параметризовать правильное значение (например, имя веб-приложения), но есть некоторые детали, которые можно упустить (например, имена хостов). После изменения всего этого, похоже, вы получили его для развертывания.

Однако «код» не является частью сценария автоматизации — только инфраструктура и конфигурация. Таким образом, вам все равно нужно развернуть свое приложение, чтобы оно было идентичным. Вы можете поместить развертывание приложения в шаблон JSON (используя webdeploy или github), но, поскольку для этого требуется доступ к внешним артефактам, это не делается автоматически.

Эта помощь?

person bmoore-msft    schedule 08.03.2017
comment
Итак, ни одна служба приложений не может быть успешно развернута без предварительного изменения автоскрипта (по крайней мере, чтобы позаботиться о hostNames)? Спасибо за разъяснение, что стандартных параметров явно недостаточно для успешного развертывания. - person 10p; 09.03.2017
comment
Не обязательно — цель сценария — позволить вам воссоздать ту же самую группу ресурсов, как есть... Таким образом, вы должны иметь возможность взять тот же шаблон и развернуть его в той же группе ресурсов. Но если вам нужна копия или другой экземпляр, да, вам нужно изменить значения параметров и, как вы обнаружили, в зависимости от ресурса и другие свойства. - person bmoore-msft; 09.03.2017