Основные концепции и архитектура новой версии платформы Microsoft Windows Azure (2013)
Компонента Сеть (Networking)
Сетевые сервисы Azure предоставляют услуги сетевых соединений и маршрутизации на уровнях TCP/IP (транспортных протоколов Интернета) и DNS (преобразования доменных имен в IP-адреса).
Сервис Соединения (Windows Azure Connect) обеспечивает конфигурирование безопасных IP-соединений между компьютерами или виртуальными машинами сети организации клиента и экземплярами приложений, исполняемых в Windows Azure.
Сервис Виртуальная сеть Azure (Windows Azure Virtual Network) предоставляет возможность организации виртуальных частных сетей (VPN) в Windows Azure для их безопасной связи с локальной ИТ-инфраструктурой клиента. Он позволяет использовать Windows Azure как филиал или как защищенную частную сеть в облаке.
Сервис Менеджер трафика (Traffic Manager) выполняет балансировку входящего трафика между различными сервисами, доступными через Интернет, с использованием политик, основанных на DNS.
Сервисы управления приложениями (App Services)
Набор сервисов для управления приложениями в Azure в новой версии включает:
- Сервисы управления доступом и идентификацией пользователей
- Сервисы управления производительностью приложений
- Сервисы управления сообщениями между приложениями Windows Azure
- Сервисы управления планированием работы приложений (workflow)
- Сервисы управления обработкой мультимедийной информации (media services).
Сервисы управления доступом и аутентификации пользователей. Компонента Windows Azure Active Directory предоставляет следующие сервисы для управления идентификацией пользователей в облачных приложениях:
- Сервис управления доступом (Access Control Service) – облачный сервис для простой аутентификации и авторизации пользователей для предоставления им доступа к облачным приложениям и сервисам, позволяющий вынести проверки аутентификации и авторизации из кода приложения.
- Библиотека управления графом (Graph API) обеспечивает доступ программным путем к Windows Azure Active Directory (AD) с помощью вызовов методов по стандарту REST.
- Библиотека аутентификации (Authentication Library) предоставляет возможность разработчиком клиентских приложений аутентифицировать пользователей через Windows Azure Active Directory или других провайдеров аутентификации, а затем получать маркеры доступа для безопасных вызовов методов. Библиотека аутентификации (AAL) также дает возможность разработчикам сервисов защитить их ресурсы путем проверки входных маркеров.
Сервисы управления производительностью приложений. Эта группа сервисов позволяет кэшировать большие данные.
Сервисы Windows Azure Caching позволяют организовать кэширование в облаке для использования приложениями и сервисами с целью повышения их эффективности. В частности, поддерживается распространенный сценарий кэширования состояния сеанса и вывода в ASP.NET. Кэширование позволяет улучшить производительность приложений, благодаря временному хранению информации из других серверных источников.
Сервисы Сети выдачи контента (Content Delivery Network) кэшируют большие бинарные объекты Windows Azure и статический выходной контент вычислительных объектов в стратегически размещаемых точках для обеспечения максимальной скорости выдачи контента пользователям.
Сервисы управления сообщениями между приложениями. Сообщения хранятся в различного рода очередях.
Очереди в памяти (Storage Queues) обеспечивают надежный обмен сохраняемыми сообщениями между ярусами приложений, выполняемых в Windows Azure. Очереди сообщений являются частью компоненты Windows Azure Storage, которая также обеспечивает сервисы бинарных объектов (Blob) и таблиц (Table).
Шина сервисов (Service Bus) обеспечивает безопасную и широко доступную инфраструктуру для коммуникации сервисов, широкомасштабного распределения событий между ними, их именования и публикации. Шина сервисов предоставляет возможность соединений средствами Windows Communication Foundation (WCF) и другими способами коммуникации, включая вызовы методов по стандарту REST. Имеются примеры интеграции шины сервисов в приложения, в которых реализованы мосты (bridges), преобразования (transforms) и B2B-сообщения на основе Azure Service Bus.
Организация работы пользователя в Azure
С точки зрения пользователя, существуют две категории приложений – внутренние (on-premises applications), исполняемые на компьютере пользователя, и облачные (cloud applications), фактически исполняемые в среде Windows Azure на компьютерах центра обработки данных. На пользовательском компьютере могут быть установлены ОС Windows и, возможно, другие ОС. Независимо от этого, через Web-браузер пользователь получает доступ к "Windows в облаке" – Windows Azure. Функционирование Windows Azure основано на Web-сервисах .NET. Windows Azure для хранения данных обеспечивает доступ к аналогу СУБД Microsoft SQL Server "в облаке" – SQL Azure.
На рис. 3.3 изображена схема организации работы пользователя в Windows Azure.
На рис. 3.4 изображена структура сервисов .NET как основы для реализации Windows Azure. Как уже говорилось, вся реализация Windows Azure основана на надежной и безопасной платформе .NET, исполнение программ в которой обеспечивается в особом безопасном режиме (managed execution – управляемое выполнение). Часть .NET, называемая Windows Communication Foundation (WCF) и предоставляемый ею механизм сервисов и является основой реализации платформы Windows Azure. Облачными сервисами управляют две компоненты – управление доступом (access control) и сервисная шина (service bus), которые подробно рассмотрены в следующих лекциях данного курса.
Перспективы облачных вычислений в Windows Azure очень велики, так как облачные вычисления позволяют получить доступ к огромным виртуальным ресурсам - мощным вычислительным возможностям и данным большого объема - практически с любых пользовательских компьютеров (в том числе – карманных, мобильных устройств и т.д.), имеющих веб-браузер.
Кроме того, платформа .NET обеспечивает высокую надежность и безопасность приложений, благодаря исполнению в режиме managed execution. Microsoft Azure Services Platform - это платформа фирмы Microsoft для разработки и использования облачных сервисов на базе Microsoft.NET. Подробнее вопросы архитектуры .NET и Web-сервисов в .NET рассмотрены в следующей лекции (см. "Базовые технологии, использованные для реализации новой версии Microsoft Windows Azure (2013)" ).