Надхмарні обчислення
Нещодавно компанії HP, Intel і Yahoo! оголосили про створення глобальної, такої, що охоплює безліч майданчиків, відкритої обчислювальної лабораторії для розвитку досліджень і розробок у галузі «cloud computing». «Cloud computing» є підходом, коли комплексний інструментарій з апаратного і програмного забезпечення доступний користувачеві через Internet у вигляді сервісу, що дозволяє використовувати зручний WEB-інтерфейс для виділеного доступу до виділених ресурсів. У рамках нового проекту HP, Intel and Yahoo! співробітничають із Infocomm Development Authority в Сінгапурі (IDA), Університетом штату Іллінойс в Урбана-шампейн і Технологічному інституті в Карлсруе, Німеччина (KIT). У ініціативі також бере участь Національний науковий фонд, шт. Іллінойс.
Спочатку лабораторія включатиме шість «центрів майстерності», розташованих на майданчиках IDA, Університету штату Іллінойс в Урбана-шампейн, Штейнбушського обчислювального центру технологічного інституту в Карлсруе, лабораторій HP, організації Intel Research і Yahoo!. Для підтримки обчислень з високою інтенсивністю обробки даних будуть задіяні від 1000 до 4000 обчислювальних ядер. Очікується, що всі майданчики, що входять до складу лабораторії, будуть повнофункціональними і забезпечать доступ дослідників у всьому світі, які будуть вибрані пізніше вже цього року.
Дана ініціатива сприяє співпраці представників галузі, наукового співтовариства і державних організацій в галузі Інтернет-обчислень із високою інтенсивністю обробки даних і дозволяє долати ряд фінансових і матеріальних бар’єрів. Лабораторія Cloud Computing Test Bed, створена HP, Intel і Yahoo!, надає глобально розподілене випробувальне Інтернет-середовище, яке підтримує дослідження, направлені на розвиток ПЗ, вдосконалення управління центрами обробки даних і вирішення апаратних проблем, пов’язаних з Інтернет-обчисленнями набагато більшого масштабу, чим коли-небудь раніше. Ця ініціатива також сприятиме появі нових Інтернет-застосувань і послуг.
Якщо хмари – це зважені в атмосфері продукти конденсації водяної пари, видимі на небі з поверхні землі, що ж тоді «надхмарні обчислення»? Кластер на небесах?
Насправді, надхмарна обробка даних (англ. Cloud computing) — це технологія обробки даних, у якій програмне забезпечення надається користувачеві як Інтернет-сервіс. Користувач має доступ до власних даних, але не може управляти операційною системою і власне ПЗ, з яким працює (піклуватися про інфраструктуру йому також не потрібно). Безпосередньо "хмарою" називають Інет, який якраз і приховує багато технічних деталей. Це якщо коротко. Тепер давай подивимося на все трохи глибше.
У основі Cloud Computing лежать декілька підходів.
Перший - доступність через Інтернет. Звичайно, бувають і закриті системи, але, як правило, до всього можна доторкнутись через мережі (при цьому, "назовні" хмара надає себе як звичайний сервер). Другий важливий момент - це віртуалізація. Завдяки віртуалізації, користувачі отримують стільки ресурсів, скільки їм треба (і, зрозуміло, скільки можуть дозволити собі придбати). Що для цього потрібний з боку сервера і яким чином він може виділити такі ресурси - все приховано за стінами віртуальних машин; вони можуть працювати на сотнях і навіть тисячах серверів, а часто – ще і в різних дата-центрах. Третій момент: Cloud Computing - це послуга. У 60-і роки за машинний час доводилося платити і чекати вільної години. У Cloud Computing використовується схожий підхід. І хай стояти в черзі не потрібно, – всі послуги також оплачуються окремо. Хмара для користувача – це деякий набір послуг, які споживаються і оплачуються, деколи без щонайменшого уявлення, що ж там використовується усередині.
Візьмемо найпростіший приклад – хостинг для 5 Гб даних і доступ до них через HTTP REST API. Купуючи таку послугу, ніхто не замислюється, де фізично зберігаються дані, які накопичувачі і RAID використовуються тощо Головне, що є потрібний об’єм даних, який доступний завжди за допомогою зручного інтерфейсу.
Четвертий момент – як не дивно, простота і стандартність. Так-так, хоча хмарність і стоїть на передньому краю комп’ютерних технологій, це одна з найважливіших її властивостей. Тут ніяких тобі нових мов, складних конфігураційних файлів і багатогодинних сесій в терміналі для налаштування всіх демонів. Все, що пропонується усередині хмари, доступно через найпростіші виклики API і протоколи. Величезну популярність завоював так званий протокол REST, за допомогою якого всі операції над даними можна проводити через http-запити. Втім, застосовуватися можуть і багато інших рішень, більш того, доступні готові бібліотеки для різних мов програмування.
Тепер просте питання - навіщо це все потрібно? Відповідаю. За невеликих, загалом, грошей отримуємо доступ до найнадійнішої інфраструктури з необхідною тобі продуктивністю. Uptime комерційних систем, як правило, гарантується на рівні трьох-п’яти дев’яток (99,9% і вище), що означає не більше пари хвилин - годин простою в рік. Не потрібно бути семи п’ядей в лобі, щоб задіяти таку систему – тут використовуються прості і добре описані протоколи і API. І що ще важливе - практично необмежені можливості за масштабованістю! Набуваючи звичайного хостингу, то зможете стрибнути вище голови і при різкому сплеску навантаження ризикуєте отримати сервіс, що впав на декілька порядків. У хмарі додаткові ресурси надаються за першим запитом. І якщо Ваш скрипт злому паролів зажадає раптом для розрахунку ще пару процесорів і гігабайт пам’яті, то це не стане проблемою. Адже і красота у тому, що такі ресурси не треба купувати відразу, оплачуючи дикі рахунки - функціональність можна доростити у будь-який момент. Саме тому Cloud Computing - це справжня знахідка для стартапів, господарі яких заздалегідь не можуть передбачити: вистрілить їх проект чи ні.
Варіанти надання обчислювальних потужностей сильно відрізняються. Все, що стосується Cloud Computing, зазвичай прийнято називати словом aaS (aaS – дві букви A, не те, що Ви подумали!). Розшифровується просто – "as а Service", тобто "як сервіс", або "у вигляді сервісу".
SAAS (SOFTWARE-AAS), або застосування у вигляді сервісів - варіант, при якому тобі пропонують використовувати якесь конкретне ПЗ, наприклад, корпоративні системи, у вигляді сервісу за передплатою. Скажімо, у підприємства немає можливості чи бажання хостити внутрішній Exchange-сервер для роботи пошти, календарів тощо - і воно може купити його окремо, з урахуванням всієї необхідної специфіки. Чи часто такі сервіси доступні просто в бразуері? А Ви користуєтесь Google Docs? Це і є SAAS, тільки безкоштовний.
PAAS (PLATFORM-AAS) - на відміну від SAAS, призначений більше для кінцевого користувача, варіант для розробників. У хмарі діє деякий набір програм, основних сервісів і бібліотек, на основі яких пропонується розробляти свої застосування. Найяскравіший приклад – платформа для створення застосувань Google AppEngine. Окрім цього, під PAAS розуміють також і окремі частини складних систем, на зразок системи бази даних або комунікацій.
HAAS (HARDWARE-AAS) - один з перших термінів, що означають надання деяких базових "залізних" функцій і ресурсів у вигляді сервісів. Але замість прямої оренди хостингу використовується віртуалізація. Тому, коли мова йде про конкретному залізі, розуміється деяка абстрактна суть, аналогічна реальним залізним (місце під зберігання, процесорний час в еквіваленті якого-небудь реального CPU, пропускна спроможність).
IAAS (INFRASTRUCTURE-AAS) - вважається, що термін прийшов на зміну HAAS, піднявши його на новий рівень. Для прикладу – це системи віртуалізації, балансувальники навантаження і тому подібні системи, лежачі в основі побудови інших систем.
Дата добавления: 2016-07-22; просмотров: 1929;