Логування та моніторинг витрати трафіку за допомогою 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

Конфігураційний файл утиліти знаходиться за шляхом /etc/vnstat.conf Важливим параметром у ньому є інтерфейс, на якому планується збір статистики трафіку. Це актуально для систем, де кілька мережевих інтерфейсів. У пункті з прикладами базових функцій ми розглянемо, як можна задавати параметр, що вказує інтерфейс.

Якщо репозиторій epel-release більше не потрібен на сервері, його можна видалити командою

sudo yum -y remove  epel-release



Встановлення з вихідного коду

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. Download the source code archive

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


Виведення графіка зі споживанням трафіку за останні 24 години

vnstat -i ens3 -hg