LINUX.ORG.RU
решено ФорумAdmin

ограничить скорость по ssh


0

1

Хочу сразу закидывать бекапы на другой сервер. Отлично работает.

nice -n 19 tar --use-compress-program=pigz -cpf - /vz/private/103/root.hdd/root.hdd |  ssh user@localhost dd of=/home/test.tar.gz

Но как можно поставить лимит на скорость(кроме шейпера)?


Добавь в пайп pv. Он умеет ограничивать скорость, заодно может показывать скорость и количество переданных данных.

Black_Roland ★★★★
()
Ответ на: комментарий от Black_Roland

Пожалуйста, расскажите как это сделать?
Еще вариант, можно сделать tc лимит на IP контейнера -> куда буду заливать бекап.

poiuty
() автор топика

rsync over ssh будет самым адекватным решением.

cx ★★
()
Ответ на: комментарий от poiuty
nice -n 19 tar --use-compress-program=pigz -cpf - /vz/private/103/root.hdd/root.hdd | pv -L <лимит в байтах> | ssh user@localhost dd of=/home/test.tar.gz

если не нужен вывод статистики, то добавь параметр -q

nice -n 19 tar --use-compress-program=pigz -cpf - /vz/private/103/root.hdd/root.hdd | pv -q -L 131072 | ssh user@localhost dd of=/home/test.tar.gz
Из коробки pv обычно не ставят, но можно доустановить из репозиториев. Оно так и называется.

Black_Roland ★★★★
()
Последнее исправление: Black_Roland (всего исправлений: 1)

плюсую rsync, она умеет скорость ограничивать:

--bwlimit=KBPS This option allows you to specify a maximum transfer rate in kilobytes per second. This option is most effective when using rsync with large files (several megabytes and up). Due to the nature of rsync transfers, blocks of data are sent, then if rsync determines the transfer was too fast, it will wait before sending the next data block. The result is an average transfer rate equaling the specified limit. A value of zero specifies no limit.

Кроме того, rsync передаёт только новые куски файлов, что часто тоже очень полезно.

emulek
()
Ответ на: комментарий от Black_Roland

Я промазал :) На другой псто отвечал. Сорь.

one117 ★★★★★
()
Ответ на: комментарий от emulek

В моем случае - есть 2xSSD RAID1, на 120гб. И нужно было сделать бекап сразу на другой хост (место мало же).
Так же там передать root.hdd -> FS виртуалки + DiskDescriptor.xml

А чтобы не забить весь канал - нужно было выставить лимит на скорость отправки.

poiuty
() автор топика
Ответ на: комментарий от poiuty

Не вижу проблем не использовать именно rsync.

X10Dead ★★★★★
()

Не очень понятно, почему используется именно пайп.

Если использовать вместо такоего способа копирования scp, то у него ключик есть для ограничения скорости:

scp -l 200 $source $destination
Измеряется лимит, насколько я помню, в килобитах, а не в килобайтах - нюанс.

pianolender ★★★
()
Ответ на: комментарий от emulek

Просто это куда быстрее, чем настраивать шейпер :) Да и работает в обе стороны, а то в шейперах, я слышал есть какая-то принципиальная разница в шейпинге на вход и на выход

pianolender ★★★
()
Ответ на: комментарий от poiuty

Сначала тар на локальный диск, потом scp файла на удаленный сервер. Места нужно больше, зато надежность выше: если отвалится сеть в варианте с таром, который гонит в сеть, то тарить придется заново.

pianolender ★★★
()
Последнее исправление: pianolender (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.