چطور ابزار مانیتورینگ Cacti را در اوبونتو 20.04 نصب کنیم؟
در این مقاله میخوانید
Cacti یکی از ابزارهای مانیتورینگ شبکه است که بهصورت متنباز و با زبان برنامهنویسی PHP طراحی شده است. این ابزار مبتنیبر وب است و از MySQL بهمنظور ذخیره اطلاعات موردنیاز برای ایجاد و مقداردهی به نمودارها استفاده میکند. Cacti میتواند دستگاههای متصل به شبکه را زیرنظر بگیرد و میزان استفاده از پهنای باند را ردیابی و نمودار شکیلی نیز برای آن ترسیم کند. Cacti از پروتکل SNMP برای جمعآوری اطلاعات در دستگاههای ریموت بهره میبرد که با کمک آن میتوانید استفاده از ترافیک شبکه و پهنای باند را با مرورگر نظارت کنید. در این مقاله از آموزش اوبونتو بلاگ پارس پک، میخواهیم نحوه نصب ابزار مانیتورینگ Cacti روی سرور توزیع اوبونتو 20.04 را به شما آموزش دهیم؛ پس تا پایان با ما همراه باشید.
خرید سرور لینوکس با سیستم اوبونتو از پارس پک
شما میتوانید از این مقاله برای مدیریت سرورهای لینوکس با سیستم اوبونتو خود استفاده کنید و اگر قصد خرید هر یک از سرویسهای لینوکسی پارس پک را دارید، میتوانید با کارشناسان فروش ما در ارتباط باشید. همچنین، شما میتوانید برای اطلاع از تعرفهها و هزینهها به لینکهای زیر مراجعه کنید.
پیشنیازها
برای اینکه بتوانید از این مقاله استفاده و ابزار Cacti را روی توزیع اوبونتو 20.04 نصب کنید، به این پیشنیازها احتیاج دارید:
- سروری با سیستمعامل Ubuntu 20.04
- رمزعبور Root که روی سرور پیکربندی شده باشد
با نصب Cacti در اوبونتو، شبکه و سرورهای خود را زیر نظر داشته باشید و ایرادهای احتمالی را ازطریق گزارش و نمودارها مشاهده و بهسرعت رفع کنید. Cacti کلید حل مشکلات شما در اوبونتو است، قابلیتهای آن برای نظارت بر اوبونتو را دست کم نگیرید.
آموزش گامبهگام نصب Cacti روی Ubuntu 20.04
اگر پیشنیازهای گفتهشده را دارید، یعنی میتوانید Cacti را روی توزیع اوبونتو 20.04 نصب کنید. درادامه، روند انجام این کار را گامبهگام توضیح دادهایم.
۱. نصب وابستگیهای موردنیاز
برای نصب وابستگیهای موردنیاز، ابتدا باید فهرست پکیج APT را به جدیدترین نسخه بهروزرسانی کنید. برای این منظور، میتوانید از دستور زیر استفاده کنید:
apt-get update -y
پس از انجام این کار، سایر وابستگیهای لازم را با دستور زیر نصب کنید:
apt-get install snmp php-snmp rrdtool librrds-perl unzip curl git gnupg2 -y
پس از آنکه تمام Dependencies (وابستگیهای) موردنیاز را نصب کردید، سرور LAMP را نیز میتوانید نصب کنید. درادامه مقاله، نحوه انجام این کار را توضیح دادهایم.
برای آشنایی با ۱۰ نمونه از بهترین ابزارها و نرمافزارها برای مانیتورینگ عملکرد سرور مقاله زیر را بخوانید.
۲. نصب سرور LAMP
در گام بعدی، باید وبسرور آپاچی، PHP ،MariaDB و سایر افزونههای موردنیاز PHP را روی سرور خود نصب کنید. با اجرای دستور زیر، میتوانید تمام این موارد را نصب کنید:
apt-get install apache2 mariadb-server php php-mysql libapache2-mod-php php-xml php-ldap php-mbstring php-gd php-gmp -y
پس از نصب تمامی بستهها، فایل PHP Configuration را ویرایش کنید و تنظیمات پیشفرض را بهصورت زیر تغییر دهید:
nano /etc/php/8.1/apache2/php.ini
این خطوط را نیز بهصورت زیر تغییر دهید:
memory_limit = 512M max_execution_time = 60 date.timezone = UTC
درادامه، فایل را ذخیره کنید و ببندید. سپس، فایل PHP Configuration دیگری را ویرایش کنید و تنظیمات پیشفرض این فایل را نیز بهصورت زیر تغییر دهید:
nano /etc/php/8.1/cli/php.ini
در این فایل نیز، خطوط زیر را تغییر دهید:
memory_limit = 512M max_execution_time = 60 date.timezone = UTC
پس از اتمام کار، فایل را ذخیره کنید و ببندید. پسازآن، سرویس Apache را مجدداً راهاندازی کنید تا تغییرات روی فایل اعمال شوند:
systemctl restart apache2
بعد از اینکه مراحل گفتهشده در بالا را با موفقیت انجام دادید، میتوانید به مرحله بعدی بروید.
۳. ایجاد پایگاه داده
در مرحله بعد، باید پایگاه داده بسازید. باتوجهبه اینکه Cacti از MariaDB بهعنوان پایگاه داده استفاده میکند، باید یک پایگاه داده MariaDB و یک کاربر برای Cacti بسازید. برای این منظور، ابتدا فایل پیکربندی پیشفرض MariaDB را ویرایش کنید و برخی از تنظیمات پیشفرض این فایل را بهصورت زیر تغییر دهید:
nano /etc/mysql/mariadb.conf.d/50-server.cnf
خطوط زیر را در بخش [mysql] اضافه کنید یا درصورت وجود، آن را تغییر دهید:
collation-server = utf8mb4_unicode_ci max_heap_table_size = 128M tmp_table_size = 64M join_buffer_size = 64M innodb_file_format = Barracuda innodb_large_prefix = 1 innodb_buffer_pool_size = 512M innodb_flush_log_at_timeout = 3 innodb_read_io_threads = 32 innodb_write_io_threads = 16 innodb_io_capacity = 5000 innodb_io_capacity_max = 10000 innodb_doublewrite = OFF
فایل را ذخیره کنید و آن را ببندید. سپس، سرویس MariaDB را مجدداً راهاندازی کنید تا تغییرات اعمال شود:
systemctl restart mariadb
سپس با استفاده از دستور زیر، وارد شل MariaDB شوید:
mysql
پس از ورود به سیستم، با استفاده از دستور زیر یک پایگاه داده و یک کاربر برای Cacti ایجاد کنید:
MariaDB [(none)]> create database cactidb; MariaDB [(none)]> GRANT ALL ON cactidb.* TO cactiuser@localhost IDENTIFIED BY 'password';
سپس، امتیازهای ارائهشده را تخلیه کنید و با دستور زیر از شل MariaDB خارج شوید:
MariaDB [(none)]> flush privileges; MariaDB [(none)]> exit;
در گام بعدی، باید دادههای منطقه زمانی خود را به پایگاه داده MySQL وارد کنید. این کار با استفاده از دستور زیر امکانپذیر است:
mysql mysql < /usr/share/mysql/mysql_test_data_timezone.sql
حالا وارد پوسته MariaDB شوید و با استفاده از دستور زیر، امتیازهای موردنیاز را به منطقه زمانی MySQL بدهید:
mysql MariaDB [(none)]> GRANT SELECT ON mysql.time_zone_name TO cactiuser@localhost;
گام آخر این مرحله، تخلیه امتیازها و خارجشدن از پوسته MariaDB است. با استفاده از دستور زیر، این کار را انجام دهید:
MariaDB [(none)]> flush privileges; MariaDB [(none)]> exit;
برای آموزش مانیتورینگ پهنای باند در لینوکس به کمک ابزار vnSTAT روی لینک زیر کلیک کنید.
۴. نصب و پیکربندی Cacti
در ابتدا، جدیدترین نسخه Cacti را از وبسایت رسمی آن دانلود کنید:
wget https://www.cacti.net/downloads/cacti-latest.tar.gz
پس از اتمام دانلود، فایل دانلودشده را با استفاده از دستور زیر Extract کنید:
tar -zxvf cacti-latest.tar.gz
سپس، باید دایرکتوری استخراجشده را به دایرکتوری ریشه Apache منتقل کنید:
mv cacti-1* /var/www/html/cacti
در گام بعدی، باید پایگاه داده را به دیتابیس Cacti وارد کنید:
mysql cactidb < /var/www/html/cacti/cacti.sql
سپس، فایل Cacti config.php را ویرایش و تنظیمات پایگاه داده خود را مشخص کنید:
nano /var/www/html/cacti/include/config.php
خطوط زیر را به این صورت تغییر دهید:
$database_type = 'mysql'; $database_default = 'cactidb'; $database_hostname = 'localhost'; $database_username = 'cactiuser'; $database_password = 'password'; $database_port = '3306';
فایل را ذخیره کنید و سپس آن را ببندید. بعدازآن، فایل Log را برای Cacti ایجاد کنید:
touch /var/www/html/cacti/log/cacti.log
سپس، مالکیت و مجوز دایرکتوری Cacti را با استفاده از دستور زیر تنظیم کنید:
chown -R www-data:www-data /var/www/html/cacti/ chmod -R 775 /var/www/html/cacti/
درادامه با استفاده از دستور زیر، فایل جدیدی با نام Cacti cron ایجاد کنید:
nano /etc/cron.d/cacti
خط زیر را درون این فایل قرار دهید:
*/5 * * * * www-data php /var/www/html/cacti/poller.php > /dev/null 2>&1
بعد از اتمام کار، فایل را ذخیره کنید و سپس آن را ببندید.
۵. ساخت سرور مجازی برای Cacti
در مرحله بعدی، باید فایل پیکربندی مجازی آپاچی برای Cacti ایجاد کنید. با استفاده از دستور زیر، میتوانید این کار را انجام دهید:
nano /etc/apache2/sites-available/cacti.conf
در این فایل، دستورهای زیر را قرار دهید:
Alias /cacti /var/www/html/cacti <Directory /var/www/html/cacti> Options +FollowSymLinks AllowOverride None <IfVersion >= 2.3> Require all granted </IfVersion> <IfVersion < 2.3> Order Allow,Deny Allow from all </IfVersion> AddType application/x-httpd-php .php <IfModule mod_php.c> php_flag magic_quotes_gpc Off php_flag short_open_tag On php_flag register_globals Off php_flag register_argc_argv On php_flag track_vars On # this setting is necessary for some locales php_value mbstring.func_overload 0 php_value include_path . </IfModule> DirectoryIndex index.php </Directory>
فایل را ذخیره کنید و آن را ببندید. سپس با استفاده از فرمان زیر، فایل هاست مجازی را فعال کنید:
a2ensite cacti
در گام بعد، باید سرویس Apache را مجدداً راهاندازی کنید تا تغییرات پیکربندی اعمال شود:
systemctl restart apache2
همچنین با استفاده از دستور زیر، میتوانید وضعیت سرویس Apache خود را بررسی کنید:
systemctl status apache2
با واردکردن دستور بالا، شما باید خروجیای مانند شکل زیر را مشاهده کنید:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor prese> Active: active (running) since Sun 2022-07-24 03:58:11 UTC; 7s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 12847 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/S> Main PID: 12851 (apache2) Tasks: 6 (limit: 2242) Memory: 13.7M CPU: 103ms CGroup: /system.slice/apache2.service ??12851 /usr/sbin/apache2 -k start ??12852 /usr/sbin/apache2 -k start ??12853 /usr/sbin/apache2 -k start ??12854 /usr/sbin/apache2 -k start ??12855 /usr/sbin/apache2 -k start ??12856 /usr/sbin/apache2 -k start Jul 24 03:58:11 ubuntu systemd[1]: Starting The Apache HTTP Server...
برای آشنایی با ۱۰ ابزار پرکاربرد نظارت بر ترافیک شبکه اوبونتو روی لینک زیر کلیک کنید.
۶. راهاندازی مرحلهبهمرحله Cacti Web Installation
حالا مرورگر خود را باز کنید و با استفاده از آدرس your-server-ip/cacti، به قسمت نصب Cacti وارد شوید. با واردکردن این آدرس، مانند تصویر زیر به صفحه ورود به سیستم هدایت خواهید شد:
در این صفحه، از نام کاربری و رمزعبور admin استفاده و روی دکمه Login کلیک کنید. در این صورت، باید صفحه تنظیم مجدد رمزعبور را ببینید:
رمزعبور پیشفرض را تغییر دهید و آن را دوباره در قسمت Confirm new password وارد و روی دکمه Save کلیک کنید:
همانطورکه در تصویر بالا نیز مشاهده میکنید، شما باید توافقنامه را تأیید کنید. برای این منظور، عبارت Accept GPL License Agreement را فعال و درنهایت روی دکمه Begin کلیک کنید:
در صفحه بعدی، روی دکمه Next کلیک کنید. در این صورت، باید صفحه Installation Type را ببینید:
نوع نصب خود را از منو کشویی قرارگرفته در این قسمت انتخاب و روی دکمه Next کلیک کنید. حالا باید صفحه Directory Permission را مشاهده کنید:
روی Next کلیک کنید. شما باید صفحه Critical Binary Locations and Versions را ببینید:
مجدداً روی دکمه Next کلیک کنید. شما باید با صفحهای مانند تصویر زیر روبهرو شوید:
در این صفحه، گزینه I have read this statement را علامت بزنید و مجدداً روی دکمه Next کلیک کنید:
گزینههای مدنظر خود را انتخاب و روی دکمه Next کلیک کنید. صفحهای مانند تصویر زیر برای شما بهنمایش درخواهد آمد:
در این صفحه نیز، مجدداً روی دکمه Next کلیک کنید. حالا صفحه مانند تصویر زیر برایتان بهنمایش درخواهد آمد:
اگر روی Next کلیک کنید، صفحه تأیید نصب را خواهید دید. نمونه این صفحه در تصویر زیر نشان داده شده است:
در همین صفحه، گزینه Confirm Installation را علامت بزنید و سپس روی دکمه Install کلیک کنید. در این صورت، روند نصب شروع خواهد شد. پس از پایان نصب نیز، باید با صفحهای مانند در تصویر زیر روبهرو شوید:
در این صفحه، روی دکمه Get Started کلیک کنید. بدینترتیب، داشبورد Cacti مانند تصویر برایتان نمایش داده میشود:
جمعبندی
مانیتورینگ شبکه یکی از موضوعاتی است که متخصصان این حوزه برای رصد وضعیت مواردی مانند روترها، سرور، ترافیک استفادهشده و ترافیک در حال استفاده به آن نیاز دارند. ابزارهای مختلفی برای این منظور طراحی شدهاند که یکی از بهترین آنها Cacti است.
بااینحال، نصب این نرمافزار روی سیستمعامل لینوکس ممکن است مشکلاتی برای شما بههمراه داشته باشد؛ بههمیندلیل در این مطلب از آموزش سیستم عامل و آموزش لینوکس، نحوه نصب ابزار مانیتورینگ Cacti روی توزیع Ubuntu 20.04 را بهصورت گامبهگام به شما آموزش دادهایم.
سؤالات متداول
۱. نرمافزار Cacti چه کاربردی دارد؟
Cacti نرمافزاری با UI عالی برای مانیتورینگ شبکه و جزئیات مربوط به آن است. با استفاده از این نرمافزار، موارد مدنظر خود را در شبکه بهصورت نمودار و در فواصل زمانی تعیینشده دلخواهتان میتوانید مشاهده کنید.
۲. آیا Cacti منبعباز است؟
بله، یکی از قابلیتهای مهم Cacti این است که بهصورت منبعباز طراحی شده است.
۳. Cacti با استفاده از کدام زبان برنامهنویسی نوشته شده است؟
Cacti با استفاده از زبان PHP نوشته شده است.
۴. RRDtool چیست؟
هدف اصلی RRDtool مدیریت دادههای سرّی زمانی مانند پهنای باند شبکه یا دما یا بار CPU این است.
۵. استفاده از ابزارهای مانیتورینگ شبکه چه مزیتهایی دارد؟
استفاده از این ابزارها مزیتهای زیادی بههمراه دارد؛ ازجمله حفظ انطباقپذیری، جلوگیری از خرابی، پیداکردن و رفع سریع مشکلات، کشف تهدیدهای امنیت، نظارت بر استفاده از پهنای باند، برنامهریزی ظرفیت و بهکارگیری فناوریهای نوین.