Опубликован: 31.07.2015 | Уровень: для всех | Доступ: платный
Лекция 3:

Облачная платформа Microsoft Azure

Аннотация: В лекции рассматривается облачная платформа Microsoft Azure.
Ключевые слова: Microsoft Azure, виртуальная машина, виртуальные машины, MSDN, SQL Server AlwaysOn, виртуальные сети, Azure ExpressRoute , RemoteApp, Azure Websites, Mobile Service, Notification Hubs, Azure DocumentDB, кэш Azure , Кэш Redis, Redis, StorSimple, Microsoft Azure StorSimple, HDInsight, машинное обучение, концентраторы событий, служба архивации Azure, служба Azure Site Recovery, службы носителей, сеть Azure CDN, Службы Azure BizTalk, Azure Service Bus, Azure Active Directory, Visual Studio Online, Application Insights, служба автоматизации Azure, .NET Framework, Active Directory, android, Apache HBase, AppDynamics, AT&T, Azure, Azure HDInsight, Azure Media Encoder, Azure Media Services, Azure Site Recovery, Bing, BitBucket, Box.com, C#, Capptain, Chef, CMS, CRUD, DNS-сервер, Docker, Document DB, DocuSign, Dropbox, Drupal, Equinix, Excel Power View, exchange, ExpressRoute (экспресс-маршрут), facebook, FIFO, Git, GitHub, Google Apps, Google Inc., Graph API, Hadoop, HTML5, HTTP, HTTPS, Hudson, Hybrid Connections, IaaS, IIS, IOS, IP-адрес, ISO/IEC 27001, Java, JavaScript, Joomla!, JSON (JavaScript Object Notation), Level 3 Communications, Linux, Macintosh (Mac), microsoft, Microsoft Dynamics CRM Online, microsoft exchange server, Microsoft Hyper-V, Microsoft Intune, Microsoft Office 365, Microsoft Online Services, Microsoft Research, Microsoft SQL Server, Microsoft StorSimple, Microsoft Windows, Mobile Services, MongoDB, MP4 (MPEG-4 Part 14), MSDN (Microsoft Developer Network), mysql, New Relic, Node или Node.js, Nokia X, NoSQL, OAuth 2.0, OpenID Connect, Operational Insights, Oracle, Oracle Database, Oracle WebLogic Server, paas, PhoneGap, Puppet, python, radius, REST API, ruby, Ruby on Rails, saas, Salesforce.com, SAP, SAP SE, SDK, Sencha, SharePoint, skype, SMB-хранилище Azure, SQL, SQL Azure, SQL Server Management Studio, SQL сервер, SSL, SSL-сертификат, SUSE Linux Enterprise, System Center Data Protection Manager (DPM), TCP, TeamCity, TelecityGroup, TFS, twitter, Ubuntu, Umbraco, Verizon Communications, Visual Studio, VNET, VPN, Web-сервисы RESTful, Windows Server, Windows Server 2012 R2 Essentials, WordPress, WSFederation, Xamarin, Xbox, веб-приложения Microsoft IIS, индикация имени сервера, кэш Redis для Microsoft Azure, мультимедиа, облачные вычисления, планировщик Azure, сервисно-ориентированная архитектура (SOA), сетевой трафик (Интернет-трафик), сеть доставки содержимого Azure (CDN), сеть кэширующих серверов (CDN), ЦОД

Microsoft Azure – это облачная платформа Microsoft с набором вспомогательных служб для вычислений, хранения, данных, работы в сети и поддержания приложений (рис. 3.1).

Azure – это крупная облачная платформа, которая по оценкам Gartner является лидером отрасли по предоставлению решений IaaS и PaaS. Эта полнофункциональная комбинация управляемых и неуправляемых служб позволяет создавать, развертывать приложения и управлять ими любым способом для достижения производительности.

Страница Azure

Рис. 3.1. Страница Azure

Возможности Microsoft Azure

  1. Гибридное использование. Корпоративные гибридные облачные решения Azure позволяют использовать преимущества обоих решений, расширяя возможности ИТ-инфраструктуры. С Azure хранилище данных, резервное копирование и восстановление становятся более эффективными и экономичными.
  2. Открытость и гибкость. Azure поддерживает любые операционные системы, языки, средства и платформы: от Windows до Linux, от SQL Server до Oracle, от C# до Java. Azure позволяет использовать экосистемы Windows и Linux, чтобы была возможность создавания приложений и служб, работающих на всех устройствах.
  3. Доступность. Azure позволяет использовать ту же платформу корпоративного уровня, на которой работают Skype, Office 365, Bing и Xbox.
  4. Экономичность и масштабирование. Azure выполняет масштабирование для соответствия требованиям. Поминутная оплата и обязательство предоставлять конкурентоспособные цены на службы инфраструктуры, например, вычисления, хранилище и пропускную способность, означает получение оптимального соотношения цены и производительности.
  5. Создание инфраструктуры. В Azure используются виртуальные машины и средства управления.
  6. Разработка современных приложений. Azure позволяет создавать и развертывать разнообразные и современные приложения для Android, iOS и Windows, использующие все преимущества облачной среды, в том числе веб-, мобильные, мультимедиа- и бизнес-решения.
  7. Получение подробных сведений из данных. Azure предоставляет управляемые службы данных SQL и NoSQL, а также встроенную поддержку получения подробных сведений из данных. Есть возможность использования SQL Server в облаке и создания кластеров Hadoop в HDInsight для анализа данных.
  8. Управление удостоверениями и доступом. В Azure можно управлять учетными записями пользователей, выполнять синхронизацию с существующими локальными каталогами, использовать единый вход в Azure, Office 365 и популярных приложений SaaS, таких как Salesforce, DocuSign, Google Apps, Box, Dropbox и др.

Среда выполнения приложений

На рис. 3.2 представлены разделы компоненты "Среды выполнения приложений":

  • Виртуальные машины. Подготовка виртуальных машин и приложений Windows и Linux к работе.
  • Облачные службы. Создание облачных приложений и интерфейсов API с высокой доступностью и масштабируемостью.
  • Пакетная служба. Выполнение крупномасштабных параллельных и пакетных вычислительных заданий.
  • Планировщик. Запуск заданий по простому или сложному повторяющемуся расписанию.
  • RemoteApp. Развертывание клиентских приложений Windows в облаке, запуск на любом устройстве.
Среда выполнения приложений

увеличить изображение
Рис. 3.2. Среда выполнения приложений

Виртуальные машины

SQL Server и SharePoint. С помощью образов, созданных группой специалистов по SQL Server, можно подготовить SQL Server. Можно создавать виртуальные машины, используя бесплатные лицензии MSDN для быстрой разработки и тестирования, или развертывать сложные рабочие приложения, охватывающие множество регионов Azure, используя SQL Server AlwaysOn (рис. 3.3).

Виртуальные машины

увеличить изображение
Рис. 3.3. Виртуальные машины

Возможности Azure

Можно развернуть полный диапазон открытых и поддерживаемых сообществами разработчиков ОС и различные программные решения в службе Azure. В службе Azure выбирают полный диапазон дистрибутивов Linux, например, Ubuntu и SUSE, поддерживаемые сообществом решения, например, Chef, Puppet и Docker наряду с другими продуктами, такими как Oracle Database и Oracle WebLogic Server.

Масштабирование приложения. Чтобы использовать эту возможность, а также другие новые возможности Azure, необходимо зарегистрироваться для ознакомления с бесплатной предварительной версией.

На странице "Масштаб" портала управления Azure вручную масштабируют приложение или задают параметры для автоматического масштабирования. Можно масштабировать приложения, которые выполняют веб-роли, рабочие роли или виртуальные машины. Чтобы масштабировать приложение, которое выполняет экземпляры веб-ролей или рабочих ролей, необходимо распределить рабочую нагрузку путем добавления или удаления экземпляров.

При масштабировании приложения, в котором работают виртуальные машины, новые машины не создаются и не удаляются, а включаются или отключаются в группе доступности ранее созданных машин. Масштабирование задают как на основе среднего процента использования центрального процессора, так и на основе количества сообщений в очереди.

При настройке масштабирования приложения следует учитывать следующие сведения.

  • Необходимо добавить созданные виртуальные машины в группу доступности, чтобы масштабировать использующее их приложение. Добавляемые виртуальные машины могут быть изначально включены или выключены, однако они будут включены при увеличении масштабирования и выключены при его уменьшении.
  • Масштабирование зависит от использования ядер. Более крупные экземпляры ролей или виртуальные машины задействуют больше ядер. Масштабировать приложение можно только в пределах количества ядер по используемой подписке. Например, если подписка ограничена двадцатью ядрами и выполняется приложение с двумя средними по размерам виртуальными машинами (всего четыре ядра), то можно увеличить масштаб других развернутых в рамках подписки облачных служб на шестнадцать ядер. Все виртуальные машины в группе доступности, используемые при масштабировании приложения, должны быть одного размера.
  • Прежде чем приступить к масштабированию приложения на основе порогового значения сообщений, необходимо создать очередь и связать ее с ролью или группой доступности.
  • Можно масштабировать ресурсы, привязанные к используемой облачной службе.
  • В целях обеспечения высокой доступности приложения необходимо убедиться, что приложение развернуто с двумя и более экземплярами ролей или виртуальных машин.

Действия по масштабированию облачной службы:

  • ручное масштабирование приложения, которое выполняет веб-роли или рабочие роли;
  • автоматическое масштабирование приложения, выполняющего веб-роли, рабочие роли или виртуальные машины;
  • масштабирование связанных ресурсов;
  • планирование масштабирования приложения.

Масштабирование вручную приложения, которое выполняет веб-роли или рабочие роли. На странице масштаба вручную увеличивают или уменьшают количество работающих в облачной службе экземпляров.

Количество используемых экземпляров увеличивают только в том случае, если для поддержки этих экземпляров используется достаточное количество ядер. Цвета ползунка представляют используемые и доступные по подписке ядра:

  • синий цвет означает ядра, которые используются выбранной ролью;
  • темно-серый цвет означает ядра, которые используются всеми ролями и виртуальными машинами в рамках подписки;
  • светло-серый цвет означает ядра, доступные для использования в рамках масштабирования;
  • розовый цвет означает внесенные изменения, которые еще не были сохранены.

Автоматическое масштабирование приложения, выполняющего веб-роли, рабочие роли или виртуальные машины. На странице "Масштаб" настраивают облачную службу для автоматического увеличения или уменьшения количества экземпляров или виртуальных машин, используемых приложением. Можно настроить масштабирование на основе следующих параметров:

  • Среднее использование центрального процессора. Если средний процент использования центрального процессора превышает определенные пороговые значения или опускается ниже этих значений, то будет выполняться создание или удаление экземпляров роли, включение виртуальных машин в группу доступности или их исключение из нее.
  • Сообщения в очереди. Если количество сообщений в очереди превышает определенное пороговое значение или опускается ниже его, то экземпляры роли создаются или удаляются или виртуальные машины включаются в группу доступности или исключаются из нее.

Гибридные подключения

С помощью виртуальных сетей можно контролировать и настраивать все аспекты своей работы с сетью, устанавливая подсети и предпочитаемые IP-адреса DNS-серверов. Можно безопасно подключаться к виртуальным машинам в Azure через VPN по Интернету или обойти Интернет для установки прямого подключения посредством ExpressRoute через таких партнеров, как AT&T, Level 3, TelecityGroup, Verizon и Equinix.

Облачные службы

На рис. 3.4 представлены облачные службы.

Облачные службы

увеличить изображение
Рис. 3.4. Облачные службы

Создание приложений и интерфейсов API с высокой доступностью и бесконечной масштабируемостью. Есть возможность разрабатывать, упаковывать и развертывать приложения и службы в облаке с помощью облачных служб Azure.

Интегрированный интерфейс разработки, реализованный на базе Visual Studio + Azure SDK. Развертывается с использованием любого языка, включая .NET, Java, Node.js, PHP, Python или Ruby. Можно проверить приложение перед развертыванием в облаке с использованием эмулятора Azure, который реализует основные функции платформы непосредственно на компьютере.

Создание эффективных приложений. Облачные службы позволяют развертывать приложение и обеспечивать его постоянную доступность во время сбоев и неполадок, перенаправляя трафик из неисправных экземпляров на те, которые работают бесперебойно. Автоматическое обновление ОС подразумевает, что приложение всегда остается защищенным, а простоев и периодов обслуживания удастся избежать.

Тестирование приложений перед развертыванием. Облачные службы предоставляют промежуточную среду для тестирования новых версий (при этом она не оказывает влияния на существующую), что позволяет снизить вероятность нежелательного простоя для клиентов.

Мониторинг работоспособности и оповещения. Azure помогает отслеживать работоспособность и доступность приложений. На панели мониторинга метрик работоспособности отображаются ключевые статистические показатели, которые позволяют оценить работоспособность. Оповещения настраиваются в режиме реального времени для уведомления о снижении степени доступности службы или ухудшении каких-либо других показателей.

Автомасштабирование для оптимизации затрат и производительности. Бесплатная функция автоматического масштабирования помогает контролировать возрастание трафика, так как масштаб автоматически увеличивается или уменьшается в соответствии с требованиями, что одновременно позволяет свести расходы к минимуму.

Пакетная служба

В настоящее время пакетная обработка играет центральную роль в бизнесе, машиностроении, науке и других областях, где требуется выполнение множества автоматизированных задач, таких как обработка счетов и платежных ведомостей, расчет портфельного риска, разработка новых продуктов, мультипликация, тестирование ПО, поиск источников энергии, метеопрогнозирование и создание новых лекарств.

Перенос кластерных приложений в облако. Пакетная служба Azure адаптирована с приложениями, которые используются на рабочих станциях. Можно перенести исполняемые файлы и скрипты в облако, обеспечив горизонтальное масштабирование среды. Пакетная служба Azure позволяет ставить задания в очередь и выполняет приложения.

Планирование заданий. Основу пакетной службы Azure составляет модуль планирования заданий с высоким уровнем масштабирования, доступный как управляемая услуга. Планировщик в приложении используется для распределения заданий. Пакетная служба поддерживает кластерные планировщики заданий, а также может работать на базе службы типа "ПО как услуга".

Масштабирование. Пакетная служба Azure предоставляет доступ к пулу вычислительных виртуальных машин. Она также устанавливает приложения и обеспечивает промежуточное хранение данных, запускает выполнение всех необходимых задач, выявляет сбои и заново организует очередь заданий и сокращает объем ресурсов в пуле после завершения работы.

Предоставление решения как услуги. Пакетная служба Azure позволяет проводить обработку данных по требованию, а не по заранее определенному расписанию. Пользователи могут выполнять задания в облаке, когда это потребуется.

Планировщик

На рис. 3.5 представлен Планировщик.

Планировщик

увеличить изображение
Рис. 3.5. Планировщик

Создание заданий, выполняемых по расписанию. Планировщик Azure позволяет создавать задания в облаке, которые вызывают службы в пределах и за пределами Azure. Например, вызывают конечные точки HTTP/S или публикуют сообщения в очередях хранилища Azure.

Выполнение повторяющихся действий, ежедневных задач по обслуживанию и разработок. Планировщик Azure подходит для выполнения повторяющихся действий. Например, для периодического сбора данных из сети Twitter с отправкой в веб-канал. Он также подходит для очистки журналов, выполнения плановых операций резервного копирования и других задач по обслуживанию приложений.

Высокая доступность и надежность. Планировщик Azure функционирует и в случае перебоев в работе сети, машин и центров обработки данных, поэтому запланированные задания продолжают выполняться вовремя. При необходимости он может автоматически переключиться на альтернативный центр обработки данных в том же регионе. Пользователи также могут настроить альтернативные конечные точки на тот случай, если основная конечная точка становится недоступной.

Создание асинхронных заданий с помощью очередей. Планировщик Azure может отправлять сообщения в очереди хранилища Azure для асинхронной обработки повторяющихся запросов. Эта функция необходима для выполнения комплексных или долгосрочных запросов (например, серии запросов SQL, отправляемых в большую базу данных), а также в тех случаях, когда необходимо вызвать службу, работающую в автономном режиме.

Сергей Волков
Сергей Волков

Не могу получить доступ к Azure

Нуркылыш Бакытбек
Нуркылыш Бакытбек
Акбар Ахвердов
Акбар Ахвердов
Россия, г. Москва