rsync ionice призначення


14

Щоб уникнути rsync для голодування системи та мережі, ми використовуємо ioniceпри запуску rsync та встановлення --bwlimitпараметра. Наприклад:

ionice -c2 -n7 rsync -aH --bwlimit=30000 /foo root@dest.com:/

Це дійсно допомагає гарантувати, що вихідний сервер залишається чутливим. Однак сервер призначення стає дуже повільним через 100% диска io (як видно зatop утиліти).

Чи можна якось використовувати і ioniceна сервері призначення? Можливо, за допомогою параметра rsync -e? Я вважаю за краще не запускати демона rsync, якщо це можливо.

Відповіді:


11

Зміна команди rsync або загортання її в сценарій оболонки для включення команди / параметрів ionice - це варіант. Також ви можете скористатися --rsync-pathпараметром, який повідомляє rsync, яку команду виконувати на віддаленому сервері. Щось подібне --rsync-path="ionice -c2 -n7 rsync"забезпечить, що ionice працює на пункт призначення.

Додам, що ionice не завжди ефективний, залежно від конфігурації сервера. Він працює лише з елеватором CFQ I / O за замовчуванням . Якщо ви здійснили будь-яку настройку системи зберігання, такий підхід може не застосовуватися.

Чи можете ви навести приклад навантаження чи допомогти пояснити, як запустили системи для ресурсів під час копіювання? Я би схильний поглибитися глибше і зрозуміти, чому rsync, особливо обмежений низькою швидкістю, яку ви вказали у своєму прикладі, спричинив би стільки проблем.

Що ти копіюєш? Що таке апаратне забезпечення / налаштування ОС?


У нас є кілька хостів OpenVZ. Це 16-ядерні машини Xeon під управлінням CentOS. Щовечора ми копіюємо всі контейнери OpenVZ на інші хости. Оскільки наші IP-адреси можуть бути маршрутизовані до всіх хостів, це дозволяє нам швидко активувати резервну копію VPS у випадку відмови хоста.
Джейсон Сміт

Наскільки високе отримує навантаження? Це ці місцеві копії? Чи були внесені якісь зміни в ліфти вводу / виводу накопичувача?
ewwhite

З того, що я бачив, обмеження пропускної здатності мережі не обмежує іо диска (тисячі каталогів потрібно сканувати, навіть якщо жодні файли не змінені). Якщо --bwlimit також обмежує введення / виведення диска?
Джейсон Сміт

За atopдиском io постійно лопається до 100%. Я не впевнений, що ви маєте на увазі під "ліфтами для зберігання вводу / виводу", тому я, ймовірно, запускаю за замовчуванням?
Джейсон Сміт

2

Ваша команда rsync також запускає rsyncкоманду на віддаленому пункті призначення.

Спробуйте поставити наступне для вашого кореневого користувача сервера призначення .bashrc, іншими словами до /root/.bashrc

alias rsync="ionice -c2 -n7 rsync"

A ~/.bashrcпризначений лише для інтерактивних сесій, і я не очікую, що встановлення псевдоніма там змінить спосіб виконання rsync.
HBruijn
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.