Zabbix เป็นซอฟต์แวร์ Monitoring ฟรี, โอเพนซอร์ส, ระดับ Enterprise, ครบครัน, ยืดหยุ่น, ขยายได้ และกระจายตัว (Distributed) ใช้สำหรับ Monitor IT Infrastructure ทั้งหมด Services, Applications และ Server Resources Zabbix เป็นหนึ่งใน Open-source Monitoring Solutions ยอดนิยมที่สุดบนโลก ที่ Monitor พารามิเตอร์ต่างๆ ของ Computer Network และสุขภาพ/ความสมบูรณ์ของ Servers
มันถูกใช้อย่างกว้างขวางสำหรับฟีเจอร์อย่าง Flexible Notification Mechanism ที่อนุญาตให้ผู้ใช้กำหนดค่า E-mail Based Alerts สำหรับ Event เกือบทุกประเภท ทำให้สามารถตอบสนองต่อปัญหา Server ได้รวดเร็ว มันยังมี Reporting และ Data Visualization Tool ที่ยอดเยี่ยม بناءًบนข้อมูลที่จัดเก็บ
สำคัญคือ Reports และ Statistics ทั้งหมดที่ Zabbix รวบรวม รวมถึง Configuration Parameters เข้าถึงได้ผ่าน Web-based Frontend หมายความว่าคุณสามารถ Monitor ระบบของคุณจากที่ไหนก็ได้
ข้อกำหนด
ก่อนเริ่ม ตรวจสอบให้แน่ใจว่าข้อกำหนดต่อไปนี้ได้รับการปฏิบัติตัวแล้ว:
- RHEL 8 ด้วย Minimal Installation
- RHEL 8 พร้อม RedHat Subscription เปิดใช้งาน
- RHEL 8 พร้อม Static IP Address
บทช่วยสอนนี้จะเน้นที่วิธีติดตั้งรุ่นล่าสุดของ Zabbix 4.2 Server บน RHEL 8 พร้อม Database MySQL/MariaDB เพื่อจัดเก็บข้อมูล PHP และ Apache Web Server เป็น Web Interface หลัก
ขั้นตอนที่ 1: ติดตั้ง Apache และ PHP Packages
1. เพื่อเริ่มต้น คุณต้อง Enable EPEL 8 Repository ซึ่งมี Dependencies บางส่วนสำหรับ Zabbix จากนั้นติดตั้ง Apache Web Server ที่ให้โดยแพ็กเกจ HTTPD, PHP Interpreter, PHP-FPM (PHP FastCGI Process Manager) และ Modules ที่จำเป็นอื่นๆ ดังนี้:
# dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm # dnf install httpd php php-fpm php-mysqlnd php-ldap php-bcmath php-mbstring php-gd php-pdo php-xml
2. เมื่อติดตั้งเสร็จ ให้ Start HTTPD และ PHP-FPM Services สำหรับตอนนี้ แล้ว Enable ให้เริ่มอัตโนมัติที่ System Startup (หลัง Reboot ทุกครั้ง) และตรวจสอบว่ามัน Up และ Running ดังนี้:
# systemctl start httpd # systemctl enable httpd # systemctl status httpd # systemctl start php-fpm # systemctl enable php-fpm # systemctl status php-fpm
ขั้นตอนที่ 2: ติดตั้ง MariaDB Database และ Library
Zabbix ใช้ Database MySQL เพื่อจัดเก็บข้อมูล อย่างไรก็ตาม บน RHEL 8 Database MariaDB ได้รับการรองรับโดย Default เป็น Drop-in Replacement สำหรับ MySQL
3. เพื่อติดตั้ง MariaDB Server, Client และ Library Packages ใช้คำสั่งต่อไปนี้:
# dnf install mariadb mariadb-server mariadb-devel
4. ต่อไป Start MariaDB Service สำหรับตอนนี้ แล้ว Enable ให้เริ่มอัตโนมัติที่ System Startup และตรวจสอบว่ามัน Up และ Running โดยเช็ค Status ตามที่แสดง:
# systemctl start mariadb # systemctl enable mariadb # systemctl status mariadb
5. เมื่อ MariaDB Database Server Up และ Running แล้ว คุณต้อง Secure มันโดยรันสคริปต์ mysql_secure_installation ซึ่งช่วย Implement Security Recommendations ที่มีประโยชน์บางอย่าง เช่น การลบ Anonymous Users, ปิด Root Login แบบ Remote, ลบ Test Database และการเข้าถึงมัน และ Apply การเปลี่ยนแปลงทั้งหมด
# mysql_secure_installation
จากนั้นคุณจะถูก Prompt ให้ตัดสินใจว่าจะดำเนินการอะไร ตามที่แสดงใน Screenshot ต่อไปนี้
Secure MariaDB Server in RHEL 8
6. ตอนนี้ Login เข้า Database เพื่อเข้าถึง MariaDB Shell เพื่อสร้าง Database สำหรับ Zabbix ตามที่แสดง:
# mysql -uroot -p MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin; MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'password'; MariaDB [(none)]> quit;
ขั้นตอนที่ 3: ติดตั้งและกำหนดค่า Zabbix Packages
7. เมื่อทุกอย่างติดตั้งเสร็จ ตอนนี้ถึงเวลาติดตั้งรุ่นล่าสุดของ Zabbix Packages จาก Zabbix Official Repository ดังนี้:
# rpm -Uvh https://repo.zabbix.com/zabbix/4.2/rhel/8/x86_64/zabbix-release-4.2-2.el8.noarch.rpm # dnf clean all
8. จากนั้นติดตั้ง Zabbix Server, Web Frontend, Agent Packages ด้วยคำสั่งต่อไปนี้:
# dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
9. เมื่อติดตั้งเสร็จ คุณต้อง Import Initial Schema และ Data เข้า Zabbix Database ที่คุณสร้างในขั้นตอนก่อนหน้า (สังเกตว่าคุณจะถูก Prompt ให้ป้อน Password ของ Zabbix Database User)
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix
10. ตอนนี้ กำหนดค่า Zabbix Server Daemon ให้ใช้ Database ที่คุณสร้างไว้ โดยแก้ไขไฟล์ /etc/zabbix/zabbix_server.conf
# vim /etc/zabbix/zabbix_server.conf
ค้นหาและอัปเดตค่าของ Configuration Options ต่อไปนี้ เพื่อสะท้อน Database Settings ของคุณ (Uncomment Options ที่ถูก Comment ออก และตั้งค่าที่ถูกต้อง) ดังนี้:
DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=database-passwod-here
Configure Zabbix Database Settings
Save การเปลี่ยนแปลงในไฟล์ และปิดมัน
11. ต่อไป กำหนดค่า PHP สำหรับ Zabbix Frontend โดยแก้ไขไฟล์ /etc/php-fpm.d/zabbix.conf ด้วย Text-based Editor ที่คุณชอบ
# vim /etc/php-fpm.d/zabbix.conf
ค้นหาบรรทัดต่อไปนี้ และ Uncomment มัน (โดยลบตัวอักษร “;” ที่ต้นบรรทัด) เพื่อตั้ง Timezone ให้ถูกต้องสำหรับ Server ของคุณ
php_value date.timezone Africa/Kampala
12. ณ จุดนี้ คุณต้อง Restart HTTPD และ PHP-FPM Services เพื่อนำการเปลี่ยนแปลงล่าสุดไปใช้ ก่อน Start Zabbix Service
# systemctl restart httpd php-fpm
13. จากนั้น Start Zabbix Server และ Agent Processes และ Enable ให้ Auto-start ที่ System Boot ดังนี้ สังเกตว่า Agent นี้ใช้บน Localhost หากต้องการ Monitor Remote Servers คุณต้องติดตั้ง Agents บนพวกมัน และกำหนดค่า Server ให้ Query พวกมัน
# systemctl start zabbix-server zabbix-agent # systemctl enable zabbix-server zabbix-agent
นอกจากนี้ ตรวจสอบว่า Zabbix Server Up และ Running เรียบร้อยด้วยคำสั่งต่อไปนี้:
# systemctl status zabbix-server
Check Zabbix Server Status
เช่นกัน ตรวจสอบว่า Agent Process Up และ Running
# systemctl status zabbix-agent
Check Zabbix Agent Status
ขั้นตอนที่ 4: ติดตั้งและกำหนดค่า Zabbix Web Frontend
14. ด้วย Zabbix Server ที่ Up และ Running เปิด Web Browser และชี้ไปที่ URL ต่อไปนี้เพื่อเข้าถึง Web Frontend Installer
https://SERVER_FQDM/zabbix OR https://SERVER_IP/zabbix
หลังกด Enter คุณจะถูก Redirect ไป Welcome Page ตาม Screenshot ต่อไปนี้ คลิก Next Step เพื่อดำเนินต่อ
Zabbix Welcome Page
15. ต่อไป Installer จะเช็ค Pre-requisites หากทุกอย่าง OK (เลื่อนลงเพื่อดู Requirements เพิ่มเติม) คลิก Next Step เพื่อดำเนินต่อ
Check Zabbix Pre-requisites
16. จากนั้น กำหนดค่าการเชื่อมต่อ Zabbix Database (สังเกตว่าเป็น Database ที่คุณสร้างใน Step 2 ข้างต้น) เลือก Database Type, ป้อน Database Host, Database Port, Database Name และ Database User และ Password ของ User
Zabbix Database Settings
17. ต่อไป ให้รายละเอียด Zabbix Server (Hostname หรือ Host IP Address และ Port Number ของ Zabbix Server) คุณยังสามารถตั้งชื่อสำหรับการติดตั้งได้ซึ่งเป็น Optional คลิก Next Step เพื่อดู Pre-installation Summary
Zabbix Server Details
18. จากหน้า Pre-installation Summary คลิก Next Step เพื่อสร้าง Frontend Configuration File ตามข้อมูลที่แสดง
Zabbix Pre-Installation Summary
19. เพื่อ Complete การกำหนดค่าและติดตั้ง Zabbix Frontend Interface คลิก Finish และ Installer จะ Redirect คุณไป Login Page ตาม Screenshot ถัดไป
Zabbix Frontend Installed
20. ที่ Login Page ใช้ Username Admin และ Password zabbix เพื่อ Login ตาม Screenshot ต่อไปนี้
Zabbix Frontend Login
21. หลัง Login สำเร็จ คุณจะเข้าสู่ Zabbix Web Frontend's Monitoring Dashboard's Global View ซึ่งแสดง Sample ของ System Information, Local Time และอื่นๆ
Zabbix Dashboard
22. สุดท้าย Secure Zabbix Super Administrator Account โดยเปลี่ยน Default Password ไปที่ Administration แล้ว Users ในรายการ Users ภายใต้ Alias คลิกที่ Admin เพื่อเปิด User Details เพื่อแก้ไข
ภายใต้ User Details ค้นหาช่อง Password คลิก Change password ป้อน Secure Password และยืนยัน แล้วคลิก Update เพื่อบันทึก Password ใหม่ของ Admin Account
Change Zabbix Admin Password
ขอแสดงความยินดี! คุณติดตั้งรุ่นล่าสุดของ Zabbix Monitoring Software บน Server RHEL 8 ของคุณสำเร็จแล้ว หากมีคำถาม ติดต่อเราผ่าน Feedback Form ด้านล่าง และเพื่อข้อมูลเพิ่มเติม ดู Zabbix Documentation