سلام : )
قبل از اینکه بریم سراغ اصل داستان، خواستم بگم این اولین مقالهی رسمی منتشر شدهی من، توی ویرگول هستش. خوشحال میشم اگر نکته یا موردی بود بهم فیدبک بدید. : )
این رو هم بگم، این مقاله به کار افرادی میخوره که مبتدی هستن و ممکنه از حوصله ی شمایی که حرفه ای هستی خارج باشه. در هر صورت از اینکه وقت میزاری میخونی ممنون هستم و منتظر نظراتت. : )
خب، بریم سراغ اصل داستان : )
من برای سرورها که روی اونها CentOS 7 نصب بود، به زبیکس 4.0LTS به همراه دیتابیس MySQL و وب سرور Apache احتیاج داشتم. بنابراین برای دانلود از لینک پایین استفاده کردم.
توی مرحله اول، باید یک سری از سرویسها رو روی سرور خودمون داشته باشیم. مثل Apache، PHP ، MySQL
خب، حالا برای نصب Apache باید از دستور زیر استفاده کنیم.
yum install httpd
بعد از اینکه آپاچی نصب شد، با دو تا دستور بعدی اجرا و اکتیو میکنیم.
systemctl start httpd systemctl enable httpd
قدم بعدیمون نصب و کانفیگ PHPهستش.
اول باید بیایم، با دستور زیر مخازن epel رو نصب کنیم.
yum install epel-release
حالا توی این مرحله PHP و بخشهای مرتبط با PHP رو نصب میکنیم.
yum install php php-mysql php-gd php-pear phpmyadmin
بعد از اینکه PHP رو نصب کردیم، باید کانفیگش رو انجام بدیم. پس با ویرایشگر Vi باید فایل PHP رو باز کنیم و اطلاعات زیر رو ویرایش کنیم.
Max_execution_time=600
Max_input_time=600
Memory_limit=256M
Post_max_size=32M
Upload_max_filesize=16M
Date.timezone=Asia/Tehran
با putty یا shell دستور زیر رو مینویسیم، تا فایل PHP مون با Vi باز بشه.
vi /etc/php.ini
و تغییرات مورد نظرمون رو انجام میدیم. در نهایت ذخیره میکنیم.
حالا توی این مرحله برای اینکه سرویس Apache رو restart کنیم، باید دستور زیر رو بنویسیم.
systemctl restart httpd
قدم بعدیمون نصب MariaDB هستش.
با دستور زیر، نسخهی mariadb-server رو نصب میکنیم.
yum install mariadb-server
بعد از نصب، mariadb رو اجرا و اکتیو میکنیم.
systemctl start mariadb systemctl enable mariadb
نصب mariadb که تموم شد، برای اینکه بتونیم بهش کانکت بشیم باید یوزر پسورد داشته باشیم. برای اینکار هم از دستور زیر استفاده میکنیم.
mysql_secure_installation
حالا از ما میخواد که پسورد روت سیستممون رو وارد کنیم. میتونیم پسوردی وارد نکنیم و به زدن دکمهی enter بسنده کنیم.
حالا Enter رو که بزنیم، از ما سوال میپرسه میخواید روی Root پسورد رو وارد کنید؟ و با تایپ حرف Y تایید می کنیم.
Set root password? [Y/n] Y
حالا منتظر هستش که پسوردمون رو وارد کنیم.
New password: Re-enter new password:
سوال بعدی که از ما میپرسه اینه که یوزرهای ناشناس رو پاک کنه؟ با تایپ حرف Y، تایید میکنیم که یوزرهایی که پسورد ندارند نباید به دیتابیس وصل بشند.
Remove anonymous users ? [Y/n] Y
بعد سوال میپرسه اتصال راه دور رو به دیتابیس محدود کنم؟ ما هم تایید میکنیم.
Disallow root login remotely ? [Y/n] Y
حالا میگه، میخوای دیتابیس تست را پاک کنی؟ با تایپ حرف Y تایید می کنیم.
Remove test database and access to it ? [Y/n] Y
در نهایت به جداول اجازهی reload میدیم.
Reload privilege tables now ? [Y/n] Y
بعد از تمام مراحل بالا، برای اینکه ببینیم به دیتابیس وصل میشیم دستور زیر رو مینویسیم.
mysql –u root –p
از ما میخواد پسوردی که برای دیتابیس ساختیم رو وارد کنیم.
Enter password:
اگه سرویس بدون مشکلی نصب شده باشه، باید دستور زیر رو ببینیم.
MariaDB [{none}] >
توی این مرحله باید دیتابیس بسازیم. دستور زیر، دستور ساختن یه دیتابیس هستش.
create database zabbixdb character set utf8;
نکته: به جای zabbixdb هر اسمی می تونیم وارد کنیم.
بعد از اینکه دیتابیسمون رو ساختیم، باید براش یه یوزر و پسورد هم تعریف کنیم، تا زبیکس بتونه به دیتابیس وصل بشه.
grant all privileges on zabbixdb.* to zabbix@'localhost' identified by 'zabbixpass';
بعد از grant all privileges on اسم دیتابیسمون رو مینویسیم. بعد از to هم، اسم یوزر و لوکال هاستمون رو مینویسیم. و به کمک identified پسورد دیتابیسمون رو مینویسیم.
حالا یه بروزرسانی روی MySQL انجام میدیم.
flush privileges;
کار ما اینجا با دیتابیس تموم میشه، برای خارج شدن از دستور زیر استفاده میکنیم.
Exit;
حالا به مرحلهی نصب زبیکس میرسیم.
rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
با دستور زیر، نسخهی سروری و نسخهی وب zabbix رو نصب میکنیم.
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent
حالا باید بیایم، templateها رو توی دیتابیبس import کنیم. پس به مسیر زیر میریم.
cd /usr/share/doc/
حالا ls میگیریم و وارد پوشه ... zabbix-server-mysql میشیم. ( به جای … عدد ورژنی که نصب کردیم هستش)
cd zabbix-server-mysql ….
بازم ls میگیریم، حالا گزینهی create.sql.gz رو میبینیم. باید templateهایی که داخل این فایل هستن رو به دیتابیسمون اضافه کنیم.این کار رو با دستور زیر انجام میدیم.
در واقع این دستور میاد از حالت فشرده خارج میکنه.
gunzip create.sql.gz
بعد دستور زیر رو مینویسیم.
mysql –u root -p zabbixdb < create.sql
حالا از ما پسورد دیتابیسمون رو میخواد، اون رو وارد میکنیم.
Enter password:
بعد از ساخت دیتابیسمون، کانفیگ میکنیم و اطلاعاتش رو توی فایل zabbix-server.conf وارد میکنیم.
vi /etc/zabbix/zabbix_server.conf
اطلاعات زیر رو ویرایش میکنیم.
DBHost=localhost
DBName=zabbixdb
DBUser=zabbix
DBPassword=zabbixpass
تغییرات رو که انجام دادیم، ذخیرشون میکنیم. با دستور بعد میایم زبیکس سرورمون رو start میکنیم.
systemctl start zabbix-server
اینجا توی این مرحله، باید selinux رو که فعال هستش، بیایم غیرفعال کنیم. دستور بعد رو مینویسیم.
sestatus
وقتی این دستور رو وارد کردیم میبینیم که:
seluinux status : enabled
هستش. برای غیر فعال کردنش باید با ویرایشگر Vi تغییرات رو اعمال کنیم.
vi /etc/sysconfig/selinux
و
SELINUX=enforcing
رو به
SELINUX=disabled
تغییر میدیم. حالا فایلمون رو ذخیره میکنیم. بعد از ذخیره کردن برای اینکه تغییراتی که انجام دادیم اعمال بشه، سیستم رو با یکی از دو دستور
Reboot
یا
Init 6
ریست میکنیم.
سیستم که بالا اومد، یک بار دیگه سرویس zabbix server رو start میکنیم.
systemctl start zabbix-server
توی این مرحله چند مورد از فایل zabbix_agentd_conf رو باید تغییر بدیم.
vi /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1
serverActive=127.0.0.1
Hostname= hostname
چهار خط بالا رو که بررسی کردیم و تغییرشون دادیم ذخیره میکنیم و بعد میایم zabbix agent مون رو start و enable میکنیم.
systemctl start zabbix-agent systemctl enable zabbix-agent
علاوه بر فایل php.ini مون که timezone رو تغییر دادیم، باید بیایم توی فایل zabbix.conf هم timezone رو با Tehran ست کنیم.
با دستور زیر وارد فایل zabbix.conf میشیم.
vi /etc/httpd/conf.d/zabbix.conf
و خط
# php_value date.timezone
رو پیدا میکنیم و خط زیر رو جایگزینش میکنیم. ( علامت # رو پاک نمیکنیم. )
# php_value date.timezone Asia/Tehran
بعد از اینکه مرحله بالا هم تموم شد، میریم سراغ نصب فایروال و کانفیگش رو انجام میدیم.
yum install firewalld
فایروال رو که نصب کردیم، start و فعالش میکنیم.
systemctl start firewalld systemctl enable firewalld
برای زبیکس، نیاز داریم که پورتهای http و https رو باز کنیم. با دستور زیر این دو تا پورت رو برای کارمون باز می کنیم.
firewall-cmd --add-service={http,https} –permanent
اگه اشتباهی توی دستورمون نباشه، کلمه ی Success رو میبینیم.
برای اینکه پورت زبیکس و ترافیک ورودیش رو برای فایروال باز کنیم، دستور زیر رو استفاده میکنیم.
firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent
بازم کارمون رو اگه صحیح انجام بدیم، کلمهی Success رو میبینیم : )
اینجا توی این قدم باید فایروالمون رو reload کنیم.
firewall-cmd --reload firewall-cmd --list-all
بعد میایم، زبیکس سرور رو enable میکنیم. زبیکس ایجنتمون با httpd رو هم restart میکنیم.
systemctl enable zabbix-server systemctl restart zabbix-agent systemctl restart httpd
بعد از تمام مراحل بالا حالا رسیدیم به این قسمت که زبیکس رو با مرورگرمون باز کنیم.
لینک زیر رو توی مرورگر وارد میکنیم. حواسمون باید باشه، در قسمت your ip باید ip خودمون رو وارد کنیم.
http://Your IP/zabbix
حالا دیگه صفحه خوش آمدگویی zabbix رو میبینیم.
توی صفحه خوش امدگویی Next step رو میزنیم تا مارو به صفحهی بعد ببره.
توی این صفحه، زبیکس میاد تمام کارایی که انجام دادیم رو بررسی میکنه. و هرکدوم که صحیح باشه جلوشون یه OK برامون نشون میده. مجدد میایم روی Next step میزنیم تا ما رو به صفحهی بعد ببره.
توی صفحهی Configure DB Connection باید مشخصات دیتابیسمون رو وارد کنیم، تا بتونیم به دیتابیسی که ساختیم وصل بشیم.
Database type = MySQL
Database host = localhost
Database port = 0
Database name = zabbixdb
User = zabbix
Password = your Password
بازم Next step رو میزنیم تا به مرحله ی بعد بریم.
توی صفحه ی zabbix server details، جزئیات زبیکس سرورمون رو وارد میکنیم.
Host = localhost
برای port، پورت پیش فرض زبیکس که 10051 هستش رو میزنیم.
Port = 10051
قسمت name ،hostname zabbix رو براش تعریف میکنیم.
Name = your name
بعد از اینکه تکمیلشون کردیم، روی Next space کلیک میکنیم.
توی مرحله Pre-installation summary یه review از اطلاعات زبیکس رو بهمون نشون میده.
اگر دیدیم، از دید ما مشکلی نداره روی Next step کلیک میکنیم.
و در نهایت از ما برای نصب صحیح تشکر میکنه : )
روی دکمهی Finish میزنیم تا به صفحهی لاگین بریم.
توی این مرحله Username و Password رو وارد میکنیم.
نکته: یوزر پیش فرض Admin و پسورد اون zabbix هستش. روی دکمه sign in میزنیم تا وارد صفحه ی داشبورد زبیکس بشیم.
و تمام : )