Цель: Цель данной лекции – ознакомиться с комплектом средств разработки Windows Azure.
План:
1. Windows Azure (характеристики, сервисы, роли, возможности
2. Платформа windows Azure.
3. Стратегия Software + Services
Software+Services объединяет несколько феноменов, таких как SaaS, SOA и Web 2.0. Суть данной стратегии заключается в том, чтобы обеспечить на необходимом пользователю уровне комбинацию Интернет – сервисов и локального программного обеспечения. Иными словами, Software+Services – это предоставление нового уровня услуг, удобства и гибкости, отвечающих пользовательским потребностям.
Платформа Windows Azure является одним из основных компонентов стратегии Software+Services.
Характеристика платформы
Windows Azure – представляет собой Windows-платформу компании Microsoft, предоставляемой, как сервис (PaaS), развернутой на серверах и сопутствующей инфраструктуре дата – центров компании и имеющая доступ к Интернет. Т.е., Windows Azure – операционная система, предоставляемая, как сервис.
При использовании Windows Azure пользователи получают возможность запускать различные сервисы, при этом платформа обеспечивает масштабируемость, безопасность и доступность.
Windows Azure:
-добавляет возможности веб – служб существующим пакетным приложениям;
-позволяет создавать, изменять и распространять приложения через веб при наличии минимальной IT – инфраструктуры;
-предоставляет сервисы хранения большого количества дынных, пакетной обработки и высокопроизводительных вычислений;
-обеспечивает возможности оперативного тестирования и распространения веб – служб при минимальных затратах;
-уменьшает издержки, связанные с содержанием IT – инфраструктуры;
-упрощает процесс управления IT – инфраструктурой.
В основе Windows Azure лежат технологии виртуализации, платформа управляется при помощи инфраструктурного слоя Windows Azure Fabric Controller, обеспечивающим развертывание служб и приложений, управление нагрузкой и ресурсами, о чем уже говорилось в лекции №4.
Также введем понятие экземпляра – в Windows Azure это единица развертывания, отражающая виртуальную машину с рядом предопределенных конфигураций. При этом Azure Fabric Controller отвечает за физическое развертывание виртуальных машин. Со стороны пользователя требуется лишь указать необходимое число экземпляров виртуальной машины, развертываемых для определенного сервиса.
Жизненным циклом экземпляров управляет Azure Fabric Controller, пользователь, в свою очередь, может запускать и останавливать экземпляры.
Сервисы Windows Azure
Рассмотрим подробнее категории сервисов, предоставляемых Windows Azure.
1. Сервисы хранения данных
Предоставляют масштабируемую систему хранения данных, с поддержкой таких структур, как таблицы, бинарные объекты, асинхронные очереди сообщений и обычные файловые системы. Подробнее сервисы хранения данных будут рассмотрены в лекции №7. Также стоит отметить, что данные сервисы поддерживают тройную репликацию в рамках кластера и центра обработки данных. Автоматическое создание копий и балансировка нагрузки между серверами обеспечивают требуемую масштабируемость сервисов хранения данных.
2. Вычислительные сервисы
Представляют собой контейнеры для приложений, с поддержкой .Net, Java, PHP, Pythin и т.д. С этой точки зрения, Windows Azure представляет собой прикладной контейнер, в котором размещаются код и логика “облачного” приложения.
3. Коммуникационные сервисы
Доступны посредством “облачной” сервисной шины, могут быть использованы, как средство мгновенного обмена сообщениями с другими сервисами на стороне, как “облака”, так и клиента.
4. Сервисы безопасности
Включают в себя сервисы управления доступом, основывающихся на механизмах федерации (функция единого входа, через Интернет для проверки пользователя и предоставления ему доступа к различным приложениям во время одного сеанса работы), обеспечивая тем самым возможность интеграции с уже имеющимися системами управления идентификацией. Более подробную информацию см в п. №5 списка дополнительных материалов.
5. Прикладные сервисы
Сервисы, используемые при разработке “облачных” приложений и других сервисов.
Роли
Как правило, сервис Windows Azure имеет более одного экземпляра. Каждый экземпляр может выполнять как всю логику приложения, так и ее часть. При этом разработчик контролирует число и типы ролей.
Можно провести аналогию между ролями в Windows Azure и стандартными типами проектов в Visual Studio. В данном случае экземпляр Windows Azure представляет собой отдельный проект.
Роли Windows Azure:
1. Веб – роль (web role)
2. Прикладная роль (worker role)
Основной задачей веб – роли является обеспечение поддержки протоколов HTTP и HTTPS. Размещается роль на базе IIS. Таким образом веб – роль, фактически, соответствует ASP.Net проекту Visual Studio, с учетом отличий в сборках приложений и способе конфигурации.
Прикладная роль отвечает за поддержку внешних точек входа через TCP\IP и ряд портов (кроме 80 и 443). Данная роль не размещается на веб – сервере. Продолжая аналогию, эту роль можно сравнить с Windows – сервисами, также она может быть использована для выполнения фоновых задач.
Таким образом, роли в Windows Azure – это “блоки” из которых строится “облачное” приложение. Экземпляр роли – виртуальная машина с рядом предопределенных характеристик.
Возможности платформы
Нами уже был дан общий обзор возможностей “облачных” приложений, а также SaaS, PaaS и IaaS решений. Но это были концептуальные описания. Подводя итог данной лекции, мы хотим еще раз сделать акцент на практических возможностях Windows Azure.
Windows Azure:
-предоставляет “облачную” среду для разработки, хостинга и управления сервисами;
-представляет собой контейнер, содержащий код и логику, в рамках которого приложение может быть развернуто;
-предоставляет среду, схожую с существующей Windows Server средой;
-позволяет разворачивать .Net проекты напрямую, без внесения существенных и трудоемких изменений;
-позволяет хранить данные пользователей, поддерживает тройную репликацию.
Контрольные вопросы:
1. Перечислите основные характеристики, сервисы, роли, возможности Windows Azure
2. Расскажите о платформе windows Azure.
3. В чем заключаеться основная стратегия Software + Services
4. Какие сервисы Windows Azure Вы знаете?