Надзвичайно погана швидкість масового копіювання файлів на AFP-акціях в Йосеміті


3

Деякий апаратний фон: я керую лабораторією 3D-графіки приблизно з десятка клієнтів iMac, що працюють 10.10.5 та міні-сервера 10.10.2 (Server.app v4.0.3 / build 14S350). Міні знаходиться в корпусі Sonnet xMac, який підключає його через Thunderbolt до RAID-контролера Areca ARC-1883X SAS та картки Ethernet SmallTree P2E10G-1-T 10Gb. Areca управляє двома 40-TB SAS RAID, а карта SmallTree підключає Mini через Cat6a до комутатора NetGear ProSafe XS708E 10GbE. Усі iMacs підключені через 1GbE Cat6 до комутатора HP 1810-48G, який, в свою чергу, з'єднаний через магістраль 6Gb до комутатора NetGear.

Мої виконавці зіткнулися з проблемою з об'ємними копіями файлів між каталогами AFP, що надходять на Mini, над якими вони працюють. Вони часто рендерують послідовності сотень чи тисяч зображень, і після того, як ці зображення будуть виведені у свою вихідну папку, їх потім потрібно скопіювати у другий каталог, з яким працюватимуть наші композитори. Операція копіювання абсолютно CRAWLS. Один приклад: за півгодини тому: 861 .exr-файли, загальною вагою близько 350 Мб, зайняли близько 3 годин, перш ніж ми вбили його на ~ 75% і замість цього зробили це з робочого столу сервера через обмін екраном приблизно за 30 секунд (Але наші художники так це десятки разів на день, і, звичайно, не можна отримати доступ до спільного доступу до екрана з сервером, тому це не є рішенням). Вони не завжди так висять, але ми натрапляємо на такий випадок хоча б раз на день, і всі масові копії йдуть набагато повільніше, ніж слід. Це трапляється лише з великими групами файлів: ми можемо копіювати один файл 300 Мб між каталогами майже миттєво.

Я зробив кілька тестів, і це, здається, є проблемою клієнта Yosemite більше ніж усе. Я запускаю Mountain Lion на своєму власному ноутбуці та робив кілька тестів у 10.8 та 10.10 на wifi та провідній Ethernet, а також у локальних та мережевих профілях, оскільки наші артисти входять у мережеві облікові записи. Деякі обмежені результати для 300 .exr файлів на загальну суму 133 Мб:

10.8 / Wifi / Місцевий профіль: 300 копій елементів копіюється за 53 сек

10.8 / Провідний / Місцевий профіль: 300 копій елементів за 47 сек

10.10 / Провідний / Місцевий профіль: 300 копій предметів за 223 сек

10.10 / Провідний / мережевий профіль: 300 копій елементів за 263 сек

Мережеві облікові записи дещо повільніші, але, схоже, велика різка різниця - 10,8 клієнта проти 10,10 клієнта. Знову ж таки, проблема полягає в довгих списках файлів, а не в одних монолітних файлах. Наші швидкості випромінювання Ethernet на сервері є фантастичними: і в тестуванні швидкості Blackmagic 10.8 і 10.10 я отримую 110 Мб / сек + читання і запис на сервер, і лише трохи повільніше на Wireless N wifi. Це стає лише проблемою, коли нам потрібно копіювати довгі списки файлів, що нам потрібно робити багато разів на день.

Будь-яка допомога розібратися, що відбувається тут не було б дуже вдячно! Це робить нас абсолютно божевільними на даний момент і вбиває продуктивність. Раді публікувати будь-які запитувані журнали або намагатися будь-які запропоновані налаштування системи. Дякую!


Це приголомшливий рівень деталізації. Я побачу, чи є у мене якісь ідеї, але мені цікаво, чи запит в AppleCare допоможе вам отримати інженерну допомогу в отриманні журналів. Якщо це можна відтворити через перезавантаження, вони будуть дуже зацікавлені в регресії швидкості, як ви повідомляєте. Можливо, ви зможете з’ясувати, що відбувається з TCPDUMP між чуйною копією та повільною.
bmike

Будь ласка, додайте версію Server.app на міні (сервер) 10.10.2!
кланомат

Server.app v4.0.3 / build 14S350 - додано до фонової інформації вгорі.
infinitesunrise

Відповіді:


1

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

  1. Налаштуйте клієнт тестового випадку, коли додатки сторонніх програм не працюють під час входу. Перезавантажте цього клієнта та змонтуйте загальну мережу. Запустіть, sudo sysdiagnose Finderперш ніж розпочати копію.
  2. Запустіть tcp слід на мережевому адаптері, ви скопіюєте файл. Якщо ви не підключаєтеся, en0використовуйте Інформацію про систему, щоб побачити ім'я BSD мережевого з'єднання.
  3. Після того, як трасування розпочнеться, запустіть копію відповідного файлу.
  4. Через 3 хвилини (або менше, якщо передача буде здійснена раніше), натисніть клавішу Control + C, щоб припинити зйомку
  5. Запустіть секунду sudo sysdiagnose Finderпісля захоплення мережі

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

sudo sysdiagnose
sudo /Applications/Server.app/Contents/ServerRoot/usr/sbin/serverdiagnose

Слід:

sudo tcpdump -i en0 -s 0 -B 524288 -w ~/Desktop/AFPslow.pcap

введіть тут опис зображення


Тепер я думаю, що ми насправді до чогось. Я не хочу розміщувати весь дамп, тому що це 100 Мб (я можу розмістити подальші конкрети, якщо вам це потрібно), але про HALF пакетів не виходить їх контрольна сума! Я точно не знаю, чи нормально це, але я не можу собі це уявити. Вміст цих невдалих пакетів контрольної суми дещо відрізняється, але багато з них містять "[ім'я файлу одного з файлів, що копіюються] # com.apple.metadata: _kMDItemUserTags" в корисному навантаженні ... Запропонувавши, можливо, погані метадані?
infinitesunrise

Також ви можете скоротити вікно. Мої параметри дампа, ймовірно, містять інформацію про файл та, можливо, ключі для облікових даних. Але фільтруючи тип повідомлення масово, ви побачите помилку. Я спробую це також відтворити @infinitesunrise.
bmike
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.