در این مقاله ما قصد داریم آموزش نصب Zabbix 4.4 در CentOS 7/8 و Red Hat 7/8 را به همراه نصب Agent Zabbix و آموزش کار با این مانیتورینگ را به صورت فارسی آموزش دهیم. زبیکس چیست؟ مانیتورینگ زبیکس یک نرم افزاری میباشد، رایگان و تحت لایسنس GPL v2، که تعداد بی شماری پارامترهای شبکه و سلامت کارکرد سرورها را مانیتور میکند. زابیکس از یک میکانیزم اطلاع رسانی انعطاف پذیر استفاده میکند که به کاربران اجازه میدهد تنظیمات ایمیل را بر اساس پیام های هشدار و هر اتفاقی دیگری انجام دهند. تمام گزارش ها و آمارهای Zabbix مانند تنظیمات پارامترها، گراف ها، نمودارها و غیره از طریق کنسول تحت وب قابل دسترس هستند و این امر باعث میشود کاربر از وضعیت شبکه یا سلامت سرورهایشان از هر مکانی اطلاع داشته باشد. زبیکس میتواند نقش مهمی در نظارات بر زیرساخت های فناوری اطلاعات داشته باشد، این مسئله در مورد شرکت های کوچک با چند سرور و سازمان های بزرگ با تعداد زیادی سرور نیز به همین اندازه است.
قابلیت های مانیتورینگ Zabbix
زبیکس یک راه حل بسیار یکپارچه برای نظارت بر شبکه است که بسیاری از ویژگی ها را در یک بسته واحد ارائه می دهد. در زیر خلاصه ای از قابلت های زبیکس بیان شده که برای مشاهده کامل قابلیت های زیبکس میتوانید به این لینک مراجعه کنید.
نکته : در این مقاله من از CentOS 7 استفاده میکنم و شما در صورت داشتن CentOS 8 میتوانید از همین آموزش استفاده کنید.
همچنین توصیه میشود مطالعه کنید :
آموزش نصب آخرین ورژن مانیتورینگ شبکه Zabbix
آموزش نصب Zabbix 4.4 بر روی Ubuntu 18.04 و Debian 9/10 (به زودی)
نحوه ارسال پیام ها و خطاها در Zabbix به یک کانال تلگرام (Information, Warning, Avarage, High, Disaster)
آموزش نصب و راه اندازی Agent زبیکس در Linux
آموزش نصب و کانفیگ Agent زبیکس در Windows
ارسال ایمیل های هشدار زبیکس به اکانت Gmail
مانیتورینگ دیتابیس اوراکل در زبیکس
آموزش مانیتور کردن Oracle Database در Zabbix با کمک Orabbix در Ubuntu
نصب LAMP سرور و پیش نیازها :
قبل از شروع ما نیاز داریم که LAMP (مجموعه Linux, Apache, MySQL, PHP) را روی سرورمان نصب کنیم :
پس از نصب، سرور Apache و mysql را فعال و start میکنیم :
دستور mysql_secure_installation برای شما امکان امن کردن MySQL تان را با انجام تنظیمات مهمی مانند تعریف پسورد root، حذف کاربران ناشناخته (anonymous users) و حذف Login یوزر root و غیره ممکن میسازد.
نصب Zabbix Server به همراه MySQL
قبل از شروع نصب احتیاج هست که ما ریپازیتوری زبیکس را با استفاده از دستور زیر فعال کنیم.
برای CentOS 7 و Red Hat 7
برای CentOS 8 و Red Hat 8
اکنون سیستم آماده برای نصب زبیکس می باشد. از دستور زیر برای نصب Zabbix و پکیج های مورد نیاز استفاده کنید :
برای CentOS 7 و Red Hat 7
برای CentOS 8 و Red Hat 8
ویرایش Timezone فایل PHP
فایل zabbix.conf را از مسیر زیر و با استفاده از ادیتور مورد علاقه خود باز کنید :
بعد از باز کردن فایل بالا قسمت "date.timezone" را uncomment کنید و بعد از آن timezone مربوط به منطقه زمانی خود را وارد کنید. (در اینجا با توجه به اینکه ما در آسیا و تهران هستیم منطقه زمانی روی Asia/Tehran تنظیم شده است)
بعد از ویرایش :
تغییرات را ذخیره کرده و فراموش نکنید که سرویس httpd را با استفاده از دستور زیر restart کنید.
انجام تنظیمات اولیه دیتابیس Zabbix و ایجاد دیتابیس مورد نیاز
در ابتدا ما نیاز داریم یک دیتابیس (zabbixdb) و یک یوزر (zabbixuser) برای زبیکس ایجاد کنیم.
در دستور بالا پسورد واقعی root خود را بجای <root_password> جایگزین کنید (بطور مثال : mysql -uroot -p12345678) و همچنین به جای <password> در خط آخر، پسورد جدید یوزر zabbix روی دیتابیس را جایگزین نمایید. دقت کنید پسورد را در آپوستروف '' قرار دهید :
سپس ساختار و دیتای اولیه را باید import کنیم. از وارد کردن ورژن درست در دستور زیر مطمین شوید. بمنظور بررسی کردن ورژن پکیج از دستور زیر استفاده کنید. ( در اینجا 4.4.1 میباشد)
اینجا سیستم از شما میخواهد پسوردی که جدیدا برای یوزر zabbix در بالا ایجاد کردید را وارد کنید. (در اینجا 123456 میباشد. به جای ستاره ورژن سرور زبیکس خود را که در بالا به دست آوردید وارد کنید، یا میتوانید برای کامل شدن اتوماتیک دستور از کلید TAB استفاده کنید.)
تنظیمات database در سرور zabbix
اکنون ما نیاز داریم که تنظیمات دیتابیس را از طریق فایل zabbix_server.conf و از مسیر زیر انجام دهیم.
همانند زیرhost name ،user و password را در فایل zabbix_server.conf ویرایش کنید. دقت کنید برای <password> از پسوردی که در مرحله ی ایجاد دیتابیس ساختید استفاده کنید. (در اینجا 123456 میباشد)
نکته : دقت کنید که DBHost و DBPassword بصورت پیش فرض کامنت هستند و شما باید آنها را از کامنت خارج کنید و همانند بالا تعریف نمایید.
تنظیمات SELinux و firewall برای Zabbix
در صورتی که به selinux و Firewall رو سیستمتان نیاز ندارید می توانید به سادگی و با استفاده از دستورات زیر آنها را غیر فعال کنید:
غیر فعال کردن selinux :
با استفاده از یک ادیتور متن فایل کانفیگ زیر را باز کنید.
و در فایل بالا SELINUX=enforcing را به SELINUX=disabled تغییر داده و تغییرات را ذخیره می کنیم :
نکته : دقت کنید بعد از غیر فعال کردن selinux برای اعمال تغییرات باید سرور را یکبار reboot کنید.
غیر فعال کردن firewall :
برای غیر فعال کردن فایروال از دستورات زیر استفاده کنید.
تنظیمات Firewall و SELinux در صورتی که فعال باشد :
در غیر اینصورت باید تنظیمات زیر را به منظور امکان دسترسی به زبیکس، در فایروال و .. انجام دهید :
برای SELinux :
برای Firewalld :
بعد از تنظیم کردن Selinux و تنظیمات firewall ما احتیاج داریم سرویس Zabbix را فعال و Start کنیم. برای این کار از دستورات زیر استفاده کنید.
نکته : اگر به هنگام start کردن سرور زبیکس به Error زیر برخورد کردید، دقت کنید که تنظیمات selinux و firewall را به درستی انجام داده باشید و یا با استفاده از دستوراتی که مطرح شد selinux و فایروال را غیرفعال کنید. (فراموش نکنید بعد از غیرفعال کردن selinux سیستم را reboot کنید)
تنظیمات zabbix از طریق کنسول وب :
در مرورگر خود آدرس http://<server_ip_or_name>/zabbix را وارد کنید. شما باید صفحه اول نصب کنسول وب زبیکس را مشاهده کنید.
روی دکمه Next step کلیک کنید.
در این مرحله مطمئن شوید تمام نرم افزارها و پیش نیازها OK باشد :
نمونه پیش نیاز های بالا :
پیش نیازهای اختیاری هم ممکن است در لیست موجود باشد. اگر مشکلی در پیش نیازهای اختیاری باشد به رنگ نارنجی و به همراه یک وضعیت هشدار نمایش داده میشود. شما میتوانید ادامه نصب را بدون پیش نیازهای اختیاری هم انجام دهید.
در مرحله ی بعد اطلاعات و توضیحات مربوط به دیتابیس را در این بخش وارد کنید. دقت کنید که دیتابیس زبیکس موجود و ساخته شده باشد :
در بخش بعد اطلاعات و جزئیات سرور زبیکس را وارد کنید و یک نام برای سرورتان انتخاب کنید :
خلاصه تنظیمات را در این صفحه مشاهده کنید :
و اکنون شما کنسول وب zabbix را با موفقیت نصب کردید :
اکنون با استفاده از یوزر و پسورد پیش فرض زبیکس به آن لاگین میکنیم :
شما با موفقیت وارد داشبورد کاربری Zabbix شدید :
اولین کاری که باید انجام دهید فعال کردن مانیتورینگ برای خود Zabbix Server میباشد. برای این کار از منوی Configuration وارد تب Hosts شده و روی دکمه "Disabled" در هاست zabbix server کلیک کنید. بعد از تایید مشاهده می کنید که هاست enabled خواهد شد. البته در ورژن جدید هاست را به صورت اتوماتیک Enable میکند.
همچنین توصیه میشود مطالعه بفرمایید.
دانلود PDF آموزشی آخرین ورژن مانیتورینگ Zabbix Enterprise Network Monitoring Made Easy
دوره آموزشی مانیتورینگ Zabbix (حرفه ای)
نصب و راه اندازی مانیتورینگ زبیکس به پایان رسید.
قابلیت های مانیتورینگ Zabbix
زبیکس یک راه حل بسیار یکپارچه برای نظارت بر شبکه است که بسیاری از ویژگی ها را در یک بسته واحد ارائه می دهد. در زیر خلاصه ای از قابلت های زبیکس بیان شده که برای مشاهده کامل قابلیت های زیبکس میتوانید به این لینک مراجعه کنید.
- Data gathering
- Flexible threshold definitions
- Highly configurable alerting
- Real-time graphing
- Web monitoring capabilities
- Extensive visualisation options
- Historical data storage
- Easy configuration
- Use of templates
- Network discovery
- Fast web interface
- Zabbix API
- Permissions system
- Full featured and easily extensible agent
- Binary daemons
- Ready for complex environments
نکته : در این مقاله من از CentOS 7 استفاده میکنم و شما در صورت داشتن CentOS 8 میتوانید از همین آموزش استفاده کنید.
همچنین توصیه میشود مطالعه کنید :
آموزش نصب آخرین ورژن مانیتورینگ شبکه Zabbix
آموزش نصب Zabbix 4.4 بر روی Ubuntu 18.04 و Debian 9/10 (به زودی)
نحوه ارسال پیام ها و خطاها در Zabbix به یک کانال تلگرام (Information, Warning, Avarage, High, Disaster)
آموزش نصب و راه اندازی Agent زبیکس در Linux
آموزش نصب و کانفیگ Agent زبیکس در Windows
ارسال ایمیل های هشدار زبیکس به اکانت Gmail
مانیتورینگ دیتابیس اوراکل در زبیکس
آموزش مانیتور کردن Oracle Database در Zabbix با کمک Orabbix در Ubuntu
نصب LAMP سرور و پیش نیازها :
قبل از شروع ما نیاز داریم که LAMP (مجموعه Linux, Apache, MySQL, PHP) را روی سرورمان نصب کنیم :
کد PHP:
# yum update
# yum install httpd -y
# yum install php php-cli php-common php-devel php-pear php-gd php-mbstring php-mysql php-xml -y
]# yum install mariadb-server -y
کد PHP:
# systemctl enable httpd && systemctl start httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
# systemctl enable mariadb && systemctl start mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
کد PHP:
# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN
PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the currentpassword for the root user. If you've just installed
MariaDB, andyou haven't set the root password yet, the password will be blank,so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] Y
New password: Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
نصب Zabbix Server به همراه MySQL
قبل از شروع نصب احتیاج هست که ما ریپازیتوری زبیکس را با استفاده از دستور زیر فعال کنیم.
برای CentOS 7 و Red Hat 7
کد PHP:
# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
# yum clean all
برای CentOS 8 و Red Hat 8
کد PHP:
# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm
# dnf clean all
برای CentOS 7 و Red Hat 7
کد PHP:
# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get zabbix-sender zabbix-java-gateway -y
برای CentOS 8 و Red Hat 8
کد PHP:
# dnf install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get zabbix-sender zabbix-java-gateway -y
ویرایش Timezone فایل PHP
فایل zabbix.conf را از مسیر زیر و با استفاده از ادیتور مورد علاقه خود باز کنید :
کد PHP:
# vi /etc/httpd/conf.d/zabbix.conf
کد PHP:
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
# php_value date.timezone Europe/Riga
کد PHP:
php_value date.timezone Asia/Tehran
کد PHP:
# systemctl restart httpd
انجام تنظیمات اولیه دیتابیس Zabbix و ایجاد دیتابیس مورد نیاز
در ابتدا ما نیاز داریم یک دیتابیس (zabbixdb) و یک یوزر (zabbixuser) برای زبیکس ایجاد کنیم.
کد PHP:
shell> mysql -uroot -p<root_password>
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '<password>';
mysql> quit
کد PHP:
....identified by '123456';
کد PHP:
# rpm -q zabbix-server-mysql
zabbix-server-mysql-4.4.1-1.el7.x86_64
کد PHP:
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
تنظیمات database در سرور zabbix
اکنون ما نیاز داریم که تنظیمات دیتابیس را از طریق فایل zabbix_server.conf و از مسیر زیر انجام دهیم.
کد PHP:
# vi /etc/zabbix/zabbix_server.conf
کد PHP:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=<password>
تنظیمات SELinux و firewall برای Zabbix
در صورتی که به selinux و Firewall رو سیستمتان نیاز ندارید می توانید به سادگی و با استفاده از دستورات زیر آنها را غیر فعال کنید:
غیر فعال کردن selinux :
با استفاده از یک ادیتور متن فایل کانفیگ زیر را باز کنید.
کد PHP:
# vi /etc/selinux/config
کد PHP:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
غیر فعال کردن firewall :
برای غیر فعال کردن فایروال از دستورات زیر استفاده کنید.
کد PHP:
# systemctl disable firewalld
# systemctl stop firewalld
تنظیمات Firewall و SELinux در صورتی که فعال باشد :
در غیر اینصورت باید تنظیمات زیر را به منظور امکان دسترسی به زبیکس، در فایروال و .. انجام دهید :
برای SELinux :
کد PHP:
# setsebool -P httpd_can_network_connect=1
# setsebool -P httpd_can_connect_zabbix=1
# setsebool -P zabbix_can_network=1
کد PHP:
# firewall-cmd --permanent --add-service=http
success
# firewall-cmd --permanent --zone=public --add-port=10051/tcp
success
# firewall-cmd --permanent --zone=public --add-port=10050/tcp
success
# firewall-cmd --reload
success
کد PHP:
# systemctl enable zabbix-server && systemctl start zabbix-server
# systemctl enable zabbix-agent && systemctl start zabbix-agent
کد PHP:
# systemctl start zabbix-serverJob for zabbix-server.service failed because a configured resource limit was exceeded. See "systemctl status zabbix-server.service" and "journalctl -xe" for details.
تنظیمات zabbix از طریق کنسول وب :
در مرورگر خود آدرس http://<server_ip_or_name>/zabbix را وارد کنید. شما باید صفحه اول نصب کنسول وب زبیکس را مشاهده کنید.
روی دکمه Next step کلیک کنید.
در این مرحله مطمئن شوید تمام نرم افزارها و پیش نیازها OK باشد :
نمونه پیش نیاز های بالا :
پیش نیازهای اختیاری هم ممکن است در لیست موجود باشد. اگر مشکلی در پیش نیازهای اختیاری باشد به رنگ نارنجی و به همراه یک وضعیت هشدار نمایش داده میشود. شما میتوانید ادامه نصب را بدون پیش نیازهای اختیاری هم انجام دهید.
در مرحله ی بعد اطلاعات و توضیحات مربوط به دیتابیس را در این بخش وارد کنید. دقت کنید که دیتابیس زبیکس موجود و ساخته شده باشد :
در بخش بعد اطلاعات و جزئیات سرور زبیکس را وارد کنید و یک نام برای سرورتان انتخاب کنید :
خلاصه تنظیمات را در این صفحه مشاهده کنید :
و اکنون شما کنسول وب zabbix را با موفقیت نصب کردید :
اکنون با استفاده از یوزر و پسورد پیش فرض زبیکس به آن لاگین میکنیم :
کد PHP:
User : Admin
Pass : zabbix
شما با موفقیت وارد داشبورد کاربری Zabbix شدید :
اولین کاری که باید انجام دهید فعال کردن مانیتورینگ برای خود Zabbix Server میباشد. برای این کار از منوی Configuration وارد تب Hosts شده و روی دکمه "Disabled" در هاست zabbix server کلیک کنید. بعد از تایید مشاهده می کنید که هاست enabled خواهد شد. البته در ورژن جدید هاست را به صورت اتوماتیک Enable میکند.
همچنین توصیه میشود مطالعه بفرمایید.
دانلود PDF آموزشی آخرین ورژن مانیتورینگ Zabbix Enterprise Network Monitoring Made Easy
دوره آموزشی مانیتورینگ Zabbix (حرفه ای)
نصب و راه اندازی مانیتورینگ زبیکس به پایان رسید.