Выбор правильного размещения в Azure
В этой статье сравниваются варианты, доступные в Azure при переносе существующих приложений .NET Framework из локальной среды в Azure.
При переносе существующих приложений .NET Framework в Azure следует учитывать следующие важные аспекты:
- Варианты вычислительных сред.
- Варианты баз данных.
- Сетевые подключения и безопасность
- Проверка подлинности и авторизация.
Варианты вычислительных сред.
Для переноса существующих приложений .NET Framework в Azure существует несколько вариантов. Но так как платформа .NET Framework работает только с ОС Windows, эти варианты ограничиваются службами вычислений на базе Windows.
В таблице ниже приводится несколько сравнений и рекомендаций, которые помогут вам выбрать правильную вычислительную среду при переносе существующего приложения .NET.
Виртуальные машины Azure | Служба приложений Azure | Контейнеры Windows | |
---|---|---|---|
Когда использовать |
|
Приложение не зависит от сервера, это просто "чистое" веб-приложение ASP.NET (MVC, WebForm) или n-уровневое приложение (Web API, WCF) с доступом к серверу базы данных. |
|
Преимущества |
|
Текущее обслуживание PaaS — простой способ масштабирования приложений и управления ими в Azure. |
|
Недостатки | Это инфраструктура как услуга (IaaS). Обслуживание обходится дорого. Необходимость управлять такими элементами инфраструктуры виртуальных машин, как сеть, подсистема балансировки нагрузки, горизонтальное масштабирование, службы IIS и т. д. |
|
|
Требования | Виртуальная машина Windows Server с такими же требованиями, как и для приложения в локальной среде. | Требования к Службе приложений Azure, указанные в инструкциях по проверке готовности. |
|
Миграция | См. статью Перенос веб-приложения ASP.NET на виртуальную машину Azure. | См. статью Перенос веб-приложения ASP.NET в службу приложений Azure. | Следуйте рекомендациям, сценариям и пошаговым инструкциям, которые приводятся в электронной книге Modernize existing .NET applications with Azure cloud and Windows Containers (Модернизация существующих приложений .NET с помощью облака Azure и контейнеров Windows). |
На следующей блок-схеме показано дерево принятия решений при планировании переноса существующих приложений .NET Framework в Azure. Хотя вариант Б является самым простым, по возможности попробуйте сначала вариант А.
Варианты баз данных.
Для переноса реляционных баз данных в Azure существует несколько вариантов. Чтобы выбрать правильный способ переноса для существующего приложения .NET, см. статью Перенос базы данных SQL Server в Azure.
Сетевые подключения и безопасность
При развертывании приложений в общедоступном облаке, таком как Microsoft Azure, может потребоваться изолировать и защитить некоторые сети. Для этого можно создать сети периметра, например сеть периметра между Azure и локальным центром обработки данных или сеть периметра между Azure и Интернетом. Вы можете реализовать сети периметра, используя виртуальные сети Microsoft Azure.
Виртуальные сети Azure позволяют выполнять следующие задачи:
- Создание управляемой гибридной инфраструктуры
- Использование собственных IP-адресов и серверов DNS
- Обеспечение безопасности подключений с помощью VPN-соединения IPsec или ExpressRoute
- Детальный контроль над трафиком между подсетями
- Создание передовых сетевых топологий с виртуальными модулями
- Создание изолированной и безопасной среды для ваших приложений.
Чтобы приступить к созданию собственной виртуальной сети, изучите документацию по виртуальным сетям Azure.
Проверка подлинности и авторизация при переносе в Azure
Безопасность — самый важный вопрос для любой организации, которая переносит свои данные в облако. Большинство компаний тратят много времени, денег и усилий разработчиков на создание и разработку модели безопасности. Поэтому важно, чтобы компании могли использовать существующие ресурсы, например хранилища удостоверений и решения для единого входа.
Большинство существующих корпоративных приложений .NET B2E, которые выполняются в локальной среде, используют Active Directory для проверки подлинности и управления удостоверениями. Azure AD Connect позволяет интегрировать локальные каталоги с Azure Active Directory. Чтобы приступить к работе, изучите статью Интеграция локальных каталогов с Azure Active Directory.
При планировании дальнейших действий с Azure Active Directory ознакомьтесь со статьей Определение требований к идентификации для решений гибридной идентификации.
Другие варианты связаны с протоколами проверки подлинности OAuth и OpenID, которые часто используются в клиентских приложениях. Как правило, когда применяются автономные базы данных удостоверений, например базы данных SQL удостоверений ASP.NET с программой-оболочкой IdentityServer4, использующей OAuth, подключение к локальным базам данных или каталогам не требуется.