Упраўленне Grid Computing з дапамогай Virtual асяроддзя - Частка 1
Увядзенне
Я працую ў кампаніі, дзе мы запускаем шмат працоўных месцаў, пакетную апрацоўку мільёнаў запісаў дадзеных кожны дзень, і я думаў у апошні час пра ўсіх машынах, якія сядзяць кожны дзень нічога не рабіць на працягу некалькіх гадзін. Не было б добра, калі мы маглі б выкарыстоўваць гэтыя машыны для ўмацавання вылічальнай магутнасці нашых сістэм? У гэтай серыі артыкулаў я буду глядзець на патэнцыйныя выгоды ад выкарыстання офіса сеткі выкарыстаннем виртуализованных асяроддзях.
У PHP распрацоўшчык я збіраюся выкарыстоўваць інструменты, якія я выкарыстоўваю кожны дзень, а менавіта, Linux, MySQL , PHP, VirtualBox і Subversion (SVN). Аднак я спадзяюся, што гэта кіраўніцтва будзе адаптавацца да іншых мовах і тэхналогіях гэтак жа добра.
Рашэнне, якое я інфармацыя будзе вельмі слаба ў залежнасці ад тыпу апрацоўкі мы павінны дасягнуць, аднак гэта не можа быць праўдай па ўсёй артыкуле, я нешта змяніць, для прастаты, або для атрымання больш цікавых варыянтаў выкарыстання.
Гэтыя виртуализованных асяроддзях, будзе працаваць на кампутарах з Windows, гэта тое, што большасць офісаў бегчы. Апрацоўкі, офіснай тэхнікі, не павінны перашкаджаць супрацоўнікам выкарыстоўваць гэтыя машыны, павінны не патрабуюць абслугоўвання ў машыну, і быць лёгка адаптуецца да новых машынам, паколькі яны становяцца даступнымі. Акрамя таго, новыя віртуальныя машыны не патрабуе якіх-небудзь дадатковых налад, так як гэта значна зніжае маштабаванасць і лёгкасць, з якой падвесная сістэма можа быць пашырана.
Чаму Разгортванне ГРІД бюро вылічальнай?
Па-першае, вы можаце падумаць, чаму б не выкарыстоўваць рэсурсы хмарных вылічэнняў, такіх як платформы EC2 ад Amazon ? Ну, прычын можа быць некалькі, напрыклад:
- Вы не будзеце давяраць некаторых дадзеных у асяроддзі хмарных вылічэнняў
- Вы не можаце змясціць пэўныя дадзеныя ў асяроддзі хмарных вылічэнняў па юрыдычных прычынах (напрыклад, дадзеныя з краіны), што можа па юрыдычных прычынах, напрыклад, NHS запісаў.
- Вы хочаце, каб ваша апаратура апрацоўкі зачыніць і мець поўны кантроль над апаратным занадта
- У вас няма сродкаў праекта для запуску воблака выпадках
- Ваш офіс не мае падлучэння да Інтэрнэту, і таму яго нельга выкарыстоўваць воблака рэсурсаў
- Вы не любіце дождж, аблокі прапанаваць дождж, таму вы трымаеце далей
Я ўпэўнены, што гэты спіс можна працягваць, але я думаю, што гэта дастаткова.
Перавагі Grid Computing офіса
Ну, давайце рабіць некаторыя матэматыкі (і ў праўдзівым стылі фізікі дазваляе зрабіць некалькі шырокіх здагадках). Уявіце, у вас ёсць вялікі мясісты сервер апрацоўкі працуе 100 рабочых месцаў у дзень. У офісе ў вас ёсць 50 машын, якія прастойваюць па 16 гадзін у дзень, кожная з гэтых машын складае 10%, як магутны, як ваш моцны разарваць апрацоўкі. (Усе вынікі тут акругляюцца да недаацэньваць павелічэння прадукцыйнасці).
Так, 1 машына * 10% магутнасці * 2/3 часу = 0,067 г.зн. 1 працоўны стол апрацоўка ў рэжыме часу можа апрацоўваць 6 поўных працоўных месцаў у дзень.
Калі вы цяпер маштабуецца да гэтага ён займае 15 прастойваюць працоўныя станцыі для апрацоўкі, як шмат працоўных месцаў у дзень у якасці асноўнага сервера апрацоўкі робіць.
Такім чынам, у нашым офісе робяць выгляд 50 машын мы можам павялічыць нашы магутнасці працэсара ад 1 сервера да 4 поўных сервераў апрацоўкі, ці мы маглі б апрацоўкі 400 працоўных месцаў у дзень замест 100.
Заўважце, не для інвестыцый у новае абсталяванне Ваша кампанія толькі павялічыў свой пакет перапрацоўчых магутнасцяў у 4 разы! Патэнцыйна вы збіраецеся павялічыць спажыванне энергіі, але ў большасці офісаў Я быў на машынах, як правіла, застаецца на ноч у любым выпадку, каб вы маглі бачыць гэта як зялёны ініцыятыву.
Іншыя перавагі таксама азначае, што інвестыцыі ў новы (або абноўлены) сервераў апрацоўкі можа быць адкладзенае, калі ваша машына офіса дастаткова, і як палепшыць харчаванне вашай машыны офіс офіс сеткі становіцца ўсё больш магутным аўтаматычна.
Тэхналогіі
Што вам трэба? (Ці, дакладней тое, што я выкарыстаў):
- Idle офіснае абсталяванне (у маім выпадку запасны старыя вокны XP ноўтбук)
- VirtualBox (або іншага праграмнага забеспячэння для віртуалізацыі кліентаў)
- Віртуальная машына з PHP, MySQL running працуе зрэзаная АС, я называю гэта маёй LIMP сервераў :)
- Вакансіі для запуску
- Праца сервера (можа быць іншай віртуальнай машыне дзесьці)
Тыповыя Вакансіі
Відаў работ, што гэтая сістэма прызначана для працы выглядае наступным чынам:
- Сістэма атрымлівае спіс дадзеных, на якіх мы павінны адпавядаць і вяртаць вынікі
- Адпаведныя ўключае праверку / пошуку некалькі (даволі статычны) крыніц дадзеных
- Вынікі з крыніц дадзеных могуць спатрэбіцца дадатковыя праверкі, зліваючыся, праверка дадатковых крыніц дадзеных у адказ на вынікі
- Дадзеныя вяртаюцца з адпаведнымі запісамі, цалкам правераныя і апрацаваны
- Кожны запіс у працы не залежыць ад астатніх
Таму ў асноўным мы глядзім на выконваюцца заданняў, якія патрабуюць сумесь пошук у базе дадзеных і некаторага ліку храбусценне, даволі тыповы сцэнар у бізнес-асяроддзі.
Сетка рашэння не толькі выгадна для апрацоўкі рабочых месцаў такога тыпу. У прынцыпе, любы працэс, які можа быць падзелены на незалежныя блокі могуць выконвацца паралельна. Глядзіце гэты Вікіпедыі прыклады і больш падрабязную інфармацыю: Grid Computing , але пару вядомых прыкладаў Seti @ Home і BIONC . Ёсць рамкі для выканання вылічальных сетак, і гэта таксама заслугоўвае вывучэння.
Што ж мы дасягнулі?
Да канца гэтых артыкулах я спадзяюся паказаць, што разгортванне сеткі офіса не павінны быць вельмі дарагімі, або часу. Я збіраюся абмеркаваць наступныя пытанні:
- Налада сістэмы кіравання заданнямі, праца канфігурацыі
- Стварэнне адпаведнай апрацоўкі віртуальнай машыны
- Як наладзіць сістэму на машыне акна
- Забеспячэнне вы выкарыстоўваеце апошнюю версію кода і дадзеных
- Разгортвання і тэсціравання
- Зазіраючы наперад
Я буду дома (добра, я пабудаваў, то напісаў) прыклад прыкладанні для праверкі канцэпцыі, на лакальным кампутары ў Windows XP і мой "GridMachine" віртуальнай машыны. Мая праца серверны элемент кіравання будзе маёй асноўнай машынай, якая працуе Fedora 11 .
Гэта ніякім чынам не азначала, каб прадэманстраваць цалкам працоўны надзейныя сістэмы, яе значыла больш, дэманстрацыі і абмеркавання паказваюць, што гэтыя рэчы могуць быць дасягнуты ў досыць сціснутыя тэрміны і з мінімальнымі выдаткамі. Калі ласка, не саромейцеся, дасылайце мне любыя заўвагі, выпраўленні і паляпшэнні, і я зраблю ўсё магчымае, каб захаваць гэты артыкул абнаўлення, каб адпавядаць.
Наступны раз
У частцы 2 я пачну, гледзячы на сістэмы кіравання працай, і вывучыць, як працоўныя месцы павінны быць настроены для дасягнення найбольшай колькасці апрацоўкі ў той час як забеспячэнне кожнага задання апрацоўваюцца ў абавязковым парадку.

















































