Ноу Інти, лекція, веб-служби в хмарі
Анотація: Розглянемо деякі з веб-служб, що надаються концепцією хмарних обчислень. Інфраструктура є послугою в концепції хмарних обчислень. Є багато різновидів управління інфраструктурою в хмарної навколишньому середовищу. "Інфраструктура як Сервіс" (Infrastructure-as-a-Service, IaaS) в основному за запитом на базі сучасних обчислювальних технологій і високошвидкісних мереж. "Комунікацій як Сервіс" (Communication-as-a-Service, CaaS). "Програмне забезпечення як Сервіс" (Software-as-a-Service, SaaS), такі як Amazon.com з їх еластичною платформою хмари, характеристики, переваги, і архітектурний рівень обслуговування. Досліджуємо ключові особливості використання зовнішніх джерел / ресурсів (outsourcing), доступні як "Платформи як Сервіс" (Platforms-as-a-Service, PaaS).
Метою даної лекції є огляд веб-служб, що надаються концепцією хмарних обчислень. Особлива увага приділяється типу "Інфраструктура як Сервіс".
Оскільки технології мігрують від традиційної локальної моделі в нову модель хмари, сервісні пропозиції розвиваються практично щодня. Пропозиції веб-служб часто мають багато спільних характеристик. Часто від клієнта потрібні лише мінімальні витрати для отримання послуги. Масштабованість передбачається для кожного з типів пропозицій, але це не завжди необхідно. Багато з "хмарних" вендорів ще працюють над використанням масштабованості, тому що їх користувачі поки не потребують даному виді послуг. Нарешті, пристрій і незалежність розташування дозволяє користувачам отримати доступ до систем незалежно від того, де вони знаходяться або які пристрої використовують.
Інфраструктура як Сервіс (IaaS)
Інфраструктура як Сервіс (Infrastructure-as-a-Service, IaaS) - надання комп'ютерної інфраструктури (як правило, це платформи віртуалізації) як сервісу. IaaS существено підсилює технологію, послуги і вкладення в центри обробки даних, щоб надати це як послугу клієнтам. На відміну від традиційного аутсорсингу, який вимагає належного старанності, нескінченних переговорів і складних, довгих контрактів, IaaS зосереджена навколо моделі надання послуг, яка забезпечує визначену, стандартизовану інфраструктуру, безумовно оптимізовану під потреби клієнта. Спрощені пропозиції роботи і вибір рівня сервісного обслуговування полегшує клієнтові вибір рішення з певним набором основних експлуатаційних характеристик. Як правило, постачальники надають компоненти наступних рівнів:
- Апаратне забезпечення (як правило, Грід з масивної горизонтальної масштабованість);
- Комп'ютерна мережа (включаючи маршрутизатори, брандмауери, балансування навантаження і т.д.);
- Підключення Інтернет;
- Платформа віртуалізації для того, щоб запускати віртуальні машини;
- Угоди сервісного обслуговування;
- Інструменти обліку обчислень.
Замість покупки простору в центрах обробки даних, серверів, програмного забезпечення, мережевого устаткування, і т.д. клієнти IaaS по суті орендують ресурси, які знаходяться на стороні обслуговуючих постачальників послуг IaaS. Оплата за надання послуг зазвичай проводиться щомісячно. Клієнт платить тільки за спожиті ресурси. Основні переваги даного типу послуг включає:
- Вільний доступ до попередньо сконфигурированной навколишньому середовищу;
- Використання інфраструктури останнього покоління;
- Захищені та ізольовані обчислювальні платформи;
- Зменшення ризику, за рахунок використання сторонніх ресурсів, які підтримуються третіми особами;
- Здатність управляти піковими навантаженнями;
- Більш низькі витрати;
- Менший час, вартість і складність при додаванні або розширенні функціональності.
Обчислення на вимогу набувають все більшої популярності серед підприємств. Обчислювальні ресурси, які обслуговують призначені для користувача веб сайти, стають все менше і менше, в той час, як доступні ресурси постачальників послуг постійно зростають. Модель на вимогу розвинулася, щоб подолати проблему того, як ефективно задовольнити вагається вимогам системи до ресурсів. Попит на обчислювальні ресурси може істотно змінюватися за досить короткі проміжки часу, і підтримка ресурсів достатніх, щоб задовольнити піковим вимогам може бути дорогим. Технічно переусложненность рішення може бути настільки ж несприятливої, як ситуація, коли підприємство скорочує витрати, підтримуючи тільки мінімальні обчислювальні ресурси. Такі поняття як кластерні обчислення, Грід обчислення і т.д. можуть здаватися дуже подібними поняттю обчислень на вимогу, але краще їх зрозуміти можна, якщо думати про них, як стандартних блоках, які розвивалися протягом довгого часу, щоб досягти сучасної моделі хмарних обчислень, яку ми використовуємо сьогодні.

Мал. 4.1. грід обчислення
Розглянемо один із прикладів - Amazon's Elastic Compute Cloud (Amazon EC2). Amazon EC2 - веб-служба, яка забезпечує обчислювальні потужності порядного розміру в хмарі. Це розроблено, щоб зробити веб-обчислення доступнішими для розробників і щоб запропонувати безліч переваг для клієнтів:
- Інтерфейс веб-служби, дозволяє клієнтам отримувати і формувати простір з мінімальним зусиллям;
- Надає користувачам повний контроль над їх (орендованими) обчислювальними ресурсами і дозволяють їм працювати в перевіреної обчислювальної навколишньому середовищу;
- Зменшує час, необхідний для отримання та завантаження нового сервера до хвилин, дозволяючи клієнтам швидко змінювати конфігурацію, згідно їх обчислювальним вимогам;
- Змінює економіку обчислень, дозволяючи клієнтам платити тільки за використовувані ресурси;
- Надає розробникам інструменти, які необхідні для побудови відмовостійких додатків і ізолювання себе від загальних сценаріїв відмови.
Amazon EC2 представляє обчислювальну навколишнє середовище, дозволяючи клієнтам використовувати веб інтерфейс, для отримання та управління послугами, необхідними для запуску одного або більше примірників операційної системи. Клієнти можуть завантажити навколишнє середовище з їх налаштованими додатками. Вони можуть керувати мережевими правами доступу і так багато систем, скільки їм потрібно. Для використання Amazon EC2, клієнтам спочатку необхідно створити Amazon Machine Image (AMI). Цей образ містить додатки, бібліотеки, дані і пов'язані параметри конфігурації, які використовуються в віртуальної обчислювальної середовищі. Amazon EC2 пропонує використання попередньо сконфігуровані образи, створені з шаблонами, необхідними для негайного запуску. Коли користувачі визначили і сформували їх AMI. вони використовують інструменти Amazon EC2 для завантаження образу в Amazon S3. Amazon S3 - склад, який забезпечує безпечний, надійний і швидкий доступ до клієнта AMI. Перш, ніж клієнти зможуть використовувати AMI. вони повинні використовувати веб інтерфейс Amazon EC2 для настройки безпеки і мережевий доступ.
Є досить багато особливостей сервісу EC2, які забезпечують істотні пільги для підприємства. Перш за все, Amazon EC2 забезпечує фінансову вигоду. Через великого масштабу компанії Amazon і великої клієнтської бази, це недорога альтернатива багатьом іншим можливим рішенням. Витрати понесені на запуск і управління розділені між великою кількістю клієнтів, роблячи вартість для будь-якого клієнта набагато нижче, ніж будь-яка інша альтернатива. Клієнти платять дуже низький відсоток за обчислювальні потужності, які вони фактично споживають. Безпека також забезпечена через інтерфейси веб-служби Amazon EC2. Ці інтерфейси дозволяють користувачам формувати параметри налаштування брандмауера, які контролюють мережевий доступ до і між групами примірників служб. Amazon EC2 пропонує дуже надійне середовище, де випадки заміни можуть бути швидко забезпечені.
Amazon EC2 дозволяє користувачам збільшувати або зменшувати продуктивність за кілька хвилин. Користувачі можуть запускати єдиний екземпляр, сотні примірників або навіть тисячі екземплярів служб одночасно. Всім цим керують за допомогою API веб-служби, додаток може автоматично масштабувати себе вгору або вниз, в залежності від його потреб. Даний тип динамічної масштабованості дуже привабливий для клієнтів підприємств, тому що це дозволяє їм відповідати вимогам своїх клієнтів, не маючи необхідність добудовувати їх інфраструктуру.
- Повний контроль над екземплярами.
Параметри настройки конфігурації можуть значно відрізнятися серед користувачів. У них є вибір з різних типів примірників, операційних систем, і пакетів програмного забезпечення. Amazon EC2 дозволяє їм вибирати конфігурацію пам'яті, центрального процесора, і системи зберігання, яка оптимально підходить для їх вибору операційної системи і додатки. Наприклад, вибір користувача операційної системи може також включати численні збірки Linux, Microsoft Windows Server, і навіть OpenSolaris, всі запущені на дійсних серверах.
- Інтеграція з Іншими Веб-службами Amazon.
Amazon EC2 працює в поєднанні з безліччю інших веб-служб Amazon. Наприклад, Amazon Simple Storage Service (Amazon S3), Amazon SimpleDB, Amazon Simple Queue Service (Amazon SQS) і Amazon CloudFront все інтегровані, щоб забезпечити повне рішення для обчислень, обробки запитів і зберігання між широким діапазоном додатків.
Amazon S3 забезпечує інтерфейс веб-служб, який дозволяє користувачам зберігати і відновлювати будь-який обсяг даних через Інтернет в будь-який час, будь-де. Це надає розробникам прямий доступ до того ж самому, добре масштабованість, надійному, швидкому, недорогому використання інфраструктури зберігання даних Amazon, щоб управляти їх власної глобальною мережею веб сайтів. Служба S3 прагне максимізувати переваги масштабованості і передати ці переваги розробникам.
Amazon SimpleDB - інший веб сервіс, розроблений для того, щоб виконувати запити на структурованих даних Amazon Simple Storage Service (Amazon S3) в режимі реального часу. Цей сервіс працює в поєднанні з Amazon EC2, щоб надати користувачам можливість зберігання, обробки і запитів наборів даних в межах навколишнього середовища хмари. Ці сервіси розроблені, щоб зробити веб масштабовані обчислення легше і більш прибутковими для розробників. Традиційно даний тип функціональності був забезпечений використанням кластерної реляційної бази даних, яка вимагає значних інвестицій. Впровадження даних технологій викликало більше складності і часто вимагало послуг адміністрування і підтримки бази даних.
У порівнянні з традиційним підходом, Amazon SimpleDB легка у використанні і забезпечує основну функціональність баз даних (наприклад, пошук в реальному часі і запити структурованих даних), що не наслідуючи складності експлуатації, що виникають при традиційному виконанні. Amazon SimpleDB не вимагає схеми, дані індексуються автоматично, забезпечує простий інтерфейс API для зберігання і доступу до даних. Це позбавляє клієнтів від необхідності виконати завдання, такі як моделювання даних, обслуговування індексів і настройка продуктивності.
Amazon Simple Queue Service (Amazon SQS) - сервіс приймає черги повідомлень для зберігання. При використанні Amazon SQS, розробники можуть просто перемістити дані, розподілені між компонентами своїх додатків, які виконують різні завдання, не втрачаючи при цьому повідомлення. При цьому досягається висока масштабованість і надійність. Amazon SQS працює як демонстрація масштабируемой передачі повідомлень Amazon, інфраструктури як сервісу. Будь-який комп'ютер, пов'язаний з Інтернетом, може додати або прочитати повідомлення без необхідності в установці будь-якого програмного забезпечення або спеціальний конфігурації брандмауера. Компоненти додатків, що використовують Amazon SQS, можуть запускатися незалежно і не повинні обов'язково розміщуватися в тій же самій мережі, що використовує ті ж самі технології або працюють в той же самий час.