Обзор платформы Windows Azure
Облако Microsoft, будь это публичная его часть – Azure – или частная – System Center – или вообще Office 365 или любой другой сервис, представляет собой образец того, как осуществляются в реальности принципы облачных вычислений. Так, необходимо подчеркнуть, что, если даже у пользователя уже есть локальная инфраструктура на основе технологий Microsoft, он, тем не менее, может интегрировать ее с публичным облаком Windows Azure – например, реализовать часть собственной инфраструктуры в облаке, объединив ее в виртуальную сеть с локальной. Пользователь может использовать локальный каталог Active Directory для аутентификации пользователей облачного приложения, может быстро переносить приложения любого уровня – начиная от небольших legacy-приложений до Sharepoint-серверов – упаковывая собственные локальные серверы в виртуальные образа и перенося их в облако, может объединять локальную и облачную инфраструктуру в единой оснастке управления System Center и может быть уверены, что всё, что работает у на локальной инфраструктуре, сможет работать и в Windows Azure.
После 7 июня 2012 года платформа Windows Azure стала представлять собой зонтичный термин, объединяющий несколько основных сервисов PaaS с множеством вспомогательных, которые можно использовать для реализации практически любого бизнес-сценария. Например, трансляция лондонской олимпиады была реализована с Windows Azure, компания ABBYY смогла перенести свои сервисы в облако – на момент июля 2013 года в России существует несколько сотен проектов различного масштаба. По размеру проектов нет никаких ограничений – это может быть как маленький проект, так и огромный с миллионами пользователей ежедневно. Типичными сценариями являются SaaS-приложения, что-то, что работает как сервис, консьюмерские приложения. Сценарии использования Windows Azure
Веб-портал
Пиковая/сезональная/непредсказуемая посещаемость
Временный портал
Порталы для общего доступа
Онлайн хранение
Резервное копирование
Хранение объемных данных
Онлайн репозиторий
Медиа-контент
Распределенная сеть CDN
Потоковое видео
Доставка/обработка/хранение медиа контента
Гибридные решения
Использование дополнительных мощностей для локальных приложений
Компоненты и сервисы платформы
Windows Azure предоставляет широкий набор компонентов и сервисов. Ядро платформы составляет среда выполнения приложений Windows Azure, которая состоит из трех базовых сервисов – Cloud Services (PaaS), Virtual Machines (IaaS) и Web Sites (SaaS).
Virtual Machines - облачная платформа Windows Azure предоставляет сервис для запуска виртуальных машин. В данной сервисной модели могут быть запущены практически любые приложения, установленные на стандартные образы операционных систем как предоставленные пользователем, так и взятые из коллекции образов операционных систем, интегрированной в платформу Windows Azure.
Cloud Services, который, в свою очередь, оперирует терминами ролевой модели:
Web-роль - предоставление выделенного web-сервера IIS для размещения web-приложений. Web-роли позволяют легко и быстро развертывать web-приложения с последующим масштабированием вычислительных ресурсов в соответствии с потребностями пользователя.
Worker-роль - приложения, размещенные в Worker-ролях, выполняют (часто в бесконечном цикле) задачи без взаимодействия с прямого пользователем.
Web Sites: Web-сайты можно разрабатывать на ASP.NET, Node.js или PHP (либо CMS — WebMatrix, Joomla, Drupal, WordPress, DotNetNuke, Umbraco и др.) и разворачивать за секунды с использованием FTP, Git, TFS, Mercurial и Dropbox. При этом первичное использование бесплатно, далее же Web-сайты вертикально масштабируются согласно увеличению траффика. По умолчанию Web-сайты находятся в состоянии Shared или Free, то есть мощности делятся между web-сайтами, но при необходимости можно увеличить количество экземпляров и перевести web-сайт в состояние Reserved. С июня 2013 года сервис Web Sites официально поддерживает пользовательские сертификаты SSL (ранее поддерживались только сертификаты, предлагаемые Microsoft) как по IP-адресу, так и на базе SNI.
Storage — сервисы, предоставляющие возможность хранения данных: таблицы, диски, очереди, хранение двоичных объектов + реляционное хранилище данных в виде SQL Database.
Таблицы - сервис таблиц используется для хранения структурированных данных, между которыми не устанавливаются отношения.
Очереди - очереди обеспечивают надежный и непрерывный обмен сообщениями между приложениями. Являются упрощенным аналогом сервиса Service Bus.
Блобы - хранилище blob-ов (binary large object) - это простейший способ хранения больших объёмов неструктурированных текстовых или двоичных данных, таких как видео, музыкальный файлы и изображения.
SQL Database -это высокодоступная масштабируемая облачная служба базы данных, построенная на основе SQL Server.
SQL DataSync - облачная служба синхронизации данных, обеспечивающая как однонаправленную, так и двунаправленную синхронизацию. Служба Data Sync позволяет легко обмениваться данными между SQL в Azure и локальными базами данных SQL Server, а также между несколькими базами данных SQL Databases (SQL Azure);
SQL Reporting - служба Microsoft SQL Reporting позволяет встроить в приложение Windows Azure возможность работы с отчетами.
Azure Backup -сервис предлагает возможность организации защищенной инфраструктуры сохранения бэкапов Windows Server в облаке. На 16.04.2013 сервис Windows Azure Backup осуществляет поддержку бэкапов информации из систем на базе Windows Server 2008 R2 SP1 и Windows Server 2012, Windows Server 2012 Essentials и System Center Data Protection Manager 2012 SP1 в Windows Azure.
Content Delivery Network - сеть серверов (сеть CDN) повышает производительность приложений путем кэширования контента как можно ближе к клиентам и пользователям, обеспечивая максимально эффективное взаимодействие с ними, например, сеть CDN позволяет доставлять фрагменты мультимедийных файлов для динамического адаптивного воспроизведения мультимедиа поверх HTTP-контента.
Caching - распределенный кэш в памяти, с помощью которого вместо медленного дискового хранилища приложения получают высокоскоростной доступ к данным, хранящимся в оперативной памяти, с возможностью масштабирования;
Media Services - службы мультимедиа обеспечивают гибкость, масштабируемость и надежность облачной платформы для обработки объектов мультимедиа высокого качества для пользователей во всем мире. Службы мультимедиа включают в себя облачные версии многих существующих технологий платформы мультимедиа Microsoft и многих партнеров, в том числе для просмотра, кодирования, преобразования формата и защиты контента, а также потоковой передачи по запросу и в реальном времени. Улучшая существующие решения или создавая новые, пользователь можете легко объединять службы мультимедиа и управлять ими для формирования рабочих процессов для любой потребности.
Mobile Services - Windows Azure Mobile Services предлагает облачную инфраструктуру для всех популярных мобильных платформ: Windows 8, Windows Phone, iOS и Android. На основе сервиса можно построить облачный бэкенд, на который перенести задачи по хранению данных, аутентификации и Push-уведомлений.
Identity - сервисы, формирующие компонент Identity, представляют из себя сервис идентификации, обеспечивающий управление личностями пользователей и доступом к приложениям. С помощью сервиса Windows Azure Active Directory (ранее Access Control Service) можно обеспечить единый вход, повышенную безопасность и простое взаимодействие с уже развернутыми в Active Directory приложениями, а также выполнить интеграцию с другими провайдерами аутентификации (Live ID, Google, Facebook и т. п.). Windows Azure Active Directory позволяет решать задачи единой авторизации пользователей для множества сервисов (Single Sign On), вести единый каталог пользователей, синхронизировать данные каталога с Active Directory на предприятии (в режиме read-only) и т. д. Windows Azure Active Directory - это полноценная реализация каталога в облаке. При этом платформа поддерживает популярные открытые стандарты обеспечения федераций: SAML 2.0, OData, WS-FED, OAuth 2.0/OpenID. Windows Azure Active Directory широко используется для обеспечения аутентификации продуктов Microsoft таких как Office365, Dynamics CRM online, Windows Intune и самой Windows Azure.
Service Bus – данный сервис предоставляет возможности маршрутизации и безопасного обмена сообщениями, позволяя, таким образом, создавать распределенные и слабосвязанные приложения в облаке, а также гибридные приложения, размещенные одновременно в частных и публичных облачных службах. Оперирует терминами Relay, Topics, Queues. С июня 2013 года в Service Bus была внедрена глобальная доступность поддержки открытого стандарта AMQP.
BizTalk Services - это сервис, который предназначен для решения задач интеграции разнородных окружений на уровне предприятия и облака, предлагая возможности Business-to-Business (B2B) и Enterprise Application Integration (EAI) взаимодействий.
Virtual Network - платформа Windows Azure обладает расширенными возможностями сетевых подключений, позволяя интегрировать существующие приложения с облачными службами и управлять сетевым трафиком. Виртуальная сеть обеспечивает простоту настройки сетевых подключений между службами Windows Azure и локальными ресурсами, в том числе серверами баз данных и контроллерами домена, обеспечивая возможности двустороннего доступа между ними на уровне одной сети.
Traffic - диспетчер трафика обеспечивает балансировку нагрузки по входящему трафику между несколькими размещенными службами Windows Azure независимо от того, работают ли они в одном центре обработки данных или распределены по всему миру. Эффективное управление трафиком повышает производительность, уровень доступности и отказоустойчивость приложений.
Windows Azure Store предлагает единый унифицированный доступ к сервисам сторонних компаний-поставщиков для проектов Windows Azure с единым билингом и панелью управления. Покупка сервиса или данных из Azure Store осуществляется из единой консоли управления Windows Azure.
Azure Marketplace – это магазин облачных сервисов и данных для организаций. В нем компании из различных индустрий могут найти необходимые для решения их бизнес-задач приложения.
HPC и Big Data - параллельные вычисления или планировщик HPC позволяет легко разрабатывать на платформе Windows Azure параллельные приложения, требующие больших вычислительных мощностей, кроме того, это средство позволяет по требованию запускать в облаке виртуальные узлы, предоставляя таким образом доступ к вычислительным ресурсам, необходимым для обработки пиковых или непредсказуемых нагрузок. Это позволяет использовать малые локальные кластеры и подключаться к Windows Azure, когда требуются дополнительные ресурсы.
HDInsight (Hadoop) - это облачный сервис, предлагающий экосистему Hadoop по запросу. С помощью портала Windows Azure пользователь может создавать кластеры Hadoop с размером до 32 узлов. Кроме создания задач MapReduce, разработчик может использовать интерактивную консоль для написания запросов к данным на JavaScript и Hive.
Покупка Windows Azure
Самое важное, что необходимо упомянуть при рассмотрении моделей покупок Windows Azure в России – это большое количество возможностей по покупке: пользователь может оплачивать услуги Windows Azure кредитной картой, оплачивать по invoice, которые будут приходить из Ирландии. Компания может также заключить договор с любым LAR (Large Account Reseller), который сможет выдавать счета-фактуры на оплату согласно российскому законодательству, либо заключить Enterprise Agreement с Microsoft или LAR, однако у владельцев Enterprise Agreement есть минимальный объем потребляемых ресурсов, который равен 12 000 долларов в год. Если компания готова подтвердить какой-то определенный объем ресурсов (например, больше 1000 долларов за определенный период), то скидки обсуждаются в индивидуальном порядке. Далее, если компания является разработчиком программного обеспечения, ее сервис попадает в каталог облачных приложений и Microsoft может помочь обеспечить продвижение и предоставить технологическую помощь.
В контексте Windows Azure потребление может иметь любой характер - можно покупать любой облачный сервис, можно пользоваться только хранилищем, сетью доставки данных (CDN) и т.д.
Преимущества Windows Azure
Минимальный период вхождения. Если для развертывания локальной инфраструктуры на Hyper-V или VMWare требуется серьезное планирование и большой опыт, то Windows Azure может развернуть виртуальные машины за минуты, абстрагируя пользователя от технической подготовительной работы.
Небольшие капитальные расходы. В отличие от развертывания Hyper-V, которое может вылиться в тысячи долларов, потраченные на аппаратные ресурсы и лицензии, в Azure можно просто включить виртуальную машину и платить $60-115 в месяц.
Беспрецедентная отказоустойчивость и доступность.
Глобальный удаленный доступ. Конечно, в традиционных инфраструктурах наличествует иногда Remote Desktop, но его всегда нужно настраивать, а тут и статические IP, и прочее, особенно если серверов несколько. Azure дает преднастроенный FQDN для каждой виртуальной машины.
Нет беспокойства за лицензию. Если локальная виртуальная инфраструктура всегда будет иметь лицензионные проблемы (так или иначе), то виртуальные машины в Azure абстрагируют пользователя от этого, включая стоимость лицензии в стоимость работы самой виртуальной машины. Поэтому виртуальные машины Azure полностью готовы для перевода в Production.
Ход практической работы. Создание нового Web-сайта
Для начала работы с Web-сайтом создадим новый Web-сайт на портале управления Windows Azure, который будет служить контейнером. Для этого нажмем New | Web Sites | Quick Create. Введем DNS-имя Web-сайта, которое будет использоваться для доступа к нему.
|