بسیاری از مدیران سرور ها نیازمند ابزاری برای مانیتورینگ کل پهنای باند مصرفی دانلود و یا آپلود شده بر روی سرور می باشند. ممکن است مدیر سرور برای مدیریت بهتر سرور از یک کنترل پنل مانند دایرکت ادمین ( Directadmin ) ، سی پنل ( cPanel ) ، پلسک ( Plesk ) ، وب سایت پنل ( WebSitePanel ) و یا کلوکسو ( Kloxo ) بسته به نوع سیستم عامل سرور استفاده نماید، اما هیچکدام از این پنل ها کل ترافیک مصرف شده بر روی سرور را نمایش نمی دهند، این پنل تنها با تقریب ممکن است ترافیک مصرفی یک اکانت را نمایش دهند. اما ملاک هزینه های پهنای باند ، کل ترافیک انتقال یافته بر روی کارت شبکه است که ممکن است صرف آپدیت های سیستم عامل و یا حتی ویروس ها و یا حملات بروت فورس ( Brute Force ) شود و مدیر سرور مجبور به پرداخت هزینه برای ترافیک ناخواسته خود می شود. پیش از این نیز در مقالات دیگری نرم افزار هایی برای مانیتورینگ ترافیک سرور معرفی کرده بودیم، در این مقاله نیز ابزار مفید دیگری به نام vnSTAT قابل نصب بر روی سیستم عامل های لینوکسی را معرفی خواهیم نمود که می تواند در تعیین دقیق تر ترافیک مصرفی سرور مفید باشد.
از مزایای این نرم افزار می توان به سبک بودن آن اشاره نمود که بار خاصی را بر روی سرور اعمال نمی کند. این نرم افزار مدعی است که کل ترافیک انتقال داده شده بر روی شبکه سرویس اعم از ترافیک وب سرور و یا حتی حجم پکت های ICMP را مورد محاسبه قرار می دهد و ترافیک مصرفی بصورت ساعتی ؛ روزانه و ماهانه قابل مشاهده خواهد بود.
نصب نرم افزار vnSTAT بر روی سیستم عامل لینوکس :
لطفا ابتدا از طریق ssh به سرور خود متصل شوید. سپس دستور زیر را برای نصب vnStat بر روی سیستم عامل CentOS وارد نمائید:
yum install vnstat
حال می بایست به کمک دستورات زیر تنظیم نمائید تا دستور vnstat به کمک کرون هر چند دقیقه یکبار اجرا شود:
vim /etc/cron.d/vnstat
*/5 * * * * vnstat /usr/sbin/vnstat.cron
حال می بایست مشخص کنید که vnstat کدام اینترفیس ( interface ) را مانیتور نماید:
vnstat -i eth0
ممکن است با خطای زیر روبرو شوید:
Error :
Unable to rea
d database “/var/lib/vnstat/eth0″.
eth0: Not enough data available yet.
اما مشکلی نخواهد بود، این خطا تنها به این دلیل که اولین بار است که آن را اجرا می کنید رخ می دهد. نصب اولیه نرم افزار به همین سادگی انجام می پذیرد ، برای مشاهده دستورات مختلف آن و خروجی های مربوطه ، توجه شما را به موارد زیر جلب می دارد:
$ vnstat --help vnStat 1.12 by Teemu Toivola -q, --query query database -h, --hours show hours -d, --days show days -m, --months show months -w, --weeks show weeks -t, --top10 show top10 -s, --short use short output -u, --update update database -i, --iface select interface (default: eth0) -?, --help short help -v, --version show version -tr, --traffic calculate traffic -ru, --rateunit swap configured rate unit -l, --live show transfer rate in real time See also "--longhelp" for complete options list and "man vnstat".
|
$ vnstat Database updated: Sat Aug 1 22:50:01 2009 eth1 since 11/20/08 rx: 3.32 TiB tx: 2.81 TiB total: 6.13 TiB monthly rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- Jul '09 609.40 GiB | 282.21 GiB | 891.61 GiB | 2.79 Mbit/s Aug '09 16.95 GiB | 10.46 GiB | 27.40 GiB | 2.80 Mbit/s ------------------------+-------------+-------------+--------------- estimated 552.14 GiB | 340.70 GiB | 892.83 GiB | daily rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- yesterday 19.19 GiB | 8.63 GiB | 27.82 GiB | 2.70 Mbit/s today 16.95 GiB | 10.46 GiB | 27.40 GiB | 2.80 Mbit/s ------------------------+-------------+-------------+--------------- estimated 17.81 GiB | 10.99 GiB | 28.80 GiB | |
(with 2 interfaces) $ vnstat rx / tx / total / estimated Internet (eth1): Jul '09 31.90 GiB / 28.05 GiB / 59.95 GiB Aug '09 281.04 MiB / 99.45 MiB / 380.49 MiB / 12.05 GiB yesterday 1.23 GiB / 473.23 MiB / 1.69 GiB today 281.04 MiB / 99.45 MiB / 380.49 MiB / 397 MiB Local (eth0): Jul '09 25.13 GiB / 116.94 GiB / 142.07 GiB Aug '09 234.75 MiB / 5.03 GiB / 5.26 GiB / 170.76 GiB yesterday 520.55 MiB / 2.21 GiB / 2.72 GiB today 234.75 MiB / 5.03 GiB / 5.26 GiB / 5.51 GiB |
$ vnstat -h eth1 21:25 ^ r | r | r r | r r r | t r r r t | rt r r r r t t | rt r r r r t t | rt r r t r r r t t | rt r rt t r r r rt rt t rt rt t | rt rt rt rt rt r rt r r r r r rt rt rt rt rt rt rt t -+---------------------------------------------------------------------------> | 22 23 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 h rx (KiB) tx (KiB) h rx (KiB) tx (KiB) h rx (KiB) tx (KiB) 22 250,801 205,825 06 100,529 49,054 14 205,356 157,877 23 705,144 885,844 07 52,806 44,130 15 258,228 226,265 00 928,792 224,789 08 52,298 45,230 16 1,028,043 343,843 01 1,271,180 292,260 09 70,396 61,719 17 755,804 293,309 02 212,296 186,481 10 155,502 72,451 18 235,691 284,886 03 165,931 91,943 11 266,673 92,497 19 275,554 658,386 04 150,997 437,071 12 392,244 122,185 20 307,819 850,813 05 180,170 56,391 13 133,829 120,555 21 117,474 292,787 |
$ vnstat -d eth1 / daily day rx | tx | total | avg. rate ------------------------+-------------+-------------+--------------- 07/03/09 10.90 GiB | 6.39 GiB | 17.29 GiB | 1.68 Mbit/s 07/04/09 21.21 GiB | 5.65 GiB | 26.87 GiB | 2.61 Mbit/s 07/05/09 10.58 GiB | 6.67 GiB | 17.25 GiB | 1.67 Mbit/s 07/06/09 49.90 GiB | 9.69 GiB | 59.59 GiB | 5.79 Mbit/s 07/07/09 28.09 GiB | 7.58 GiB | 35.68 GiB | 3.46 Mbit/s 07/08/09 17.60 GiB | 6.83 GiB | 24.43 GiB | 2.37 Mbit/s 07/09/09 20.80 GiB | 15.64 GiB | 36.44 GiB | 3.54 Mbit/s 07/10/09 16.10 GiB | 11.14 GiB | 27.24 GiB | 2.64 Mbit/s 07/11/09 9.79 GiB | 4.96 GiB | 14.76 GiB | 1.43 Mbit/s 07/12/09 9.36 GiB | 9.60 GiB | 18.97 GiB | 1.84 Mbit/s 07/13/09 11.26 GiB | 8.16 GiB | 19.42 GiB | 1.89 Mbit/s 07/14/09 32.65 GiB | 9.56 GiB | 42.21 GiB | 4.10 Mbit/s 07/15/09 35.32 GiB | 15.55 GiB | 50.88 GiB | 4.94 Mbit/s 07/16/09 20.71 GiB | 15.24 GiB | 35.95 GiB | 3.49 Mbit/s 07/17/09 15.10 GiB | 15.34 GiB | 30.44 GiB | 2.95 Mbit/s 07/18/09 14.23 GiB | 5.20 GiB | 19.44 GiB | 1.89 Mbit/s 07/19/09 23.59 GiB | 6.73 GiB | 30.32 GiB | 2.94 Mbit/s 07/20/09 36.36 GiB | 7.53 GiB | 43.90 GiB | 4.26 Mbit/s 07/21/09 28.11 GiB | 6.06 GiB | 34.16 GiB | 3.32 Mbit/s 07/22/09 20.80 GiB | 15.36 GiB | 36.16 GiB | 3.51 Mbit/s 07/23/09 18.20 GiB | 10.71 GiB | 28.91 GiB | 2.81 Mbit/s 07/24/09 13.07 GiB | 6.25 GiB | 19.33 GiB | 1.88 Mbit/s 07/25/09 9.74 GiB | 6.38 GiB | 16.11 GiB | 1.56 Mbit/s 07/26/09 11.51 GiB | 6.66 GiB | 18.17 GiB | 1.76 Mbit/s 07/27/09 16.68 GiB | 9.18 GiB | 25.86 GiB | 2.51 Mbit/s 07/28/09 17.06 GiB | 6.61 GiB | 23.67 GiB | 2.30 Mbit/s 07/29/09 23.19 GiB | 7.21 GiB | 30.41 GiB | 2.95 Mbit/s 07/30/09 9.34 GiB | 7.79 GiB | 17.13 GiB | 1.66 Mbit/s 07/31/09 19.19 GiB | 8.63 GiB | 27.82 GiB | 2.70 Mbit/s 08/01/09 17.13 GiB | 10.50 GiB | 27.63 GiB | 2.81 Mbit/s ------------------------+-------------+-------------+--------------- estimated 17.94 GiB | 11.00 GiB | 28.94 GiB | |
$ vnstat -m eth1 / monthly month rx | tx | total | avg. rate ------------------------+--------------+--------------+--------------- Nov '08 74.94 GiB | 96.48 GiB | 171.42 GiB | 554.76 kbit/s Dec '08 279.32 GiB | 276.05 GiB | 555.37 GiB | 1.74 Mbit/s Jan '09 324.34 GiB | 413.38 GiB | 737.72 GiB | 2.31 Mbit/s Feb '09 273.73 GiB | 362.49 GiB | 636.22 GiB | 2.21 Mbit/s Mar '09 353.50 GiB | 270.03 GiB | 623.53 GiB | 1.95 Mbit/s Apr '09 361.74 GiB | 365.01 GiB | 726.74 GiB | 2.35 Mbit/s May '09 345.62 GiB | 440.43 GiB | 786.05 GiB | 2.46 Mbit/s Jun '09 758.45 GiB | 359.30 GiB | 1.09 TiB | 3.62 Mbit/s Jul '09 609.40 GiB | 282.21 GiB | 891.61 GiB | 2.79 Mbit/s Aug '09 17.13 GiB | 10.50 GiB | 27.63 GiB | 2.81 Mbit/s ------------------------+--------------+--------------+--------------- estimated 556.15 GiB | 340.85 GiB | 897.00 GiB | |
$ vnstat -t eth1 / top 10 # day rx | tx | total | avg. rate -----------------------------+-------------+-------------+--------------- 1 06/24/09 80.56 GiB | 10.47 GiB | 91.03 GiB | 8.84 Mbit/s 2 06/09/09 49.11 GiB | 21.65 GiB | 70.76 GiB | 6.87 Mbit/s 3 06/15/09 38.01 GiB | 28.77 GiB | 66.78 GiB | 6.48 Mbit/s 4 06/26/09 53.03 GiB | 10.57 GiB | 63.60 GiB | 6.17 Mbit/s 5 07/06/09 49.90 GiB | 9.69 GiB | 59.59 GiB | 5.79 Mbit/s 6 06/25/09 47.32 GiB | 10.11 GiB | 57.43 GiB | 5.58 Mbit/s 7 02/20/09 19.15 GiB | 37.55 GiB | 56.70 GiB | 5.50 Mbit/s 8 02/02/09 20.65 GiB | 34.03 GiB | 54.68 GiB | 5.31 Mbit/s 9 01/14/09 20.00 GiB | 32.99 GiB | 52.99 GiB | 5.14 Mbit/s 10 04/26/09 32.37 GiB | 19.22 GiB | 51.59 GiB | 5.01 Mbit/s -----------------------------+-------------+-------------+--------------- |
$ vnstat -w eth1 / weekly rx | tx | total | avg. rate ---------------------------+-------------+-------------+--------------- last 7 days 114.11 GiB | 56.58 GiB | 170.69 GiB | 2.38 Mbit/s last week 137.79 GiB | 58.96 GiB | 196.75 GiB | 2.73 Mbit/s current week 102.60 GiB | 49.92 GiB | 152.52 GiB | 2.49 Mbit/s ---------------------------+-------------+-------------+--------------- estimated 121.38 GiB | 59.06 GiB | 180.44 GiB | |
$ vnstat -tr 3103 packets sampled in 5 seconds Traffic average for eth1 rx 50.41 KiB/s 289 packets/s tx 82.11 KiB/s 331 packets/s |
$ vnstat -l Monitoring eth0... (press CTRL-C to stop) rx: 0 kbit/s 1 p/s tx: 4 kbit/s 2 p/s eth0 / traffic statistics rx | tx --------------------------------------+------------------ bytes 21 KiB | 36 KiB --------------------------------------+------------------ max 60 kbit/s | 72 kbit/s average 3.36 kbit/s | 5.76 kbit/s min 0 kbit/s | 0 kbit/s --------------------------------------+------------------ packets 262 | 272 --------------------------------------+------------------ max 94 p/s | 94 p/s average 5 p/s | 5 p/s min 0 p/s | 0 p/s --------------------------------------+------------------ time 50 seconds
|
نصب گرافیکی نرم افزار vnSTAT :
vnSTAT در حالت عادی داده ها را بصورت گرافیکی نمایش نمی دهد ، لذا برای مشاهده گزارش مانیتورینگ بصورت گرافیکی می بایست یک اسکریپت برای مشاهده اینترفیس آن بر روی سرور نصب نمائید. با فرض اینکه از کنترل پنلی مانند دایرکت ادمین استفاده می فرمائید، لطفا یک اکانت برای این منظور بسازید، البته شما می توانید vnSTAT را داخل یکی از پوشه های دامنه های فعال خود نصب نمائید. لذا در صورتیکه مرحله نصب vnSTAT صورت گرفته است، لطفا جهت وارد کردن دستوارت از طریق ssh به سرور متصل شوید.
پس از اتصال به سرور با دستور زیر به پوشه public_html دامنه مورد نظر خود وارد شوید:
cd /home/domain/public_html
حال یک فولدر برای قرار گرفتن اسکریپت ساخته و باقی دستورات را اجرا نمائید:
mkdir domain_monitor
cd domain_monitor
wget http://www.sqweek.com/sqweek/files/vnstat_php_frontend-1.5.1.tar.gz
tar xzf vnstat_php_frontend-1.5.1.tar.gz
سپس فایل config.php را در پوشه vnstat توسط ویرایشگر vim باز نموده و پارامتر های زیر را درون آن تغییر دهید :
$locale = ‘en_US.UTF-8’;
$language = ‘en’;
$iface_list = array(‘eth0’);
$iface_title[‘eth0’] = ‘Internal’;
فراموش نکنید از آنجا که با یوزر روت ( ) تغییرات انجام شده ،می بایست دسترسی فایل های اسکریپت را اصلاح نمایید.