Назад | Перейти на главную страницу

ограничить пропускную способность и использование пространства каждого виртуального хоста?

Я начинаю небольшую веб-хостинговую компанию, чтобы научить меня системному администрированию, и одна из проблем, с которыми я столкнулся, заключается в том, как мне ограничить пропускную способность и дисковое пространство каждого виртуального хоста (Debain / nginx)? Или я ошибаюсь и не должен использовать виртуальные хосты?

я использовал mod_bandwidth для ограничения пропускной способности. Его можно использовать для каждого каталога, файла и т. Д., Поэтому вам просто нужно настроить его для VirtualHost.

Для дискового пространства просто используйте квоту. Создайте учетную запись unix для каждого клиента и назначьте им квоту. Это должно быть достаточно хорошо задокументировано в сети.

Некоторый быстрый поиск в Google показывает мне, что вы можете использовать прокси-сервер Squid для установки очередей для данных, называемых «пулами данных». Очевидно, вы также можете использовать IPROUTE2 и TC (не могу опубликовать ссылку, я недостаточно крут)

Из http://www.faqs.org/docs/Linux-HOWTO/Bandwidth-Limiting-HOWTO.html#AEN65

Помимо обычного кеширования, в Squid есть специальная функция, называемая пулами задержки. Благодаря пулам задержки можно разумным образом ограничивать интернет-трафик, в зависимости от так называемых «волшебных слов», существующих в любом заданном URL. Например, волшебным словом может быть «.mp3», «.exe» или «.avi» и т. Д. Любая отдельная часть URL-адреса (например, .avi) может быть определена как волшебное слово.

Также см. Статью на serverwatch.com под названием Reining-in-Bandwidth-With-Squid-Proxying.

Squid - это, вероятно, самый простой способ, и с его помощью вы также можете делать много других интересных вещей.

Это не просто. Я подозреваю, что невозможно будет просто использовать vhosts для наложения ограничений, если вы не поставите скриптовый прокси перед веб-сервером (и это решает только проблему пропускной способности, если вы не ограничиваете загрузку файлов в скриптовый веб-интерфейс).

Но, безусловно, с точки зрения бизнеса имеет больше смысла продавать пакет, который включает пропускную способность X и использование диска Y, а затем выставлять счет заказчику за излишки (которые вы можете легко измерить по занимаемому пространству диска и журналам доступа).

С.

Чтобы ограничить общее использование полосы пропускания, обратитесь к ответу KikoV, я обсуждаю ограничение дискового пространства.

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

  1. Вы можете запланировать сценарий, который вычисляет используемое дисковое пространство, например, каждый день, а количество банов / предупреждений превышено для клиентов.
  2. Вы можете создать системного пользователя для каждого из ваших клиентов и использовать диспетчер квот файловой системы. Читать Эта статья Чтобы получить больше информации.