Мои разработчики создают приложение, которое в конечном итоге может быть размещено в Windows Azure. Однако мы хотим разместить его в первую очередь внутри компании по разным причинам. Они указали мне на концепцию «частного облака». Звучит довольно круто, но слишком хорошо, чтобы быть правдой.
У меня есть сервер Windows Server 2008 R2, который будет использоваться для внутреннего приложения. Если приложение работает хорошо, мы хотели бы по сути щелкнуть переключатель и разместить приложение в Azure. У меня вопрос, есть ли способ сделать это? Я видел Эта статья.
Когда они начали говорить о System Virtual Machine Manager и портале самообслуживания, казалось, что мы уходим слишком далеко от Azure. Если я сделаю все это, смогу ли я легко продвинуть это приложение в Windows Azure?
Это чертовски Облако слово
Имейте в виду, что частное облако на самом деле ничем не отличается от большинства ваших внутренних веб-серверов и приложений сегодня. В статье, которую вы публикуете, идет еще дальше, позволяя вашей команде разработчиков создавать, масштабировать и контролировать свои собственные виртуальные машины. В конце концов, с предоставленной вами информацией все, что вам действительно нужно, - это IIS для запуска любого имеющегося у вас приложения.
Есть ли разница между Azure и IIS?
Основное различие между веб-приложением Azure и приложением, работающим в IIS, довольно простое: в одно из них в решение добавлен контейнер приложения Azure, а в другом - нет. Предложение Azure расширилось, и теперь у вас есть больший контроль над базовыми виртуальными машинами и даже вашими собственными виртуальными машинами, но я подойду к этому с самой простой точки зрения, используя Azure как модель PaaS или платформу как услугу.
Конфигурация Visual Studio
В Visual Studio довольно легко создать несколько конфигураций сборки, одну специально для IIS, а другую для Azure. Это просто определяет создание механизмов, которые либо подготавливают приложение, настраивая пакет развертывания Azure, либо другой, который просто создает пакет IIS.
Помните, что Azure - это, по сути, IIS, только с файлами конфигурации и настроек, которые должны идти вместе с приложением.
Конфигурация IIS
Здесь действительно не так много чего, кроме стандартной настройки веб-сервера. У вас могут быть дополнительные требования, такие как хранение файлов и даже кеширование (см. Сервер и Лазурь AppFabric / Caching). Вам нужно будет поработать со своей командой разработчиков, чтобы определить требования и настроить все необходимые системы для их поддержки.
Рекомендации по решению
Вашей команде разработчиков также необходимо понять кое-что важное: design and build the application to run in any environment.
Я имею в виду, что независимо от окончательной среды развертывания и пути приложение должно работать нормально. Таким образом, в вашей ситуации они, скорее всего, захотят использовать внедрение зависимостей для хранилища файлов, чтобы можно было вызвать API хранилища Azure или вернуться к стандартному механизму хранилища файлов System.IO. В любом случае, просто настроить оборудование для поддержки приложения недостаточно, оно также должно быть разработано для поддержки нескольких сред.
Это куча маркетингового мусора. «Облако» - это не единственная вещь, которую можно легко определить. Это пул избыточных высокодоступных хранилищ и серверного оборудования, которое обычно географически разрознено, что дает людям возможность быстро и безопасно масштабировать свою работу по мере необходимости.
«Частное облако» - это просто маркетинговая чушь для виртуализированной серверной среды, которую можно абстрагировать с помощью набора API и автоматизировать для масштабирования, как «общедоступное облако».
Azure - это общедоступное облако Microsoft. «Частное облако» могло бы приблизиться к этому, но это не то же самое.
Я бы порекомендовал вам иметь два экземпляра Azure. Получите один для разработки / тестирования и один для производства, если вы решите использовать эту услугу. Таким образом, вы точно знаете, что будет делать ваше приложение, когда вы переведете его в рабочую среду, поскольку оно уже находится в Azure.