Контакти

Концепція хмарних технологій. Платформа як сервіс. Огляд хмарних сховищ

Визначення хмарних обчислень на перший погляд дуже заплутане: це модель надання повсюдного і зручного мережевого доступу до загального пулу конфігуруються обчислювальних ресурсів (Наприклад, сервери, додатки, мережі, системи зберігання та сервіси), які можуть бути швидко надані і звільнені з мінімальними зусиллями з управління і необхідності взаємодії з провайдером.

Для того щоб краще уявити, що таке cloud computing, можна навести простий приклад: раніше користувач для доступу до електронної пошти вдавався до певного ПО (месенджери і програми), встановленому на його ПК, тепер же він просто заходить на сайт тієї компанії, чиї послуги електронної пошти йому подобаються, безпосередньо через браузер, без використання посередників.

Але цей приклад більше підходить для приватних хмар. Нас же цікавлять дані технології в бізнесі. Сучасна реалізація почалася з 2006 року. Тоді компанія Amazon представила свою інфраструктуру веб-сервісів, не тільки забезпечує хостинг, але і надає клієнту віддалені обчислювальні потужності.

Три моделі «хмар»

Нагадаємо, що існує три моделі обслуговування хмарних обчислень:

Програмне забезпечення як послуга (SaaS, Software as a Servise). Споживачеві надаються програмні засоби - додатки провайдера, що виконуються на хмарної інфраструктурі.

Платформа як послуга (PaaS, Platform as a Service). Споживачеві надаються кошти для розгортання на хмарної інфраструктурі створюваних споживачем або придбаних додатків, що розробляються з використанням підтримуваних провайдером інструментів і мов програмування.

Інфраструктура як послуга (IaaS, Infrastructure as a Service). Споживачеві надаються кошти обробки даних, зберігання, мереж та інших базових обчислювальних ресурсів, на яких споживач може розгортати і виконувати довільний програмне забезпечення, включаючи операційні системи і додатки.

Переваги хмарних сервісів

У минулому році сукупний обсяг світового ринку в сфері хмарних технологій склав близько $ 40 млрд. Деякі експерти прогнозують, що до 2020 року цей показник досягне $ 240 млрд. Росія по впровадженню cloud computing в бізнес займає 34-е місце з показником $ 250 млн.

Виділяють кілька переваг, пов'язаних з використанням хмарних технологій.

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

Мобільність. Користувач не має постійної прихильності до одного робочого місця. З будь-якої точки світу менеджери можуть отримувати звітність, а керівники - стежити за виробництвом.

Економічність. Одним з важливих переваг називають зменшену витратність. Користувачеві не треба купувати дорогі, великі по обчислювальної потужності комп'ютери та комплектуючі, ПЗ, а також він звільняється від необхідності наймати фахівця з обслуговування локальних IT-технологій.

Орендної. Користувач отримує необхідний пакет послуг тільки в той момент, коли він йому потрібен, і платить, власне, тільки за кількість придбаних функцій.

Гнучкість. Всі необхідні ресурси надаються провайдером автоматично.

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

Надійність. Деякі експерти стверджують, що надійність, яку забезпечують сучасні хмарні обчислення, набагато вище, ніж надійність локальних ресурсів, аргументуючи це тим, що мало підприємств можуть собі дозволити придбати і містити повноцінний ЦОД.

Google Apps для бізнесу виділяє ці ж переваги, тільки додає, що при використанні їх cloud computing компанія захищає навколишнє середовище, Пояснюючи це тим, що служби Apps працюють на базі центрів обробки даних Google, що відрізняються наднизьким енергоспоживанням, тому углеродоемкость і енерговитрати при їх використанні будуть значно нижче при використанні локальних серверів.

Скільки все це коштує?

Вартість Google Apps для бізнесу, за заявою компанії, $ 5 за одного користувача в місяць, з безкоштовним простором на хмарному диску 5 Гб (при бажанні можна докупити ще від 20 Гб до 16 Тб за ціною від $ 4 до $ 1 430 в місяць відповідно).

Також користувач може придбати Google Apps з сейфом за $ 10 в місяць, що включає в себе стандартний пакет послуг плюс архівування важливих комерційних даних, збір даних для судових потреб, пошук і експорт будь-яких корпоративних даних. Надання доменів - за окрему вартість. Варто відзначити, що користувачем вважається один електронний ящик.

Microsoft теж бореться за свою частку в області хмарних обчислень. Їх основу складає Office 365. Вона робить акцент на комплексне CRM-рішення, стверджуючи, що Microsoft Dinamics CRM включає блоки управління маркетингом, продажами, обслуговування клієнтів. Тобто за допомогою цієї функції є можливість вирішити спектр завдань управління взаємовідносинами, починаючи з залучення клієнтів і закінчуючи крос-продажами.

Виділяються також «розумний» аналіз, рольовий інтерфейс і висока мобільність.

У придбанні Office 365 пропонується кілька варіантів: тариф Office Professional Plus 2010 - 555 руб. в місяць з користувача. Наступні тарифи - вартістю 250, 300, 525 і 750 руб. в місяць за кожного користувача відповідно. До речі, Office 365 можна спробувати безкоштовно.

Незважаючи на всі позитивні відгуки, існує і певна критика на адресу хмарних технологій.

Основній критиці піддається те, що при використанні віртуального ПО інформація автоматично потрапляє в руки розробника цього програмного забезпечення. Так стверджує Річард Столлман, засновник руху вільного ПЗ.

Виділяється проблема інтеграції даних як з внутрішніми корпоративними, так і з хмарними сервісами інших постачальників.

Експерти вказують на проблему неконтрольованих даних: інформація, залишена користувачем, буде зберігатися роками без його відома або він не зможе змінити якусь її частину. Наприклад, на сервісах Google користувач не в змозі видалити не використані ним сервіси та навіть окремі групи даних.

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

Студенти часто задають питання: Що таке хмарні обчислення? Що таке хмарні сервіси? Що таке хмарний сайт? Що означає хмара, хмарні сховища файлів? Як використовуються хмарні обчислення в освіті? SaaS сервіс для B2C і B2B продажів? SaaS ERP і SaaS CRM системи і рішення? Які моделі хмарних обчислень використовуються для розробки веб-додатків? Сучасні дата-центри, на основі яких створюються хмарні послуги: SaaS, PaaS і IaaS?

Спочатку розглянемо, що таке "хмара" (Сloud) і "хмарні обчислення" (Сloud сomputing). "Хмара" - це інноваційна модель (концепція) організації IT-інфраструктури, яка складається з розподілених і поділюваних конфігуруються апаратних і мережевих ресурсів, а також програмного забезпечення, розгорнутих на віддалених (хмарних) дата центрах постачальників (провайдерів). Тобто хмара - це новий підхід організації IT-інфраструктури.

Cloud computing- це модель надання дистанційного доступу до поділюваних обчислювальних ресурсів, які фізично розподілені на багатьох віддалених пристроях, що утворюють так зване хмара (cloud).

Хмарні обчислення - це модель надання споживачеві масштабованих обчислювальних ресурсів у вигляді сервісу через Інтернет. Хмарні технології - це модель подання споживачеві IT як сервісу через Інтернет.

Проаналізуємо основне визначення хмарних обчислень, запропоноване Національним інститутом науки і технологій від 24 липня 2011 року.

Визначення "хмарні обчислення"

Хмарні обчислення (cloud computing) - модель надання можливості повсюдного і зручного мережевого доступу на вимогу до пулу поділюваних конфігуруються обчислювальних ресурсів (Наприклад, мереж, серверів, засобів зберігання, додатків і сервісів), які можуть оперативно надаватися і звільнятися при мінімальному зусиллі управління або взаємодії з провайдером (постачальником). Ця модель хмари представлена \u200b\u200b(описана) п'ятьма основними характеристиками, трьома сервісними моделями і чотирма моделями розгортання.

Основні характеристики хмарних обчислень, Які відрізняють їх від інших типів обчислень (інтернет-ресурсів):

  1. Самообслуговування на вимогу. Споживач у міру необхідності автоматично, без взаємодії з кожним постачальником послуг, може самостійно визначати і змінювати обчислювальні потужності, такі як серверний час, обсяг сховища даних.
  2. Широкий (універсальний) мережевий доступ. Обчислювальні можливості доступні на великі відстані по мережі через стандартні механізми, що сприяє широкому використанню різнорідних (тонких або товстих) платформ клієнта (термінальних пристроїв).
  3. Об'єднання ресурсів. Конфігуровані обчислювальні ресурси постачальника об'єднані в єдиний пул для спільного використання розподілених ресурсів великою кількістю споживачів.
  4. Миттєва еластичність ресурсів (миттєва масштабованість). Хмарні послуги можуть швидко надаватися, розширюватися, стискатися і звільнятися виходячи з потреб споживача.
  5. Вимірюваний сервіс (облік споживаного сервісу і можливість оплати послуг, які були реально використані). Хмарні системи автоматично керують і оптимізують використання ресурсів за рахунок здійснення вимірювань на деякому рівні абстракції, що відповідає типу сервісу.

Якщо модель (концепція) надання розподілених і поділюваних конфігуруються обчислювальних ресурсів відповідає вищевикладеним характеристикам, то це cloud computing.

Сервісні моделі хмарних обчислень або cloud computing:

  1. Software as a Service ( SaaS) - програмне забезпечення як послуга. У цій моделі надання хмарних обчислень споживач використовує додатки постачальника, запущені в хмарної інфраструктурі, які доступні клієнту через інтерфейс (web-браузер) або інтерфейс програми. Споживачі не можуть керувати і контролювати лежить в основі хмари інфраструктуру, включаючи мережу, сервери, операційні системи, сховища даних або навіть змінювати параметри налаштування конкретного додатка.
  2. Platform as a Service ( PaaS) - платформа як послуга. Модель надання хмарних обчислень, при якій споживач отримує доступ до використання програмної платформи: операційних систем, СУБД, прикладного ПО, засобів розробки і тестування програмного забезпечення. Фактично споживач отримує в оренду комп'ютерну платформу з встановленою операційною системою і спеціалізованими засобами для розробки, розміщення і управління веб-додатками. Споживач не керує основний інфраструктурою хмари, включаючи мережу, сервери, операційні системи або сховища даних, але управляє розгорнутими додатками і можливо параметрами налаштування конфігурації середовища оточення.
  3. Infrastructure as a Service ( IaaS) - інфраструктура як послуга. Модель надання хмарних обчислень, при якій споживач отримує можливість управляти коштами обробки і зберігання, а також і іншими фундаментальними обчислювальними ресурсами (віртуальними серверами і мережевою інфраструктурою), на яких він може самостійно встановлювати операційні системи та прикладні програми під власні цілі. По суті, споживач орендує абстрактні обчислювальні потужності (серверне час, дисковий простір і пропускну здатність мережевих каналів) або використовує послуги аутсорсингу ІТ-інфраструктури. Споживач не керує основний інфраструктурою хмари, але управляє операційними системами, сховищем і розгорнутими їм додатками.

Моделі розгортання хмарних обчислень, тобто cloud computing:

  1. Private cloud (приватне хмара) - інфраструктура, призначена для використання хмарних обчислень в масштабі однієї організації.
  2. Community cloud (хмара спільноти) - хмарна інфраструктура, яка призначена для виняткового використання хмарних обчислень певною спільнотою споживачів від організацій, які вирішують спільні проблеми.
  3. Public cloud (публічне хмара) - інфраструктура, призначена для вільного використання хмарних обчислень широкою публікою.
  4. Hybrid cloud (гібридне хмара) - це комбінація різних хмарних інфраструктур (приватних, публічних або спільнот), що залишаються унікальними об'єктами, але пов'язаних між собою стандартизованими або приватними технологіями, які забезпечують можливість обміну даними і додатками.

Мал. 1. Моделі розгортання хмарних обчислень / cloud computing

Виходячи з вищевикладеного визначення хмарних обчислень, хмарні сервіси можна представити у вигляді багатошарової моделі, що складається з шарів: IaaS, PaaS, SaaS. Базисом або фундаментом хмарних сервісів є physical infrastructure (фізична інфраструктура), Тобто сервери, сховища, мережі та системне програмне забезпечення Cloud data center (хмарного дата-центру) або мережі взаємопов'язаних хмарних Data centers (рис. 2).

У хмарних дата-центрах або в центрах обробки даних (ЦОД) поміщається фізичне обладнання або hardware (сервери, сховища даних, робочі місця), системне програмне забезпечення (ОС, засоби віртуалізації і автоматизації), інструментальне і прикладне ПО, системи управління обладнанням (Equipment management systems), мережева інфраструктура (Network infrastructure): маршрутизатори та комутатори (routers and switches) для підключення і об'єднання фізичного обладнання. Крім того, нормальну роботу дата центрів забезпечують системи інженерного забезпечення (Systems of engineering support).

Мал. 2. Cloud computing architecture (архітектура хмарних обчислень)

Перший шар хмарних послуг - IaaS (інфраструктура)

IaaS - це надання користувачу комп'ютерної та мережевої інфраструктури (servers, storage, networking) і їх обслуговування як послуги в формі віртуалізації, тобто віртуальної інфраструктури. Іншими словами, на базі фізичної інфраструктури дата-центрів або ЦОД постачальник (провайдер) створює віртуальну інфраструктуру, яку надає користувачам як сервіс. Засоби віртуалізації дозволяють перетворити фізичну інфраструктуру data centers в віртуальну і таким чином створити перший шар хмарних послуг - IaaS.

Що таке віртуалізація? Технологія віртуалізації ресурсів дозволяє фізичне обладнання (сервери, сховища даних, мережі передачі даних) розділити між користувачами на кілька частин, які використовуються ними для виконання поточних завдань. Наприклад, на одному фізичному сервері можна запустити сотні віртуальних серверів, а користувачеві для вирішення завдань виділити час доступу до них. Реалізація віртуалізації може бути здійснена як на програмному рівні, так і на апаратному.

Таким чином, користувачеві надаються абстрактні еластичні обчислювальні потужності, наприклад, не сервер або сервери, а серверне час для обробки його завдань. Чи не диски для зберігання даних, а необхідне дисковий простір, не канали зв'язку, а необхідна для вирішення завдань мережева пропускна здатність каналів комутації.

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

Як правило, IaaS надається в оренду (надається IaaS-сервіс на умовах аутсорсингу) корпоративним користувачам. Тобто користувачі отримують інтегровані ресурси для створення своєї власної обчислювальної інфраструктури. У цьому випадку користувач повинен сам встановити і налаштувати OS і необхідні програми для виконання виробничих завдань або для розробки додатків.

Концепція IaaS дозволяє користувачеві купувати тільки ті обчислювальний потужності, які необхідні йому для виконання конкретних завдань. До складу додаткових послуг IaaS може входити підключення будь-якого фізичного обладнання користувача до хмарної платформі і його розміщення в мережі дата-центрів.

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

Крім того, до IaaS-послуг хмарних обчислень відноситься хмарний хостинг (Cloud Hosting). Хмарний хостинг - це хостинг, який може забезпечити динамічний розподіл ресурсів, має можливість автоматичного масштабування ресурсів і має підвищену відмовостійкість. Хмарний хостинг є істотною альтернативою віртуальному хостингу, хостингу на віртуальному виділеному сервері VPS / VDS і хостингу на фізичному виділеному сервері.

Провайдер Cloud Hosting надає власникам сайтів тільки необхідні сайту ресурси: віртуальні сервери, кількість оперативної пам'яті і обсяг жорсткого диска, А також можливості для управління інфраструктурою хостингу (наприклад, вибір операційної системи, кількості RAM, обсягу і типу HDD, числа ядер CPU, тактової частоти і швидкості доступу). Оплата за оренду хмарного хостингу проводиться тільки за фактом вже спожитих ресурсів: кількості процесорного часу, обсягу дискового простору, кількості споживаної оперативної пам'яті і швидкості доступу до сайту.

При необхідності орендар (власник сайту) хмарного хостингу може змінити ресурси хостингу або налаштувати його на автоматичне збільшення ресурсів при зростанні навантаження, але він завжди буде оплачувати тільки вже спожиті ресурси. Хмарний хостинг має підвищену відмовостійкість, так як сайт, розміщений на ньому, одночасно знаходиться на декількох віртуальних серверах і відмова одного з них не вплине на роботу сайту.

В даний час хостери пропонують в оренду хмарні хостинги з попередньо встановленою CMS. Хостинг-провайдери для організації таких хмарних хостингів можуть, наприклад, розгорнути на своїх серверах платформу-як-інфраструктуру Jelastic з попередньо встановленими CMS. Jelastic поставляє платформу-як-інфраструктуру у вигляді повного стека, що дозволяє розгортання хмарних хостингів на фізичної інфраструктурі ЦОД хостинг-провайдера.

Функціонал платформи Jelastic дозволяє в один клік встановити вбудовані в неї CMS з оптимізованим веб-оточенням, наприклад, Jelastic на Infobox. Jelastic є продуктом, який включає в себе функціональність PaaS і легко конфігуровані інфраструктуру IaaS. Jelastic - це платформа для запуску Java- і PHP-додатків і може бути використана не тільки хостерами для організації хмарних хостингів, але і корпораціями для створення середовища розробки (приватних або гібридних хмар) веб-додатків.

На хмарних хостингах, розміщують хмарні сайти - це сучасні хмарні додатки. У хмарних сайтах (хмарних додатках) дані зберігаються в хмарних БД, серверні додатки сайтів зберігаються, і виконується на хмарних віртуальних серверах, а клієнтська частина сайту виконується в браузері користувача.

Середу хмарних обчислень можна створювати на основі хмарних рішень Amazon EC2, IBM x86, Microsoft Azure, EMC, VMware, на базі open-Sourсe рішення OpenStack, RackSpace на базі OpenStack і ін., Які дозволяють перетворити центр обробки даних в динамічну ІТ-середовище. Крім того, для хмарних обчислень використовуються хмарні бази даних, тобто бази даних, які запускаються на платформах хмарних обчислень. Як хмарних баз даних застосовуються як SQL-орієнтовані моделі, так і моделі даних NoSQL.

Послуги IaaS широко використовуються в США. В Україні компанія De Novo почала надавати хмарну інфраструктуру для корпоративних клієнтів на базі рішень VMware, EMC, Microsoft Azure, і т.д. На базі найбільшого українського дата-центру ВОЛЯ побудована хмарна IT-інфраструктура VoliaCLOUD від компанії VMware (на основі хмарних рішень VMware), яка має понад 500 віртуальних дата-центрів.

Основні IaaS Solution / Vendor: Amazon Web Services / Amazon, IBM SmartCloud / IBM, SoftLayer IaaS / IBM, Azure Virtual Machines / Microsoft, Google Compute Engine / Google, HP Cloud / HP, EMC / EMC Corporation, Oracle Cloud Infrastructure Services / Oracle . Слід зазначити, що IBM пропонує надійну відкриту інфраструктуру IBM SmartCloud на основі самообслуговування (SoftLayer) або повністю керованої IaaS (IBM SmartCloud Enterprise +).

Мал. 3. Основні IaaS Solution хмарних обчислень

Слід зазначити, що в даний час ведуться роботи по створенню хмарних опорних мереж постачальників широкосмугового мобільного зв'язку (операторів мобільного зв'язку) в якості послуги IaaS. До таких послуг належать, наприклад, хмарна телекомунікаційна платформа від Huawei і рішення NSN Telco Cloud від Nokia Siemens Networks.

Платформа FusionSphere Huawei забезпечує віртуалізацію обчислювальних ресурсів, ресурсів зберігання, мережевих ресурсів і організовує єдиний пул поділюваних конфігуруються обчислювальних ресурсів з єдиним механізмом планування і управління. Компанія Nokia Siemens Networks здійснила комплексне тестування основних мобільних служб, що охоплюють передачу голосу по LTE (VoLTE) і інших IP Multimedia Subsystem (IMS) послуг, що працюють на основі Telco Cloud.

Другий шар - PaaS (програмна платформа)

Сервіс PaaS надає програмну платформу і її обслуговування як сервіс в складі:

  • OS - мережева операційна система (Unix-системи, включаючи Ubuntu Server, BSD / OS Family, Solaris / SunOS і т.д. або Windows Server),
  • Database - система управління базою даних СУБД (MySQL, Microsoft SQL, SQL Database, PostgreSQL, Oracle та ін.),
  • Middleware - програмне забезпечення середнього шару або зв'язує (проміжне) програмне забезпечення, яке призначене для забезпечення взаємодії між різними додатками, системами і компонентами,
  • Software development tools and testing - інструментальне програмне забезпечення для розробки веб-додатків і їх тестування (середовище розробки ПО: програмні фреймворки, бібліотеки і т.д. для створення веб-додатків на мовах програмування: Python, Java, PHP, Ruby, JS для Node.js і т.д.),
  • App server - сервер додатків для розробки, тестування, налагодження та роботи веб-додатків.

Отже, PaaS пропонує розробникам ПО кошти розробки, тестування, розгортання і підтримки різних додатків. Крім того користувачу надаються інструменти адміністрування та управління. В основному PaaS використовується для розробки і розміщення web-додатків (наприклад, пов'язаних розподілених додатків - SaaS mashup, хмарних сайтів і т.д.).

Основні PaaS Solution / Vendor:

  • AWS Elastic Beanstalk / Amazon (Java, .NET, PHP, Node.js, Python, Ruby and Apache HTTP Server, Apache Tomcat, Nginx, Passenger, and IIS),
  • IBM Bluemix / IBM (хмарна платформа IBM Bluemix пропонує єдине середовище рішень і широкий набір мов і фрейморков для побудови додатків, наприклад, Liberty for Java ™, SDK for Node.js ™, ruby \u200b\u200bon rails, ruby \u200b\u200bsinatra),
  • Microsoft Asure / Microsoft (ASP.NET, Java, PHP, Python, Django, Node.js and Azure SQL Database),
  • Google App Engine / Google (Python, Java, PHP, Go and our MySQL),
  • Salesforce1 Platform Cloud application development / Salesforce об'єднує Force.com, Heroku і ExactTarget в одну мережу хмарних сервісів і надає інструменти для розробки різних додатків. Наприклад, для розробки мобільних додатків Salesforce1 Mobile App / Salesforce або хмарних баз даних для розробників додатків Database.com/Salesforce і т.д.
  • Heroku / Salesforce (Ruby, Java, Node.js, Scala, Clojure, Python і PHP and PostgreSQL),
  • Oracle Cloud Platform Services / Oracle (Oracle Database Cloud Service, Oracle Java Cloud Service, Oracle Database Backup Service),
  • OpenShift / Red Hat (Java, Java ЇЇ, Python, Perl, PHP, Ruby, Node.JS, and MySQL, PostgreSQL, MongoDB),
  • Cloud Foundry / VMware (Java Spring, Ruby on Rails і Sinatra, NodeJS, .NET and MySQL Redis, MongoDB),

Мал. 4. Основні PaaS Solution хмарних обчислень

Крім перерахованих рішень PaaS розробники Веб-додатків використовують і інші відомі рішення хмарних платформ: dotCloud PaaS, SAP HANA Cloud Platform, CloudBees Platform, Rackspace і т.д.

Третій шар - SaaS (хмарне додаток)

За схемою SaaS поставляються наступні типи хмарних додатків і їх обслуговування: Business Apps, Office Web Apps, Management Apps, Communications, Security і ін. Найбільшого поширення SaaS отримала в США. Найбільш затребуваними хмарними додатками є: CRM (система управління взаємовідносинами з клієнтами), HRM (система по роботі з персоналом, тобто з кадрами), ERP (система планування ресурсів підприємства, наприклад 1С), офісні додатки, Засоби комунікацій і ін. Salesforce.com є найбільшим в світі постачальником хмарних додатків CRM.

Під засобами комунікацій мається на увазі електронне листування (наприклад, Gmail), аудіо та відео чати (наприклад, Microsoft Lync Online), Cloud PBX або хмарна АТС (наприклад, віртуальна АТС Манго-Офіс), хмарний сервіс MDM (Mobile Device Management - управління мобільним пристроєм ). Хмарний сервіс MDM призначений для роботи з корпоративними системами за допомогою мобільних пристроїв.

На різні мобільні пристрої, які працюють під управлінням хмарної системи MDM, встановлюються додатки, так звані агенти. Ці програми забезпечують централізоване налаштування мобільних пристроїв і доступ до корпоративної мережі підприємства у вигляді хмарної послуги SaaS. Як правило, хмарні засоби комунікацій інтегруються з іншими послугами SaaS, наприклад, CRM + MDM, Office Web Apps + Lync Online, Google Docs + Gmail + Hangouts і т.д.

Основними споживачами SaaS є підприємства малого і середнього бізнесу. Більшість SaaS-додатків призначені для підтримки взаємодії між співробітниками, спільно працюють над вирішенням спільних завдань (Collaboration). Архітектура SaaS-додатків, в якій єдиний екземпляр додатку, запущений на сервері, обслуговує безліч споживачів, є мультіарендной (Multi-tenant), тобто кожному споживачеві в процесі виконання завдань надається свій екземпляр віртуального додатки.

Основні application software:

  • Business Apps (CMR, FRM, IBM® B2B Cloud Services, Axway Cloud B2B, amoCRM SaaS сервіс для B2B, Google Apps for Business),
  • Business Intelligence (PowerBI в складі Office 365 / Microsoft, Oracle Business Intelligence Managed Cloud Service, Anaplan / ADE Professional Solutions, Brand Analytics),
  • Office Web Apps (Google Docs, Office Online / Microsoft OneDrive, Office Web Apps / Microsoft, Zoho Docs, IBM SmartCloud Docs і т.д.),
  • Management Apps (ERP / ОРЕНДА 1С, HRM, SCM, MRP),
  • Communications (Gmail, Google Hangouts, Microsoft Lync Online, Cloud PBX або хмарна АТС, MDM),
  • Security (Panda Cloud Email Protection, Panda Cloud Internet Protection, McAfee SaaS Email Protection & Continuity, Сomfortway Mobile Security і т.д.), і ін.
  • Collaboration and Multi-tenant (Google Docs, Google Sites, Microsoft Office Online, Office 365, Office Web Apps).

Основні SaaS Solution / Vendor: Salesforce1 Sales Cloud / Salesforce (CRM), Oracle Cloud Applications / Oracle (HR, CX, ERP, EMP, SCP, Business Intelligence), Google Apps / Google - офісний пакет хмарних служб (Google Docs, Google Drive, Google Sites, communication: Hangouts, Gmail, Google Calendar і ін), IBM SmartCloud Docs / IBM, Microsoft Dynamics CRM, Microsoft OneDrive (Office Online, сховище файлів), Office 365 / Microsoft (Office Web Apps, Lync Online, Exchange Online , SharePoint Online), Zoho Docs / Zoho (онлайновий офісний пакет), Zoho Reports / Zoho (Business Intelligence), Zoho CRM / Zoho, Informatica Cloud MDM / Informatica, MaaS360 / Fiberlink, Cloud PBX from Vonage Business Solutions і т.д.

Мал. 5. Основні SaaS Solution хмарних обчислень

Існують і безліч інших SaaS-послуг хмарних обчислень, наприклад, Cisco WebEx - хмарний сервіс для проведення web-конференцій; CMS на основі моделі SaaS (наприклад, SaaS-платформа UMI.CLOUD); E-Commerce B2B / B2C за моделлю SaaS; Маркетинг SaaS-рішень; послуга «Антивірус Dr.Web» за моделлю SaaS; SugarCRM - комерційна CRM-система з відкритими початковими кодами; BPMonline CRM з інструментами моделювання і автоматизації бізнес-процесів і т.д.

Слід зазначити, що концепція хмарні обчислення (cloud computing) передбачає надання споживачам різних додаткових відовоблачних послуг: Storage-as-a-Service, Database-as-a-Service, Information-as-a-Service, Process-as-a-Service , Integration-as-a-Service, Testing-as-a-Service і т.д. Існують, наприклад, численні хмарні сховища файлів Storage-as-a-Service: Amazon Simple Storage Service (Amazon S3), DropBox, Google Drive, Microsoft OneDrive і т.д.

Як використовуються хмарні обчислення і технології в освіті? Google пропонує навчальним закладам хмарні додатки Google Apps for education для електронної освіти. Microsoft надає користувачам освітніх установ можливості хмарних служб Office 365 for education (Windows Azure in education). Впровадження хмарних обчислень (Cloud Computing) в школах і вузах забезпечить школярам і студентам вельми комфортне навчання.

Перспективи поширення хмарних обчислень з урахуванням їх поточного розвитку викладені в аналітичній роботі "Куди йдуть« хмари »на сайті compress.

На закінчення, слід ще раз зазначити, що всі сервісні моделі хмарних обчислень повинні відповідати основним характеристикам хмарних обчислень, викладеними в "The NIST Definition of Cloud Computing", які відрізняють їх від інших типів інтернет-ресурсів.

Щоб переконатися, що запропоновані вам інтернет-ресурси відносяться до однієї з моделей хмарних обчислень, порівняйте їх характеристики з основними характеристиками хмарних обчислень, запропонованими National Institute of Standards and Technology (самообслуговування на вимогу; єдиний пул для спільного використання ресурсів; миттєва еластичність або масштабованість; оплата тільки за реально спожиті послуги; універсальний мережевий доступ).

Лекція Хмарні технології

Хмарні технології (обчислення) - це технології розподіленої обробки даних, в якій комп'ютерні ресурси і потужності надаються користувачеві як Інтернет-сервіс.

До основних видів хмарних технологій відносять:

    " інфраструктураяксервіс" ( "Infrastructure as a Service" або "IaaS")

    " платформаяксервіс" ( "Platform as a Service", " PaaS")

    "Програмне забезпечення як сервіс" ( "Software as a Service" або "SaaS").

Розглянемо кожну з цих технологій докладніше.

Інфраструктура як сервіс (IaaS)

IaaS - це надання комп'ютерної інфраструктури як послуги на основі концепції хмарних обчислень.

IaaS складається з трьох основних компонентів:

    Апаратні засоби (сервери, системи зберігання даних, клієнтські системи, мережеве обладнання)

    Операційні системи та системне ПЗ (засоби віртуалізації, автоматизації, основні засоби управління ресурсами)

    Сполучна ПО (наприклад, для управління системами)

IaaS заснована на технології віртуалізації, що дозволяє користувачеві обладнання ділити його на частини, які відповідають поточним потребам бізнесу, тим самим збільшуючи ефективність використання наявних обчислювальних потужностей. Користувач (компанія або розробник ПЗ) повинен буде оплачувати лише реально необхідні йому для роботи серверний час, дисковий простір, мережеву пропускну здатність і інші ресурси. Крім того, IaaS надає в розпорядження клієнта весь набір функцій управління в одній інтегрованої платформі.

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

Платформа як сервіс (PaaS)

PaaS - це надання інтегрованої платформи для розробки, тестування, розгортання і підтримки веб-додатків як послуги.

Для розгортання веб-додатків розробнику не потрібно купувати устаткування і програмне забезпечення, немає необхідності організовувати їх підтримку. Доступ для клієнта може бути організований на умовах оренди.

Такий підхід має такі переваги:

    масштабованість;

    відмовостійкість;

    віртуалізація;

    безпеку.

масштабованість PaaS передбачає автоматичне виділення і звільнення необхідних ресурсів в залежності від кількості обслуговуваних додатком користувачів.

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

Здатність створювати вихідний код і надавати його в загальний доступ всередині команди розробки значно підвищує продуктивність по створенню додатків на основі PaaS.

Програмне забезпечення як сервіс (SaaS).

SaaS - модель розгортання програми, яка має на увазі надання додатки кінцевому користувачеві як послуги на вимогу (on demand). Доступ до такого додатку здійснюється за допомогою мережі, а найчастіше за допомогою Інтернет-браузера. В даному випадку, основна перевага моделі SaaS для клієнта полягає у відсутності витрат, пов'язаних з установкою, оновленням і підтримкою працездатності обладнання і програмного забезпечення, що працює на ньому. Цільова аудиторія - кінцеві споживачі.

У моделі SaaS:

    додаток пристосоване для віддаленого використання;

    одним додатком можуть користуватися кілька клієнтів;

    оплата за послугу стягується або як щомісячна абонентська плата, або на основі сумарного обсягу транзакцій;

    підтримка програми входить вже до складу оплати;

    модернізація програми може проводитися обслуговуючим персоналом плавно і прозоро для клієнтів.

З точки зору розробників програмного забезпечення, модель SaaS дозво ефективно боротися з неліцензійним програмним забезпеченням, завдяки тому, що клієнт не може зберігати, копіювати та інсталювати програмне забезпечення.

По-суті, програмне забезпечення в рамках SaaS можна розглядати в якості більш зручної та вигідної альтернативи внутрішнім інформаційним системам.

Розвитком логіки SaaS є концепція WaaS (Workplace as a Service - робоче місце як послуга). Тобто клієнт отримує в своє розпорядження повністю оснащене всім необхідним для роботи ПО віртуальне робоче місце.

    Комунікації (VoIP)

    Антиспам і антивірус

    Управління проектами

    Дистанційне навчання

    Зберігання та резервування даних

Всі три типи хмарних сервісів взаємопов'язані, і представляють вкладену структуру.

Крім різних способів надання сервісів розрізняють кілька варіантів розгортання хмарних систем:

Приватне хмара (private cloud) - використовується для надання сервісів всередині однієї компанії, яка є одночасно і замовником і постачальником послуг. Це варіант реалізації "хмарної концепції", коли компанія створює її для себе самої, в рамках організації. В першу чергу реалізація private cloud знімає один з важливих питань, яке неодмінно виникає у замовників при ознайомленні з цією концепцією - питання про захист даних з точки зору інформаційної безпеки. Оскільки "хмара" обмежена рамками самої компанії, це питання вирішується стандартними існуючими методами. для private cloud характерне зниження вартості обладнання за рахунок використання простоюють або неефективно використовуваних ресурсів. А також, зниження витрат на закупівлі обладнання за рахунок скорочення логістики (не думаємо, які сервера закуповувати, в яких конфігураціях, які продуктивні потужності, скільки місця кожен раз резервувати і т.д.

По суті, потужність нарощується пропорційно зростаючої в цілому навантаженні, не в залежності від кожної виникає завдання - а, так би мовити, в середньому. І стає легше і планувати, і закуповувати і реалізовувати - запускати нові завдання в виробництво.

публічне хмара - використовується хмарними провайдерами для надання сервісів зовнішнім замовникам.

Змішане (гібридне) хмара - спільне використання двох перерахованих вище моделей розгортання

У цьому розділі показано, як можна використовувати хмарні обчислення при навчанні основам програмування. Наводиться детальний приклад роботи з Web-сервіси, що дозволяє створювати і налагоджувати навчальні програми на будь-якій мові програмування за допомогою хмарного сервісу сайту http://ideone.com.

Сучасна практика програмування передбачає активне використання спеціалізованих інтегрованих засобів розробки (IDE - Integrated Development Environment). Їх використання пов'язане з наступними двома складнощами:

  • Налагодження та установка IDE вимагає високої кваліфікації системного адміністратора.
  • Сучасні IDE досить вимогливі до ресурсів обчислювальної машини, на якій вони використовуються.

Пояснимо кожен пункт докладно. Для забезпечення повнофункціональної роботи IDE потрібно, щоб кваліфікація системного адміністратор, який здійснює установку, настройку і підтримку IDE була досить висока. Це призводить до необхідності наймати до навчальних закладів на посаду системного адміністратора висококваліфікованих співробітників, заробітня плата яких може виявитися суттєвою статтею витрат в бюджеті освітнього закладу.

Більш того, витрати освітнього закладу можуть зрости внаслідок того, що сучасні IDE вимагають наявності високопродуктивних обчислювальних машин. Наприклад, одна з найпоширеніших IDE Microsoft Visual Studio 2012 потребує для нормальної роботи процесор потужністю 1,6 ГГц або вище, 1 ГБ оперативної пам'яті (або 1,5 ГБ для віртуальної машини), 10 ГБ вільного дискового простору. Для більшості завдань освітніх установ не потрібно комп'ютерів з такою високою продуктивністю, тому їх купівля може виявитися неприпустимою розкішшю.

Обидві зазначені проблеми дозволяє вирішити застосування хмарних технологій при навчанні програмуванню. В даний час існують велика кількість так званих онлайн - IDE, які не вимагають установки на комп'ютер користувача і які вимагають для запуску лише наявність Інтернет-браузер. Системні вимоги браузерів до обладнання обчислювальної машини традиційно є скромними. Наприклад, популярний Веб- браузер Mozilla Firefox 17 вимагає для установки процесор від 1300 МГц, 512 МБ ОЗЦ і 200 МБ вільного дискового простору, що істотно менше наведених раніше цифр для IDE Microsoft Visual Studio 2012.

Розглянемо нижче, як можна використовувати онлайн - IDE в навчальних закладах для навчання основам програмування на прикладі http://ideone.com. Цей сервіс дозволяє в режимі онлайн створювати тексти програм на різних мовах програмування і запускати ці програми на виконання з можливістю аналізу отриманих результатів. Основні робочі елементи Ideone показані на рис. 2.1.


Мал. 2.1.

У полі " А"Необхідно ввести текст програми, а в поле" В"Потрібно вибрати використовуваний мова програмування, Потім потрібно натиснути кнопку " Надіслати". У вказано, що Ideone підтримує роботу з наступними 55 популярними мовами програмування: Ada, Assembler, AWK, Bash, bc, Brainf ** k, C, C #, C ++, C ++ 0x, C99 strict, CLIPS, Clojure, COBOL, Common Lisp (clisp), D (dmd), Erlang, F #, Factor, Falcon, Forth, Fortran, Go, Groovy, Haskell, Icon, Intercal, Java, JavaScript, Lua, Nemerle, Nice, Nimrod, Node .js, Objective- C, Ocaml, Oz, PARI / GP, Pascal, Perl, PHP, Pike, Prolog, Python, R, Ruby, Scala, Scheme (guile), Smalltalk, SQL, Tcl, Text, Unlambda, VB. NET, Whitespace. Очевидно , що цього переліку достатньо при навчанні основам програмування практично в будь-якому навчальному закладі світу. Більш того, при використанні сервісу ideone.com у викладача з'являється можливість використовувати при навчанні відразу кілька мов програмування без необхідності підтримувати роботу декількох IDE.

Покажемо на прикладі, як може бути організована робота в групі при навчанні основам програмування. Рис 2.2 ілюструє спосіб запуску простий програми на мові Сі. Як можна бачити, в тексті програми використовується підсвічування синтаксису, Аналогічна тій, що користувачі звикли використовувати в звичайних офлайн- IDE. Однак при бажанні підсвічування може бути відключена за допомогою елемента управління " А". За допомогою елемента управління" В"Можна вказати перелік вхідних даних для програми, що дозволяє реалізувати більш складну логіку роботи програми, ніж в наведеному прикладі.

Дуже важливим є елемент управління " З", Який дозволяє персоніфікувати роботу з програмою. Дана можливість вкрай цінна при організації навчального процесу. Якщо викладач попросить всіх студентів зареєструватися в Ideone (або використовувати для входу свій обліковий запис Facebook), то з'являється можливість зробити процес роботи з програмою колективним, а процес спільної роботи з програмою буде проходити з використанням сучасних технологій Web 2.0. Детальніше про це розповімо, використовуючи рис. 2.3.

Цей елемент управління дозволяє вибрати зі списку в правій частині екрану один з віджетів популярних сайтів соціальних мереж.

На жаль, онлайн - IDE Ideone дозволяє реалізувати не всі з функцій традиційних офлайн- IDE. Наприклад, відсутня можливість використовувати функції роботи з мережею, звернення до файлів і деякі інші. Також неможливо запустити програму, час виконання якої займе більше 15 секунд або потреби в оперативній пам'яті перевищать 256 МБ, або обсяг програми перевищить 64 КБ. Всі ці обмеження є досить серйозними, якщо планується використовувати Ideone для розробки професійного програмного забезпечення. Однак для освітніх цілей ці обмеження більш ніж прийнятні. Крім того, для більш вимогливих викладачів існують платні і безкоштовні сервіси, аналогічні Ideone, які при цьому більшою мірою реалізують функціонал традиційних офлайн- аналіз результатів виконання в консольке режимі, компіляцію під різні платформи та операційні системи можна виконати в режимі онлайн. В ідеалі закінченням роботи програміста буде скачування готових бінарних файлів з працюючою програмою. Такий підхід дозволяє заощадити використовуваної офлайн дисковий простір, а також дозволяє компілювати проект істотно швидше, ніж на робочому місці користувача, якщо це робоче місце обладнане застарілим апаратним забезпеченням. Підсумком цього є можлива фінансова економія для освітнього закладу.

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



Сподобалася стаття? поділіться їй