Натискання великих файлів на 500+ комп’ютерів


24

Я працюю з командою для управління 500-600 орендованих комп'ютерів Windows 7 для щорічної конференції. У нас є великий обсяг даних, який потрібно синхронізувати з цими комп'ютерами, до 1 TiB. Комп'ютери поділяються на кімнати і з'єднуються через некеровані гігабітні комутатори. Ми заздалегідь готуємо ці комп’ютери до встановлення та конфігурації Windows, а також будь-яких файлів, які у нас є, перш ніж надсилати базове зображення для реплікації в оренду. Щороку у нас на сайті підходять презентатори, що містять до гігів дані, які потрібно перенести в приміщення, в якому вони будуть представлені. Іноді у них є лише кілька файлів невеликого розміру, наприклад, PDF-слайд, але можна іноді бути набагато більшим> 5 Гб.

Наша нинішня стратегія для натискання цих файлів - це використання пакетних скриптів та RoboCopy. Для великих натискань ми фактично використовуємо клієнт BitTorrent для генерування файлу торента, а потім використовуємо batch-RoboCopy для натискання торрента в папку на віддалених машинах, за якою контролюється встановлений клієнт BT. Часто ці дані потрібно негайно висувати за допомогою невеликого часового вікна. У контрольній кімнаті у нас кілька машин, ідентичних машинам на підлозі, які ми використовуємо для цих натискань.

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

Ми б хотіли, щоб ми могли відповісти на ці останніх натискання "вибачте, ваша вина", але цього не станеться. Метод BT дозволив нам мати набагато швидший час відгуку, але весь пакетний процес може заплутатися, коли буде відсунуто кілька завдань. Ми використовуємо Enterprise Ghost для інших процесів, і він не працює добре в такому великому масштабі, плюс це дійсно досить дорого для одного разу на рік, як це.

EDIT: Існує важка вимога, щоб віддалені машини на підлозі працювали під управлінням Windows. Машини управління не вимагають жорсткої ОС. Мені дуже хотілося б триматися подалі від Multicast через ускладнення з маршрутизаторами вище. Чи кращим способом для цього є Multicast або BitTorrent? Чи є ще один протокол, який може працювати краще?


3
Як добре написане запитання, мені боляче сказати, що Питання щодо покупок є поза темою на будь-якому з сайтів Stack Exchange . Дивитись питання та відповіді важко, відвідайте покупки та поширені запитання для отримання більш детальної інформації.
Кріс С

I would really like to stay away from Multicast because of complications with upstream routers.Ви можете детальніше пояснити, чому?
Зоредаче

2
Чесно окрім відкопання багатоадресного рішення, ваш домашній процес BitTorrent та PSExec звучить як найкраще, що ви можете зробити. Можливо, ви захочете обернути його навколо PowerShell для кращого / автоматизації, але це найкраща пропозиція, яку я можу вам надати ...
voretaq7

@ Zoredache - Чесно кажучи, це частково тому, що я не маю достатнього досвіду роботи з багатоадресною передачею. Я мав справу з Ghost та multicast, і насправді не вийшов дуже хороших результатів. Устаткування на верхньому течії належить до об'єкта, з яким ми укладаємо контракти, і ми мали справу з досить складними ІТ-групами в деяких місцях. Я б не очікував, що хтось із їх співробітників навіть дізнається, що таке багатоадресна передача.
WMIF

@ voretaq7 - Я розглядав питання про те, щоб розмістити інтерфейс нашої структури, але мені було б важко зробити це в повному обсязі. Мені боляче було вивчати PS, здебільшого тому, що це дуже відрізняється поведінка від більш структурованих мов. Якби я поставив інтерфейс над ним, він, швидше за все, буде в C #.
WMIF

Відповіді:


12

Ви дійсно хочете Програми передачі файлів для багатоадресної передачі: UFTP , з гідною документацією та розширеннями у стилі proxt для NAT та маршрутизатора.


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

Це такий тип результатів, який я часто отримую при роботі з багатоадресною інформацією, і чому я заявив, що хотів би триматися подалі від нього. serverfault.com/questions/56487/…
WMIF

Я не знайомий із програмним чи апаратним забезпеченням цього питання, але таких проблем у своїх налаштуваннях не виникав. Багатоадресна передача працюватиме за швидкістю найповільнішого клієнта, тому, якщо у вас різні "прошарки" швидкості клієнта, ви, можливо, захочете запустити декілька сеансів багатоадресної передачі для кожного прошарку (хоча це не впливає на час остаточного завершення, просто дозволяє швидшим комп'ютерам закінчити швидше). Проміжні комутатори та маршрутизатори повинні підтримувати багатоадресну передачу, проксі-сервери можуть пом'якшити це до певної міри, але якщо ви хочете продуктивність, вам знадобиться надійна / здатна мережева інфраструктура.
Chris S

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

Управління безпосередньо не впливає на підтримку комутації для багатоадресної передачі. Усі Ethernet комутатори 1 Гб необхідні для підтримки Multicast (хоча старі та особливо дешеві реалізують його як трансляцію, що робить роботу); Старі комутатори зазвичай робили це вже. Відсутність підтримки маршрутизатора, тому вам знадобиться налаштування проксі-серверів (по одному для кожного сегмента мережі, виділеної багатоадресною передачею). Очевидно, що використання маршрутизаторів, які підтримують багатоадресну передачу, буде найпростішим, але налаштування проксі-серверів не страшна (якщо їх не існує велика кількість).
Кріс С

5

Можливо, ви захочете розібратися у вбивстві

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

.

Вбивство було / розроблене людьми на Twitter , і вони використовують його щодня для поширення файлів.


4

Можливо, з’явилося нове рішення: BitTorrent Sync

Пізніше редагувати: Насправді в ці дні я, мабуть, порекомендував би помічник git- annex або синхронізацію, але є багато альтернатив


Я не просто ще один, але дуже гарний у цьому випадку використання, я думаю!
Аргеман

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

Я щойно зробив масштабний тест з BT Sync, і виявив, що він використовує 239.192.0.0 для трансляції трансляції багатоадресної передачі. Я не мав контролю над мережевою інфраструктурою, тому не зміг повністю проаналізувати, але це спричинило помітний сплеск вихідного інтернет-трафіку. У поєднанні з деякими загальними проблемами синхронізації файлів, що невідповідність, і це викликало достатню проблему, що мені довелося її закрити. Невдало, бо вона прекрасно працювала в менших масштабах менше ніж 50 комп’ютерів.
WMIF

1

Я можу мати для вас ідею, яка допомогла б. Пробачте, як я не повністю розумію, чому це має бути настільки складним, але якщо вам потрібно, щоб він був простим для кінцевого користувача, але все-таки зробив дані швидкими та легкими для отримання доступу до локальної мережі, можливо, ви можете скористатись Пристрій NAS. У мене є Synology DS1812 + він може RSYNC з іншим накопичувачем Synology або різними пристроями, що підтримують RSYNC, у нього є дещо застосований торрент-додаток під назвою "Станція завантаження", я знаю, що ви можете завантажувати торрент-файли з відсіку накопичувача, і я вірю, що ви також можете створити або опублікувати торрент-файл із цією програмою, щоб дозволити іншим завантажувати потрібний їм файл. У ньому є додатки для мобільних пристроїв як Apple, так і Android. Він також може робити FTP-передачі. Цей відсік накопичувача може надати вам можливість швидко надсилати файл до нього, а потім швидко та легко розповсюджувати його серед локальної мережі. Я пропоную розмістити дані всередині локальної мережі лише для того, щоб швидше отримати доступ для користувачів локальної мережі, але краса цих пристроїв NAS полягає в тому, що ви можете розміщувати їх у будь-якому місці в Інтернеті, якщо вони мають швидке підключення до Інтернету. Можливо, одне із найвищих пристроїв Synology NAS було б добре підходить для ваших потреб.

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

http://www.synology.com/products/dsm_livedemo.php?lang=us

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

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


1
Я не впевнений, наскільки це краще, ніж те, що він зараз робить. WMIF не бажає чекати, коли користувачі почнуть отримувати дані самі; Очікується, що його / її команда буде попередньо встановлювати файли даних на машини, коли вони стануть доступними для них.
mfinni

@mfinni правильний. Завдання полягає в тому, щоб переконатися, що всі файли, які нам дають, завантажуються на комп'ютери конференц-залів, перш ніж присутні приходять в кімнату.
WMIF
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.