Content
- Установка VnStat из репозитория
- Установка из исходного кода
- Примеры использование VnStat
- Проверка расхода трафика в списке по часам
- Проверка расхода трафика в списке по дням
- Проверка расхода трафика в списке по месяцам
- Проверка расхода трафика в списке по годам
- Проверка расхода трафика в списке в режиме реального времени
- Проверка расхода трафика в списке в заданный промежуток времени в секундах
- Выведение графика c потреблением трафика за последние 24 часа
Логирование и мониторинг расхода трафика с помощью VnStat
Установка VnStat из репозитория
Установить пакет VnStat можно из репозиториев, а также из исходного кода. Рассмотрим оба варианта и начнем с наиболее простого — из репозиториев. Существует несколько отличий установки в зависимости от семейства дистрибутива.
Debian based distros
В дистрибутивах основанных на Debian Linux установка выполняется всего с помощью одной команды:
sudo apt install vnstat
Утилита быстро устанавливается, сервис запускается и добавляется в автозапуск. Проверим статус:
sudo systemctl status vnstat
RHEL based distros
1. Включите репозиторий Epel
sudo yum -y install epel-release
Следом обновляем информацию о доступном ПО в репозитории
sudo yum -y update
2. Установите VnStat
sudo yum install vnstat
3. Для начала использования утилиты нужно запустить ее как сервис. Во время первого запуска будет создана БД, в которую будут записываться логи расходования трафика:
sudo systemctl enable vnstat | sudo systemctl start vnstat
4. Проверим статус после запуска сервиса
sudo systemctl status vnstat
Утилита готова к использованию. Однако при первом запуске возникнет диалоговое сообщение, о том, что еще недостаточно данных для отображения. Дожидаемся сбора статистики. Логирование расхода трафика начнется с момента установки утилиты.
Если репозиторий epel-release больше н енужен на сервере — его можно удалить командой
sudo yum -y remove epel-release
Конфигурационный файл утилиты находится по пути /etc/vnstat.conf Важным параметром в нем является интерфейс, на котором планируется сбор статистики расходования трафика. Это актуально для систем, в которых несколько сетевых интерфейсов. В пункте с примерами базовых функций мы рассмотрим как можно задавать параметр, указывающий интерфейс.
Установка из исходного кода
1. Устанавливаем дополнительное ПО необходимое для сборки пакета
Для RHEL и CentOS
sudo yum group install "Development Tools"
Подтверждаем, введя "y"
sudo yum install gd gd-devel sqlite-devel
Подтверждаем, введя "y"
Для Ubuntu и Debian
sudo apt install build-essential libsqlite3-dev
Подтверждаем, введя "y"
2. Загрузите архив с исходным кодом
wget https://humdi.net/vnstat/vnstat-latest.tar.gz
3. Распакуйте архив
tar -xvf vnstat-latest.tar.gz
4. Проверьте какая версия пакета загрузилась и как называется распакованная папка
ls
5. Перейдите в каталог vnstat-x.xx (где х.хх - версия утилиты и название распакованной вами папки)
cd vnstat-2.11
6. Запустите сборку пакета и дождитесь завершения установки
./configure --prefix=/usr --sysconfdir=/etc && make && make install
По завершении установки увидим сообщение
7. Нужно скопировать шаблон и запустить демон vnstat:
sudo cp -v examples/systemd/vnstat.service /etc/systemd/system/
sudo systemctl enable vnstat | sudo systemctl start vnstat
8. Проверьте статус, чтобы убедиться в работопособности сервиса
sudo systemctl status vnstat
Примеры использование VnStat
Проверьте список доступных интерфейсов, чтобы выбрать тот, на котором необходимо проверить статистику расхода трафика. Воспользуйтесь простой командой просмотра настроенных ИП адресов
ip a
Видим, что у нас внешний ИП адрес назначен на интерфейсе ens3. В примерах будем использовать данный интерфейс.
Проверка расхода трафика в списке по часам
(опция --limit позволяет ограничить количество выводимых часов. В примере выводится информация за последние 12 часов):
vnstat -i ens3 -h --limit 12
Проверка расхода трафика в списке по дням
(опция --limit позволит ограничить количество выводимых дней. В примере выведем 2 последних дня):
vnstat -i ens3 -d --limit 2
Чтобы выделить дни с наибольшим потреблением трафика можно использовать ключ -t
Проверка расхода трафика в списке по месяцам
(опция --limit позволит ограничить количество выводимых месяцев):
vnstat -i ens3 -m
Проверка расхода трафика в списке по годам
(опция --limit позволит ограничить количество выводимых годов)
vnstat -i ens3 -y
Проверка расхода трафика в списке в режиме реального времени
vnstat -i ens3 -l
После прерывания процесса получим таблицу значения за время, в течение которого проводился замер
Проверка расхода трафика в списке в заданный промежуток времени в секундах
vnstat -i ens3 -tr 20
Выведение графика c потреблением трафика за последние 24 часа
vnstat -i ens3 -hg