Що варте хмару побудувати?


Не думайте, що захмарні штучки доступні тільки тим, у кого багато грошей. Хоча Ви недалекі від істини, оскільки майже всі компанії не пропонують нічого на халяву і, покористувавшись сервісом хоч би годину, тобі вже доведеться платити. Є приємні виключення, для прикладу Aptana Cloud, де можна без фінансових вкладень протягом 30 днів користуватися найменшою віртуальною машиною. Але якщо вже не терпиться щось спробувати розробити своїми руками, наведемо парочку проектів, які дозволять безкоштовно, тобто задарма, створити в домашніх умовах аналоги Google AppEngine і Amazon EC2.

Як Ви пам’ятаєте, AppEngine – це таке середовище для виконання програм (на Python-е), де Ваш скрипт працює усередині хмари в спеціальній пісочниці і взаємодіє зі світом через API. Ресурси для нього виділяються динамічно і дуже гнучко. Це ідеально підходить як для різних дослідницьких проектів, так і для швидкої побудови WEB-додатків, тоді точно можна не боятися перевантажень і digg-ефекту. Відкрита реалізація називається AppScale і на ній можна запускати ті ж самі програми, що і в оригінальній Google-саморобці.

Якщо у Вас є могутній комп’ютер, Ви можете розгорнути таку систему на декількох віртуальних машинах, імітуючи кластер, або ж просто позичити у друзів декілька системників і зібрати кластер в окремо узятій кімнаті. AppScale поставляється у вигляді вже налагодженого образу Linux-системи, який ставиться або на віртуальну машину Xen, або на буржуйській Amazon EC2, а для найрозумніших – працює на основі відкритого аналога, Eucalyptus, про яке нижче.

Враховуйте те, що треба, як мінімум, 4 сервери, а значить, комп’ютер має бути могутнім, дуже бажано – 64-бітовим. І – більше пам’яті, адже 4 Xenа їстимуть ресурси з непомірним апетитом! Детальна інструкція щодо установки і запуску достатньо об’ємна, тому читай її на офіційному сайті: http://code.google.com/p/appscale/wiki/Deploying_AppScale_via_Xen. Якщо все вийде, у Вас буде своя власна хмара, де можна експериментувати з різними програмами на пітонові. Потім, якщо дуже хочеш, їх можна перенести і на Google. Вони повинні працювати абсолютно однаково, не дивлячись на те, що AppScale спирається на відкриті аналоги гуглівських технологій (і не факт, що усередині все працює так само).

Якщо Python Вас не влаштовує, і Ви хочете спробувати щось ще, можна спробувати побудувати хмарний хостинг віртуальних машин, такий же, як у Amazon EC2, в якому Ви і друзі можуть інсталювати свої власні операційні системи і творити там що завгодно. Для цього використовується інша відкрита розробка – EUCALYPTUS, що зовсім не дерево, а Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems. Якщо коротко, – це проміжне середовище, яке працює на безлічі комп’ютерів (кластері) і надає через WEB-сервер і консоль можливість завантажити власний образ віртуальної машини і управляти їм, отримуючи той самий Amazon, тільки безкоштовно. Говорять, що навіть утиліти і API поцуплені аналогічно амазонівським, тому потренуватися спочатку можна на них, а потім вже перейти на амазон, якщо страшно навмання викидати стільки грошей. До речі, той самий AppScale відмінно працює поверх Eucalyptus-а, позбавляючи Вас від необхідності хімічити з Xen і образами. Просто узяв і запустив!

Якщо треба управляти безліччю віртуальних машин, формуючи з них одне або декілька хмар, спробуй ще одну відкриту розробку – Enomalysm (www.enomaly.com). Це платформа, що дозволяє об’єднати як комерційні віртуальні машини (VMware, KVM, Xen та інші), так і хмарні системи типу Amazon EC2 в один великий віртуальний дата-центр, керований одним WEB-сервером-консоллю. Доступ до платформи з твоїх застосувань дуже простий і заснований на стандартних протоколах XMPP, REST, JSON.

Із небес на землю

Найголовніше, що потрібно зрозуміти: захмарні системи – це засіб для отримання деякого середовища, в якому можуть працювати як звичайні віртуальні машини з призначеними для користувача ОС, так і цілі платформи для виконання застосувань. Важливою перевагою Cloud-а є незалежність від апаратного забезпечення і гнучка масштабованість, хоча в цьому напрямі ще багато чого можна зробити. Зазвичай в хмарах розміщуються молоді проекти, які ще фіг знає, вистрілять чи ні. Тому краще оплачувати всі ресурси (CPU, за кожен гігабайт трафіку, за місце в сховищі) за годинником. У цьому відмінність від звичайного хостингу, де гроші треба віддати відразу за місяць. Другою перевагою буде SLA – рівень надання сервісу зазвичай набагато вищий, ніж у стандартних хостингів, а хмару пропонує рівень надійності в 99,999. Отже, відмова будь-якій з систем або навіть всього сервера/стійки ніяк не упустить твій сайт!

Якщо не хочеться морочитися з установкою операційної системи, віртуалізацією і іншими сисадмінськими деталями, вибирай хмарні системи, що надають відразу платформу на твоїй улюбленій мові (вибір, зазвичай – або Java або Python). Ви будете обмежені заздалегідь заданим API, часто не вистачатиме звичайних сервісів і застосувань, насамперед SQL-бази даних, але коли звикнете, зможете робити застосування, які витримають мільйони хітів, а зламати навряд хто зуміє! Хмарні системи, як правило, набагато краще захищені, та і до кінцевої ОС важко добратися, адже там може бути декілька рівнів віртуалізації, моніторингу і систем безпеки (спробувати, втім, можна...).

“Надхмарні” обчислення вже поряд – проект “По дорозі з хмарами”

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

Власне, сам проект – це перший російськомовний ресурс про хмарні технології що працює в хмарі. Ось, що говорять про нього його творці.

Згідно недавніх звітів Gartner, на сьогоднішній день ринок хмарних платформ і застосувань демонструє упевнене зростання. Передбачається що з 2010 до 2013 р. хмарні рішення будуть на озброєнні у більшості з 2 тис. найбільших корпорацій миру. Словом, передумов для відкриття ресурсу По дорозі з хмарами (http://way2cloud.net), на сторінках якого ми плануємо публікувати інформацію про хмарні платформи Microsoft, Amazon, Google, Salesforce тощо більш ніж достатньо.

У регулярних блогах і публікаціях авторів проекту освітлюватимуть питання розробки хмарних застосувань, інновацій в галузі SAAS і S+S рішень, а також приклади реалізації хмарних сценаріїв для бізнесу і простих користувачів Інтернету.

Захмарні обчислення на кожен день

Уявіть собі новину з недалекого майбутнього, яка, якщо таке все ж таки відбудеться, неодмінно фігуруватиме в топ всіх новинних радіостанцій, телеканалів і Інтернет-сайтів. Щось подібне до "Сьогодні закрився останній варезний сайт. Оскільки піратський софтвер як явище припинив своє існування ще в минулому році, власники варезників один за одним вимушені перекваліфіковуватися в торговців насіннячками і рознощиків піци. Насіннячок, що ліцензують, і піци".

За теперішніх часів звучить дико, чи не так? Проблема з піратством у області софтвера, швидше за все, так чи інакше буде актуальна до тих пір, поки існують коробки і диски з програмним забезпеченням, поки є охочі платити за створене працею програмістів ліцензійне ПЗ. Або, відповідно, не платити за нього, крадучи серійні номери, ключі і паролі, зламуючи захист і програм т.д.

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

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

Захмарні обчислення

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

Важко зараз знайти того, хто перший придумав малювати на схемах хмари, проте ідея прижилася, міцно увійшла до практики, і врешті-решт з легкої руки професора Рамната К. Челлапа (Ramnath K. Chellappa) з бізнес-школи Goizueta при Університеті Еморі (Emory University, Атланта, Джорджія), що запропонував вважати обчислення за економічне, а не технічне явище, навіть породила назву нового типу обчислень – Cloud Computing, яке без особливих затій так і перекладають іншими мовами – "хмарними обчисленнями". Загальне визначення цієї технології звучить приблизно так:

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

Під "хмарою", зрозуміло, мається на увазі не сам Інтернет, а весь той набір апаратного і програмного забезпечення, який забезпечує обробку і виконання клієнтських заявок "з того боку". Якщо не мудрити з визначеннями і вглядітися в суть, навіть найпростіша дія за допомогою Інтернету – запит сторінки сайту, якоюсь мірою є прикладом хмарного обчислення. Інтернет, по суті, і виник саме для того, щоб надавати видалений доступ до різних обчислювальних ресурсів.

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

Інша справа, що захмарні обчислення бувають різними.

Хмара хмарі ворожнеча

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

Концептуально технологію хмарних обчислень ділять на надання інфраструктури як сервіс – IAAS (Infrastructure as а service), платформи як сервіс - PAAS (Platform as а service), або програмного забезпечення у вигляді сервісу – SAAS (Software as а service), а також багато придуманих і ще не придуманих Інтернет-технологій для видалених призначених для користувача обчислень.

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

Наступний випадок – це так звані "комунальні обчислення" (utility computing), коли на стороні замовляється послуга виконання особливо складних обчислень чи зберігання масивів даних. Отримали послугу – сплатили рахунок за фактом отриманих ресурсів, в повній аналогії з рахунками за опалювання, воду чи електрику.

Нарешті, колективні, або розподілені обчислення (grid computing) – коли велике ресурсоємне обчислювальне завдання розподіляється для виконання між безліччю комп’ютерів, об’єднаних в могутній обчислювальний кластер мережею в загальному випадку або Інтернетом зокрема.

На практиці межі між всіма цими типами обчислень достатньо розмиті. Сьогодні з успіхом можна зустріти "захмарні" системи на базі моделі розподілених обчислень з комунальним принципом оплати і всіма ознаками автономних систем, і vice versa, в будь-яких поєднаннях. Проте майбутнє хмарних обчислень все ж таки значно масштабніше комунальних і розподілених систем, до того ж не кожен "хмарний сервіс" вимагає великих обчислювальних потужностей з єдиною інфраструктурою, що управляє, або централізованим пунктом обробки платежів.



Дата добавления: 2016-07-22; просмотров: 2658;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.013 сек.