В общем-то проблема давняя, просто сейчас в связи с очередным расширением канала провайдером решил ей заняться.
Итак, как обычно: Debian Squeeze x86_64, OpenVZ, контейнер с сидбоксом на базе rtorrent из репозитория Squeeze. Диск с контентом смонтирован на нулевой ноде и с'bind'ен в каталог в контейнере. Все работает (ну, почти работает - эта проблема никуда не делась и лаги учащаются с ростом количества торрентов - сейчас примерно 1 фриз в полчаса на минуту), но что интересно: iotop на нулевой ноде (в контейнере он не работает) показывает где-то на порядок большую загрузку диска для процесса, чем реально раздается торрент-клиентом, т.е.,
Total DISK READ: 35.38 M/s | Total DISK WRITE: 0.00 B/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
6099 be/6 rain 35.38 M/s 0.00 B/s 0.00 % 32.93 % rtorrent
при этом в rtorrent
[Throttle 3300/950 KB] [Rate 3162,7/ 14,7 KB]
Когда-то, когда OpenVZ у меня еще не было и все сервисы крутились на одном хосте - показания iotop примерно соответствовали скорости раздачи в rtorrent.
Собственно, вопрос - что с этим можно сделать? Отдавать 50 Мбайт/сек диска при реальной необходимости в 5 как-то не хочется. Ну и нагрузка выше, износ, все такое.