Управління Grid Computing використанням віртуальних середовищ - Частина 5
Введення
Я працюю в компанії, де ми запускаємо роботу пакетної обробки мільйонів записів даних кожен день, і я думав недавно про всі машинах, які сидять кожен день нічого не робити протягом декількох годин. Не було б добре, якщо ми могли б використовувати ці машини для зміцнення обчислювальної потужності наших систем? У цей набір статей я буду дивитися на потенційні вигоди від використання офісу сітки використанням віртуалізованних середовищах.
У частині 4 ми дивилися на використанні інструментів для забезпечення того, щоб ми встановлена остання версія коду і даних джерел, з тим, що отримані результати завжди в ногу з актуальний з останніми бізнес-інформації і логіці.
Перед розгортанням
Перед розгортанням підвісній системі, якщо є одна річ, ви робите, і одне тільки це тест поточну систему! Неважливо, що ви розповісти колегам про те, як багато додаткової роботи вашої системи буде робити, якщо у вас є номери, щоб підтримати це ваші гарантії нічого. Таким чином,
- скільки записів ви можете процесу в даний час? У день? У годину?
- Скільки часу зазвичай займає повернути роботу?
- Як багато більше можливостей у вас є?
Там також додаткові питання:
- Якщо ваш сервер обробки (або один з ваших серверів обробки) йде вниз як це вплине на ваші можливості, ви будете каліка?
- Які переваги ви сподіваєтеся / очікуєте отримати від підвісній системі?
- Ваші машини офіс може працювати робочі місця?
- Ваші (або ви можете бути перетворені робочих місць) для роботи в цьому стилі працює?
Остання велика крапка цікаво провести час на будь-яких серйозних змін, як це. Оновлення обробки коду для роботи з використанням нової методології, тест знову. Можливо налаштувати сервер обробки для запуску віртуальної машини, після всіх ваших обробки сервером буде просто ще один робочий (тільки дуже потужний відносно). Дозволити нового процесу з врегулювання.
Розгортання
Моя пропозиція була б поп в офісі один уїк-енд виконувати всі установки і налаштування. Робіть це як раз перед двотижневу відпустку і відпустку, щоб інші бідолаха мати справу з наслідками ... може і ні ...
Розгортання системи, як це має бути повільним. Незважаючи на його порівняно простий в установці цієї системи буде впливати на всю інфраструктуру офісу (а цифровий). По-перше, розкачати на пару машин в той час, моніторинг мережевого трафіку, як працівник виконує хостів на день, в день основі. Можливо, вам доведеться змінити вашу роботу конфігурації у відповідь на ваші висновки.
Після того як система оселився з декількох машин (скажемо 10% всіх офісних машин, т. 5) тримати моніторинг мережевого трафіку і машині performance. Наступний тест ще раз, тепер ви повинні обробляти 33% більше робочих місць, ніж ваш перший показників. Перевірте це так, або що ви по крайней мере в цьому приблизні. Якщо ні, дослідити, що відбувається, перш ніж рухатися далі. Повторіть цей цикл, поки ви з радістю все офісної техніки працює без вбивства окремих продуктивність машини або шліфувальних мережі в глухий кут.
У всі часи тримати бенчмаркінгу, навіть після всіх розгортань зроблені. Перевірте, як нові оновлення коду впливає на швидкість вашої системи, перевірте всі працівники звітності та обробки завдань. Повільно (дуже повільно) приріст вашої конфігурації завдання, щоб отримати кращі з ваших працівників та мережі.
Стоп!
Що робити, якщо ви хочете зупинити робочих із працюючих на деякий час? Вони всі там працює, регенерує, і з усіх сил намагаються обробляти дані, як голодні комахи. Відповідь може здаватися очевидним, але його варто додавати тільки у разі його уваги. Просто змініть сценарій обробки з виходом (0) або померти () або деякі інші заяви, щоб вбити вашого завдання обробки. Важлива причина, чому ми завжди намагаємося, щоб оновитися до останньої обробки сценарію до того, біжи!
Демонстрація системи
Для того, щоб написати це безліч коротких статей, які я створив дуже маленький сітки для демонстрації технологій і методик. Я прочитав багато статей, навчальні посібники і використовувати різні інструменти для налаштування і моніторингу, що відбувається. Ні в якому разі я вийшов і насиченим весь офіс з рухом і, ні в мене не було доступу до регулярних ПК співробітників, щоб побачити, як господар виконання яких вплинули.
Мій демонстрації системи була дуже скромною дійсно. Я використала свій регулярний робочий стіл налаштований як сервер управління завданнями. На цьому я був встановлений MySQL сервер встановлений налаштований як майстер у реплікації, PHP , А і SVN пов'язані через Apache (для доступу через робочий VM).
Потім я створив CentOS машину працівника на VirtualBox на 6-річний ноутбук Windows XP. Я установки запланованих завдань, як зазначено після копіювання VM на машину і відпустити.
Віртуальна машина була створена з PHP, підривної діяльності, та MySQL. Я перевірив гілку "робочий" від моєї роботи управління серверами і сховищем переконайтеся, що воно може бути оновлено з допомогою "SVN Update". Потім я установки MySQL в якості раба і перевірити, що дані реплікації з MySQL на сервері управління завданнями до працівника VM. Після всього цього я можу налаштувати скрипт Bash і хрон.
Мій сценарій обробки в основному пішли по лінії цього (дуже прості речі):
- Читайте в полі імені
- Підраховували кількість подібних імен в таблицю з джерела даних відбувся В.М.
- Підраховували кількість імен, як і вище, але розщеплення назвою за простору (наприклад, ім'я, середнього, прізвище)
- Повторні цей процес у 1000 разів
Кожне завдання зайняло приблизно 20 хвилин, щоб запустити. В один момент я відкрив кілька копій працівника ВМ на ноутбук Windows і дивився робочих місць перевіряється за кожним із працівників адреси IP. На цьому етапі я також підтвердив, що реплікації автоматично перезапущений.
Залишивши ноутбук на холостий хід в результаті працівник починає процес роботи з сервером управління завданнями. При поновленні використання ноутбука була затримка близько 30-60 секунд, це неабияка кількість часу і персоналу необхідно буде знати, що їхня машина може зупинитися на деякий час, повертаючись до машини. Нові машини не можуть мати паузу так довго. Благо обсяг обробки виконуються ці машини на холостому ходу періодів буде більше, що переважує співробітників чекаючи короткий період (скажімо 1 хвилина), прибувши на своїх машинах вранці (я часто чекати довше, що це для Windows Defender оновлення відбувається), якщо вони були поставлені до відома про це (корисний час, щоб захопити ранкова кава!).
У цілому, я впевнений, що я показав технологій, які можуть бути використані для створення такої системи. Я показав, що така система працює на (дуже) малих масштабах і з ще кілька експериментів може бути розширений використовувати ресурси машини офісу. Якщо я не дійдете до точки, для цього я був би дуже цікаво знати / бачити, коли хтось інший.
Висновки / Оцінка
Наступним очевидним кроком було б реально одержати реальний приклад і почати розгортання системи, такі як це в офісі і подивитися, що відбувається. Запитувана бізнесу до скоєння цього без сліду палаючий компанії довести, технології та ефективності, може бути трохи важко. Grid / Розподілені обчислення дуже популярна певних колах і має деякі великі програми (BIONC, SETI @ Home, Folding @ Home і т.д.). Я, однак, не знайти в менших масштабах і простої системи, як це в мої пошуки, які могли б бути розгорнута в офісі.
Я створив в основному вільної системи за допомогою основному з відкритим вихідним кодом і засоби, наявні практично в будь-якому офісі. Технології в основному були продемонстровані і показати, для виконання роботи і, як очікувалося. Сподіваюся, у мене є показати, що з не так багато роботи і дуже простий установки можна розгорнути обчислювальні офісі підвісній системі, що є потужним, дешеві, А і масштабованої все в той же час.
Як тільки система і працює майже немає кінця на суму налаштування та покращення, які ви можете зробити. Наприклад статистики / бенчмаркінгу можуть бути легко додані показані варто такій системі кожен день. Нові машини можуть бути додані швидко і легко, як і коли вони приходять з модернізації існуючого обладнання зміцнення вашої обчислювальної потужності.
Я сподіваюся, вам сподобалося читати цю серію статей і дав вам поживу для роздумів про запуск системи офісу сітки. Рішення, представлене тут, не обов'язково будуть працювати у всіх ситуаціях, але повинні бути адаптовані, щоб дозволити Вам, щоб отримати дані обробки робиться за допомогою власного рішення.
Будь ласка, не соромтеся, надсилайте мені будь-які коментарі, виправлення або поліпшення, і я зроблю все можливе, щоб ця стаття оновлена до матчу.


















































[...] Заключною частині цієї серії, влучно назвав Частина 5, ми будемо обговорювати розгортання цієї системи. Я буду резюмувати те, що було вивчено і [...]
Привіт там, Великий чувак статтю! Я втомився від використання RSS-каналів і ви використовуєте Twitter, щоб я міг слідувати за вами там? D.
PS: Ви вважається покласти відео в свій блог, щоб тримати читачів користуються більше я думаю, що це працює, Роланд Gorychka?.
Див Twitter на правій стороні кожної сторінки. Спасибі!