Vnstat

vnstat — очень простой способ считать трафик на сервере. Утилиту удобно использовать в случаях, когда провайдер, по каким-то причинам, статистику по трафику не предоставляет, а лимиты при этом, устанавливает (Aruba, например).

Ставим vnstat из репозитория EPEL:

# yum install epel-release
# yum install vnstat

При необходимости, редактируем конфигурационный файл /etc/vnstat.conf, например, параметром SaveInterval задаём интервал, с которым данные будут записываться в базу, по умолчанию там установлено значение 5 минут. Параметром MonthRotate указываем день в месяце, когда статистика будет обнуляться, параметром UnitMode задаём единицы измерения трафика (0 — KiB/MiB/GiB/TiB, 1 — KB/MB/GB/TB). Здесь же можно указать пользователя, от которого будет работать сервис, пути для логов, формат даты и времени, директорию для баз и многое другое.

Запускаем подсчёт с vnstat.

Отредактированный конфиг сохраняем, сервис перезапускаем:

# systemctl restart vnstat

Создаём базу данных для нужного нам интерфейса:

# vnstat -u -i eth0

И продолжаем пользоваться сервером\интернетом в обычном режиме. Спустя указанный в интервале SaveInterval промежуток времени, проверяем что статистика ведётся:

# vnstat

Запуск команды с ключом —help покажет дополнительные возможности вывода статистики, например, ключи -h, -d, -w, -m позволяют вывести часовую, дневную, еженедельную и ежемесячную статистику. Для получения статистики в реальном времени, запускаем программу с -l.

Администратор так же имеет возможность вывести статистику по трафику в виде изображения, делается это с помощью vnstati:

# vnstati -vs -o ~/vnstat01.png

vnstat

Как видим, утилита простая, в использовании очень удобная, свою задачу решает отлично, так что если вопрос подсчёта трафика и ведения его статистики на сервере стоит — к vnstat имеет смысл присмотреться.

@SysadminNotes | https://sysadmin.pm

2 thoughts on “Vnstat

  1. Не хватает только сведений о том, как следить за несколькими интерфейсами.

    1. Достаточно просто создать для каждого отслеживаемого интерфейса свою базу, и vnstat будет собирать данные о них.

      Ну и опять же, не стоит забывать что алиасы и виртуальные интерфейсы в мониторинг добавить нельзя, просто потому что ядро для них статистику не предоставляет:

      > Virtual and aliased interfaces cannot be monitored because the kernel doesn’t provide traffic information for that type of interfaces. Such interfaces are usually named eth0:0, eth0:1, eth0:2 etc. where eth0 is the actual interface being aliased.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *