В приложении VOIP у меня до 3000 клиентов rsync
аудиофайлы с этого сервера linux ежедневно, сервер размещается в центре обработки данных (вход / выход 10 Мбит / с), сервер работает как SIP-сервер VOIP, работающий под управлением FreeSWITCH (должна быть обеспечена низкая задержка пинга).
Поэтому я хотел бы иметь контроль над rsync на стороне сервера, который контролирует:
Обычно я бы использовал ssh + rsync + pem_keys с некоторыми дополнительными параметрами, но вышеперечисленные требования не выполняются с помощью простых командных строк. Может ли кто-нибудь указать мне направление. или показать какие-нибудь скрипты / инструменты? Я бы также, вероятно, интегрировал их и выпустил на github. Спасибо!
Если бы я был в вашей ситуации, я бы продолжал использовать стандартные инструменты просто потому, что вы всегда можете поддерживать их в актуальном состоянии и получать все новейшие исправления / функции без необходимости исправлять их своим собственным кодом.
В результате я бы добился того, чего вы хотели, с помощью этого:
tc
для формирования трафика - OpenVZ есть довольно хорошая статья об этом.iptables
- Cyberciti на помощь для этого. Ты бы reject
новые соединения превышают порог, поэтому вам нужно будет обернуть rsync
на стороне клиента, чтобы гарантировать, что он повторяет попытку в случае быстрой неудачи.