در این مقاله، همراه شما خواهیم بود تا نصب Zabbix LTS روی CentOS 8 و RHEL 8 را بررسی کنیم. Zabbix یک ابزار قدرتمند و متنباز برای نظارت شبکه است که برای نظارت بر تجهیزات شبکه، نرمافزار سرور و عملکرد استفاده میشود.
Zabbix به زبانهای C و Java نوشته شده است و رابط وب آن به زبان PHP است. در این مقاله، توضیح خواهیم داد که چگونه سیستم نظارتی Zabbix را بر روی سرور مجازی لینوکس با سیستمعامل CentOS 8 و RHEL 8 راهاندازی و نصب کنیم.با استفاده از نرمافزار Zabbix، میتوانید سرور را به عنوان یک سیستم نظارتی استفاده کنید. با اتصال سرور سیستم عامل به سرور Zabbix، تمام اطلاعات مربوط به سرور سیستم عامل مانند مقدار RAM، پردازنده، سرعت آپلود و دانلود و بسیاری از فعالیتهای سرور نمایش داده میشود و میتوانید به راحتی سرورها را از راه دور کنترل کنید. تمام اطلاعات Zabbix در پایگاه داده سرور ذخیره میشوند. بنابراین، عملکرد آن برای سرور بسیار حیاتی است. عملکرد رابط کاربری نیز برای نمایش یک رابط کاربری قابل فهم و زیبا به کاربران هنگام دریافت دادهها مهم است. پس از دریافت اطلاعات در سرور Zabbix، حدود ۲ دقیقه زمان میبرد تا Zabbix بهروزرسانی شوند.
زیرساخت Zabbix (Client-Server) :
Zabbix به صورت (Client-Server) کار میکند. به این ترتیب که Zabbix بر روی سیستمهایی مانند لینوکس، یونیکس، ویندوز و مک نصب میشود.البته بر روی سیستمهایی که سیستم عامل ندارند، میتوان آنها را نیز از طریق پروتکل SNMP یا IPMI در Zabbix پایش کرد.این بدان معنی است که Zabbix به عنوان یک سرور مرکزی عمل میکند که اطلاعات را از کلاینتهای نصب شده بر روی سیستمهای مختلف دریافت میکند. این اطلاعات میتواند شامل متریکهای سیستم عامل، استفاده از منابع، وضعیت سرویسها و بسیاری موارد دیگر باشد.از طرف دیگر، برای سیستمهایی که سیستم عامل ندارند، Zabbix میتواند از پروتکلهای SNMP و IPMI برای جمعآوری اطلاعات استفاده کند. این امکان به Zabbix این قابلیت را میدهد که طیف گستردهای از تجهیزات شبکه و سرورها را پایش کند.در مجموع، این معماری سرور-کلاینت به Zabbix این امکان را میدهد که به صورت متمرکز اطلاعات را جمعآوری و پردازش کند و به کاربران ارائه دهد.
Zabbix 5.0 چه ویژگیهای جدیدی دارد؟
Zabbix 5.0 تغییرات زیادی داشته است، اما مهمترین تغییرات عبارتند از:
- تغییر در زیرساخت منوها
- ارتقای امنیت
- بهبود عملکرد سرور
- مدیریت و استفاده آسانتر برای پایش تجهیزات شبکه
- بهبود اتوماسیون
- محیط پیشرفتهتر
- ارتباط با سایر پیامرسانها مانند تلگرام و غیره
- بهروزرسانی قالبها و افزونهها
اگر میخواهید جزئیات کامل بهروزرسانیها و ویژگیهای جدید Zabbix را بدانید، به این لینک مراجعه کنید.
چگونه اندازه پایگاه داده Zabbix را برای ذخیره اطلاعات محاسبه کنیم ؟
تنظیمات Zabbix نیاز به مقدار ثابتی از فضای دیسک دارند و فراتر از این اندازه افزایش نخواهند یافت. اندازه پایگاه داده Zabbix به این متغیرها بستگی دارد که میزان داده ذخیره شده را تعیین میکنند:
- تعداد آیتمهای پایش: هر آیتم پایش شده در پایگاه داده ذخیره میشود. تعداد آیتمهای پایش بر اندازه پایگاه داده تأثیر میگذارد.
- فاصله زمانی ذخیرهسازی: هر چه فاصله زمانی ذخیرهسازی کوتاهتر باشد، حجم پایگاه داده بیشتر خواهد شد.
- تاریخچه نگهداری دادهها: مدت زمانی که دادهها در پایگاه داده نگهداری میشوند، بر اندازه آن تأثیر میگذارد.
- تعداد گرافها و نمودارها: هر گراف و نمودار در پایگاه داده ذخیره میشود و بر اندازه آن تأثیر میگذارد.
- تعداد رویدادها و مشکلات: هر رویداد و مشکل در پایگاه داده ذخیره میشود و بر اندازه آن تأثیر میگذارد.
با در نظر گرفتن این متغیرها، میتوان اندازه تقریبی پایگاه داده Zabbix را محاسبه کرد. این محاسبه به شما کمک میکند تا فضای دیسک مورد نیاز را برآورد کنید.
تعداد مقادیر پردازش شده در هر ثانیه
این میانگین تعداد مقادیر جدیدی است که سرور Zabbix در هر ثانیه دریافت میکند. به عنوان مثال، اگر ۳,۰۰۰ آیتم برای پایش داشته باشیم و با فاصله زمانی ۶۰ ثانیه برای بهروزرسانی هر آیتم، تعداد مقادیر در هر ثانیه به صورت ۳۰۰۰/۶۰ = ۵۰ محاسبه میشود. این بدان معنی است که ۵۰ مقدار جدید در هر ثانیه به پایگاه داده Zabbix اضافه میشود.این محاسبه به شما کمک میکند تا میزان بار ورودی به سرور Zabbix را برآورد کنید. این اطلاعات همچنین میتواند به شما در طراحی زیرساخت مناسب برای سرور Zabbix کمک کند.به عنوان مثال، اگر تعداد مقادیر پردازش شده در هر ثانیه بسیار بالا باشد، ممکن است نیاز به استفاده از سرور قدرتمندتر یا پیکربندی بهینهتر سرور Zabbix داشته باشید. این محاسبه به شما کمک میکند تا از قبل برای این موارد برنامهریزی کنید.
پیش نیازها :
برای افزودن حداقل ۵۰۰ میزبان:پردازنده: دو هستهای
حافظه: ۲ گیگابایتبرای افزودن حداقل ۱۰۰۰ میزبان:پردازنده: چهار هستهای
حافظه: ۸ گیگابایت
- RAID-10
برای افزودن حداقل ۱۰,۰۰۰ میزبان:پردازنده: هشت هستهای
حافظه: ۱۶ گیگابایت
- RAID-10
همچنین نیاز به پایگاه داده MySQL نسخه ۵.۵.۶۲ یا ۸.۰.x یا MariaDB نسخه ۱۰.x،
وب سرور Apache نسخه ۱.۳.۱۲ یا بالاتر،
و PHP نسخه ۷.۲.۰ یا بالاتر است.
ورود به کاربر (root)
برای انجام دستورالعملهای ارائه شده در آموزش، ابتدا با دسترسی ریشه (root) وارد سیستم شوید:
- در ترمینال، دستور زیر را وارد کنید تا به عنوان کاربر ریشه (root) وارد شوید:
sudo su -
- پس از وارد شدن به عنوان کاربر ریشه، میتوانید دستورالعملهای آموزش را دنبال کنید.
غیرفعال کردن SELinux
توصیه میکنیم اول SELinux را غیرفعال کرده و به حالت Permissive تغییر دهید. مراحل زیر نحوه پیکربندی آن را توضیح میدهد:
- برای بررسی وضعیت فعلی SELinux، دستور زیر را اجرا کنید:
# setenforce 0
# sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
# cat /etc/selinux/config | grep SELINUX=
نصب وب سرور Apache
ابتدا سیستم خود را بهروز رسانی کرده، سپس وب سرور Apache را همراه با ماژولها و ابزارهای کاربردی زیر نصب میکنیم:
- بهروز رسانی سیستم:
yum update -y
- نصب وب سرور Apache و ابزارهای مرتبط:
yum install -y httpd httpd-tools mod_ssl
این دستورات باعث نصب موارد زیر میشوند:
httpd
: وب سرور Apache
httpd-tools
: ابزارهای مفید برای مدیریت Apache
mod_ssl
: ماژول SSL برای پشتیبانی از HTTPS
پس از اجرای این دستورات، وب سرور Apache به طور موفقیتآمیز نصب خواهد شد.
نصب پایگاه داده MySQL/MariaDB
برای نصب پایگاه داده MySQL یا MariaDB، مراحل زیر را دنبال کنید:
- بهروز رسانی سیستم:
yum update -y
- نصب پایگاه داده MySQL نسخه ۵.۵.۶۲ یا ۸.۰.x:
yum install -y mysql-server
یا نصب پایگاه داده MariaDB نسخه ۱۰.x:
yum install -y mariadb-server
- شروع به کار سرویس پایگاه داده:
systemctl start mysqld
- فعالسازی سرویس پایگاه داده برای راهاندازی خودکار در هنگام بوت سیستم:
systemctl enable mysqld
- تنظیم رمز عبور ریشه (root) پایگاه داده:
mysql_secure_installation
این مراحل باعث نصب و راهاندازی موفقیتآمیز پایگاه داده MySQL یا MariaDB خواهد شد.
برای نصب و پیکربندی سرور Zabbix در CentOS 8 یا RHEL 8، مراحل زیر را دنبال کنید:
۱. بهروز رسانی سیستم:
yum update -y
۲. افزودن مخزن نرمافزاری Zabbix:
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
۳. نصب سرور Zabbix:
yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf
۴. نصب پایگاه داده MySQL/MariaDB و پیکربندی آن برای Zabbix:
yum install -y mariadb-server
systemctl start mariadb
mysql -uroot -p
CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'password';
quit
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
۵. ویرایش فایل پیکربندی سرور Zabbix:
vi /etc/zabbix/zabbix_server.conf
DBPassword=password
۶. شروع به کار سرویس سرور Zabbix:
systemctl restart zabbix-server
systemctl enable zabbix-server
۷. پیکربندی وبسایت Zabbix:
vi /etc/httpd/conf.d/zabbix.conf
این مراحل باعث نصب و پیکربندی موفقیتآمیز سرور Zabbix در CentOS 8 یا RHEL 8 خواهد شد.
برای پیکربندی PHP برای استفاده با سرور Zabbix، مراحل زیر را دنبال کنید:
۱. ویرایش فایل پیکربندی PHP:
vi /etc/php-fpm.d/zabbix.conf
۲. افزودن تنظیمات زیر به فایل:
[zabbix]
listen = /var/run/php-fpm/zabbix.sock
listen.allowed_clients = 127.0.0.1
user = zabbix
group = zabbix
pm = dynamic
pm.max_children = 200
pm.start_servers = 20
pm.min_spare_servers = 10
pm.max_spare_servers = 30
pm.max_requests = 4000
۳. ویرایش فایل پیکربندی Apache:
vi /etc/httpd/conf.d/zabbix.conf
۴. افزودن تنظیمات زیر به فایل:
# Zabbix web interface
Alias /zabbix /usr/share/zabbix
<Directory "/usr/share/zabbix">
Options FollowSymLinks
AllowOverride None
Require all granted
# For Apache 2.4 and later:
# Require all granted
</Directory>
# Zabbix server status
Alias /server_status /usr/share/zabbix/app/webroot/server_status.php
<Directory "/usr/share/zabbix/app/webroot/server_status.php">
SetHandler server-status
Options ExecCGI
Require all granted
# For Apache 2.4 and later:
# Require all granted
</Directory>
# PHP settings optimization for Zabbix
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
۵. راهاندازی مجدد سرویسهای Apache و PHP-FPM:
systemctl restart httpd
systemctl restart php-fpm
این تنظیمات باعث بهینهسازی PHP برای استفاده با سرور Zabbix خواهد شد.
پیکربندی Zabbix در رابط کاربری وب :
برای ادامه نصب Zabbix، باید آدرس http://server_ip_or_name/zabbix را در مرورگر خود وارد کنید.
در این مرحله، روی دکمه “Next step” کلیک کنید. در این مرحله، مطمئن شوید که همه پیشنیازها نصب شدهاند و وضعیت آنها “OK” است. ممکن است پیشنیازهای اختیاری نیز در لیست وجود داشته باشند. اگر مشکلی با پیشنیازهای اختیاری وجود داشته باشد، با وضعیت هشدار و به رنگ نارنجی نمایش داده میشود. میتوانید بدون هیچ پیشنیازی به نصب ادامه دهید. اگر مشکلی وجود ندارد، روی دکمه “Next step” کلیک کنید.
در این مرحله، باید پایگاه داده خود را پیکربندی کنیم. در بخش رمز عبور، باید رمز عبور کاربر و پایگاه داده Zabbix را که در مراحل قبلی ایجاد کردیم، وارد کنیم. سپس روی دکمه “Next step” کلیک کنید.
در بخش نام، یک نام برای نصب Zabbix وارد کنید و سپس بر روی دکمه “Next step” کلیک کنید.
در این صفحه خلاصه، میتوانید تمام تنظیمات را بررسی کنید و مطمئن شوید که همه موارد به درستی پیکربندی شدهاند. اگر همه چیز درست باشد، روی دکمه “Next step” کلیک کنید تا به مرحله نصب نهایی بروید.
بعد از اتمام نصب سرور Zabbix، بر روی دکمه “پایان” کلیک کنید.
به محض نصب Zabbix، شما به صفحه ورود هدایت خواهید شد. در اینجا نام کاربری و رمز عبور Zabbix خود را وارد کنید. نام کاربری و رمز عبور پیشفرض Zabbix به شرح زیر است:
- نام کاربری: Admin
- رمز عبور: zabbix
پس از وارد کردن این اطلاعات، میتوانید به داشبورد Zabbix وارد شوید و شروع به استفاده از آن کنید.
در اینجا باید داشبورد نظارتی جدید Zabbix را مشاهده کنید.
نتیجه گیری :
نصب Zabbix 5.0 با موفقیت انجام شد
در این مقاله، سعی کردیم به شما آموزش دهیم که چگونه Zabbix قدرتمند را در روی یک سرور مجازی لینوکس نصب کنید.میتوانید از طریق لینک زیر یک سرور مجازی خریداری کنید تا Zabbix را روی آن نصب کنید:https://zoip.ir/vps/ میدوارم از این مطلب لذت برده باشید.همچنین، ما مایل هستیم که نظرات ارزشمند شما را در مورد این مقاله با ما در میان بگذارید.