Почему развертывание Azure занимает так много времени?

144

Я пытаюсь понять, почему развертывание небольшого приложения в Azure может занять от 20 до 60 минут (с использованием метода загрузки конфигурации / пакета, а не из VS).

Я прочитал эту ситуацию и этой , но я все еще немного неясно - есть странный , не технология ритуал , который происходит в то время как экземпляры распределения, как кто - то более в Microsoft свечки или делать танец?

пустой набор
источник
12
Именно по этой причине я все еще использую EC2, хотя мне нравится абстракция от администрирования ОС, которую предоставляет Azure.
степанян
12
А пока мы идем дальше почти на 3 года и все еще очень медленно.
staccata
4
сейчас конец 2017 года, и это все еще очень медленно. Иногда я думаю о том, чтобы распаковать компьютер, затем установить ОС, а затем развернуть приложение вручную быстрее, чем это.
hoangpx
1
2019 год почти закончился, и даже простая подготовка виртуальной машины Windows 10 по-прежнему занимает 8-10 минут.
Беркант Ипек
1
//, это бизнес-решение. Они не продаются разработчикам.
Натан Басанезе

Ответы:

58

Как другой пользователь Azure, я разделяю вашу боль - развертывание не «быстрое» / «безболезненное» - и это больно, особенно когда вы находитесь в цикле разработки и хотите протестировать итерации разработки в Azure. Однако в целом развертывание должно занимать гораздо меньше 60 минут - и меньше 20 минут.

Стив Маркс представил краткий обзор этапов развертывания: http://blog.smarx.com/posts/what-happens-when-you-deploy-on-windows-azure

И он ссылается на более глубокое объяснение по адресу: http://channel9.msdn.com/blogs/pdc2008/es19

Стюарт
источник
9
Подходит ли этот ответ для 2018 года? Я пытаюсь развернуть кеш Redis в Azure. Моя первая услуга на лазурном - ждал 25 минут и не могу поверить, что это нормально / приемлемо.
Gravy
1
@Gravy Я много использую уже много лет, и да, развертывание (особенно виртуальных машин) временами может быть очень медленным. Обычно вы смотрите от 10 до 60 минут.
Cocowalla
26

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

Среди прочего:

  1. Оборудование должно быть выделено из доступного пула серверов.
  2. VHD основной ОС должен быть загружен на компьютер.
  3. Экземпляр виртуальной машины должен быть инициализирован и загружен с этого образа VHD.
  4. Ваш пакет приложения необходимо скопировать на виртуальную машину и установить.
  5. Монитор ВМ должен дождаться запуска вашей службы или выйти из строя
  6. Балансировщик нагрузки и брандмауэр центра обработки данных должны знать конечные точки служб вашего приложения.
  7. Как только все это будет синхронизировано, ваше приложение станет доступным из Интернета.

Образ VHD, вероятно, имеет размер гигабайта, что намного больше, чем загруженное вами приложение. Даже в сверхбыстрой сети центра обработки данных требуется время, чтобы переместить такой объем данных в виртуальную машину, распаковать и загрузиться с нее. Кроме того, балансировщик нагрузки и брандмауэр, вероятно, оптимизированы для обеспечения наивысшего приоритета запросов маршрутизации. Перенастройка брандмауэра и балансировщика нагрузки имеет более низкий приоритет и должна выполняться без прерывания потока трафика.

Также обратите внимание, что всю эту работу нужно выполнить только для нового развертывания. Обновление существующего развертывания происходит намного быстрее - 2–3 минуты вместо 20–30 минут.

Dthorpe
источник
2
Интересные моменты, но учитывая, что в наши дни у нас самый быстрый из всех доступных вариантов. Разве это не должно позволить нам делать все это за секунды, если не за мс?
afr0 03
«В эти дни» прошло уже 5 лет после того, как был написан мой первоначальный комментарий. Я уверен, что с 2011 года производительность подготовки Azure улучшилась.:>
dthorpe
7
все еще не в секундах, я могу это подтвердить
afr0 06
точно нет.
philippeback
4
Да, новое развертывание по-прежнему занимает около 10 минут. Честно говоря, я немного удивлен, что Azure не заставляет некоторые виртуальные машины ждать на шаге 4 в этом списке, чтобы улучшить качество обслуживания клиентов.
Fls'Zen 06
19

Посмотрите это видео о PDC10 от Марка Руссиновича. Он очень подробно рассказывает о том, что происходит внутри Azure, с некоторыми подробностями о (правда, медленном) процессе развертывания.

Исходная ссылка больше не работает. Вот еще одна ссылка на версию той же презентации: https://channel9.msdn.com/events/Build/BUILD2011/SAC-853T

BrentDaCodeMonkey
источник
5
Отличная ссылка, но пока нет +1: видео длится более одного часа, поэтому было бы очень удобно, если бы вы опубликовали небольшое резюме основных моментов. Если да: +1 от меня.
Jeroen Wiert Pluimers,
3
Честно говоря, BrentDaCodeMonkey сказал, что он вдавался в «мельчайшие детали» ... тем не менее, хорошее видео!
Джейми Килинг
32
Вау ... Это видео представляет собой длинное развертывание Windows Azure.
Андре Пена
1
По общему признанию, это была довольно старая (в облачных терминах) запись. Я обновился, добавив новую ссылку на ту же сессию Руссиновича с другого мероприятия.
BrentDaCodeMonkey
@BrentDaCodeMonkey отличный ответ! не угадать
Ник Тернер