Неактивна зіркаНеактивна зіркаНеактивна зіркаНеактивна зіркаНеактивна зірка
 

Лекція 4. Azure Services Platform. Windows Azure, Windows .Net Services

Введення в технології Azure

Платформа Windows Azure - це "хмарна" платформа компанії Microsoft, яка реалізує модель PaaS. Інструменти даної платформи надають функціонал для створення рішення, яке включає в себе "хмарну" операційну систему і набір сервісів для розробників.

Іншими словами, платформа Windows Azure є групою "хмарних" технологій, кожна з яких надає певний набір сервісів.

Платформа Windows Azure є частиною "хмари" компанії Microsoft, яке складається з наступних категорій сервісів:

1. "Хмарні" додатка (cloud-based applications) - являють собою набір постійно доступних, масштабованих сервісів, розміщених в "хмарі" Microsoft, які споживачі можуть використовувати безпосередньо. Наприклад, до таких належать: Bing, Windows Live Hotmail, Office Live і т.д.

2. Програмні сервіси (software services) - являють собою набір SaaS - сервісів, таких як Exchange Online, SharePoint Online, Office Communications Online і т.д.

3. Платформні сервіси (platform services) - використовуються, як платформа, що представляє собою публічне "хмара", яку розробники можуть використовувати для впровадження рішень нового покоління. До даних сервісів, зокрема відносяться SQL Azure, AppFabric і Windows Azure.

4. Інфраструктурні сервіси (infrastructure services) - набір компонент платформи Windows Azure, що забезпечують підтримку "хмарних" інфраструктурних ресурсів.

Платформа Windows Azure включає в себе:

Windows Azure - операційна система в "хмарі", надає обчислювальні ресурси, засоби зберігання даних і інструменти управління сервісами.

SQL Azure - реляційна база даних, надає основні можливості MS SQL Server зі зберігання даних, надається як сервіс.

Windows Azure AppFabric - програмні модулі, що забезпечують комунікації (Service Bus) і контроль доступу (Access Control). Використовуються для забезпечення взаємодій між додатками споживача і додатками хмари.

Введення в Windows Azure

За своєю суттю, Windows Azure є платформою для запуску Windows - додатків і зберігання даних в хмарі.

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

Зберігання даних в Windows Azure можливо за допомогою ряду сервісів, у вигляді таблиць, бінарних даних і черг, які ми детально розглянемо в наступних лекціях даного курсу.

Windows Azure працює на базі машин, розташованих в дата - центрах компанії Microsoft, доступ до платформи забезпечується за допомогою Інтернету.

Платформа Windows Azure створена на основі технологій віртуалізації. На відміну від звичайного надання потужностей віртуальних машин для віддалених користувачів, платформа azure управляється за допомогою спеціального інфраструктурного шару Windows Azure Fabric Controller, або "фабрики".

Завдання фабрики полягає в організації всього обчислювального масиву віртуалізованих примірників Windows Azure у вигляді логічно єдиної одиниці обчислень, а також управління ресурсами, навантаженням і всім життєвим циклом додатків і сервісів в цілому. Іншими словами, фабрика пов'язує обчислювальні потужності різних машин в єдине ціле.

Сервіси виконання Windows Azure, природно, засновані на Windows - технологіях. Створювати і запускати на Windows Azure можна тільки додатки засновані на .Net Framework, наприклад, це можуть бути ASP.Net або WCF - додатки. Не варто сприймати Windows Azure тільки як платформу, для веб - додатків, платформа також підтримує фонові процеси, які не залежать від веб - додатків.

Також варто відзначити, що сервіси зберігання даних, що надаються Windows Azure можуть використовуватися, як локальними програмами користувача, так і додатками, розміщеними безпосередньо на Azure - платформі.

Клієнт може контролювати своє azure - додаток, редагуючи вручну, або програмно, його конфігураційний файл, наявний у кожного додатка.

Доступ до можливостей конфігурації і моніторингу стану програми здійснюється через відповідний портал, при наданні клієнтського Windows Live ID.

Приклади застосування Windows Azure

Підіб'ємо підсумок, для чого саме може бути використана Windows Azure:

1. Розміщення в "хмарі" веб - додатки. При цьому інфраструктура "хмари" направляє запит клієнта до одного з примірників веб - ролі віртуальної машини. Віртуальний веб - сервер даної ролі, отримавши запит активує відповідний код.

2. Паралельна обробка даних. В даному випадку, при обробці великих масивів даних, клієнт, наприклад, за допомогою WPF-додатки звертається до веб-сервісу, запит на обробку даних поміщається в чергу Azure Queue. Обробка здійснюється в асинхронному режимі. Результат поміщається в Azure Table.

3. Об'єднання локальних обчислювальних потужностей і ресурсів хмари.

Однак, крім питання "як використовувати" є і "коли доцільно". Наведемо ряд типових ситуацій для відповіді на друге питання:

• Реалізація нового проекту (стартап). Основна перевага використання технологій Windows Azure в даному випадку полягає в тому, що для реалізації стартапу не потрібна наявність масштабної IT - інфраструктури. Розробники будуть платити тільки за фактично спожиті ресурси. Додаток буде масштабироваться Windows Azure в залежності від числа його користувачів, позбавляючи, таким чином, від ризику переплати за підтримку і супровід інфраструктури при спочатку малій кількості користувачів.

• Створення SaaS версії локального .Net - додатки. Windows Azure надає стандартне .Net оточення і відповідний функціонал підтримки і супроводу програми. Зайве говорити, що і в даному випадку відсутня необхідність підтримання часто надлишкової, з точки зору вирішуваних завдань, IT - інфраструктури.

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

.Net Services компоненти, приклади використання

.Net Services являють собою набір сервісів для вирішення завдань доступу до хмарним додаткам і комунікацій.

Компоненти .Net Services:

1. Access Control - спосіб ідентифікації, при якому користувач надає додатком набір тверджень, в залежності від цих тверджень додаток вирішує що саме дозволено користувачеві.

2. Service Bus. Метою даної шини є забезпечення доступу до сервісів додатки ззовні. Також вона забезпечує проходження Фаєрвол без відкриття нового порту, якщо програма має бути доступним ззовні.

3. Workflow - даний компонент дозволяє створювати композитні додатки для інтеграції enterprise - додатків.

.Net Services можуть бути використані для реалізації WF - додатків, на основі сервісів Workflow, організації доступу клієнтів до додатка з різними технологіями ідентифікації (Access Control), для забезпечення доступу сторонніх користувачів до одного з внутрішніх корпоративних додатків (Service Bus).

Список додаткових матеріалів для самостійного вивчення

Технології Microsoft Azure

  1. http://www.oszone.net/10952/Microsoft-Azure
  2. http://www.zdnet.com/blog/microsoft/microsofts-azure-cloud-platform-a-guide-for-the-perplexed/1671
  3. https://partner.microsoft.com/ukraine/40084702

Windows Azure

  1. http://www.microsoft.com/windowsazure/whitepapers/default.aspx
  2. http://www.microsoft.com/windowsazure/faq/default.aspx
  3. http://venture-biz.ru/informatsionnye-tekhnologii/110-windows-azure

.Net Services

  1. http://channel9.msdn.com/Blogs/nigel.watling/What-are-NET-Services
  2. http://developers.de/blogs/damir_dobric/archive/2008/10/27/windows-azure-net-services-overview.aspx
  3. http://www.azurejournal.com/2008/11/azure-net-services-access-control/

(Для ознайомлення з повним текстом статті необхідно залогінитись)