Zabbix เป็นซอฟต์แวร์โอเพนซอร์ส ที่ใช้สำหรับการตรวจสอบการทำงานของ เน็ตเวิร์คหรือระบบเครือข่าย โดยการตรวจสอบโดยใช้ Zabbix จะได้รับการตรวจสอบเครือข่ายผ่าน SNMP , TCP และ ICMP
สิ่งที่ต้องเตรียมก่อนการติดตั้ง Zabbix 2.2
- แก้ไขไฟล์ SELinux ให้เป็น Disabled โดยแก้ไขที่ /etc/selinux/config และให้ทำการ Reboot เครื่อง 1 ครั้ง ก่อนการติดตั้ง Zabbix
- Apache 1.3.12 ขึ้นไป
- PHP 5.3.0 ขึ้นไป
- MySQL 5.03 ขึ้นไป
- OpenIPMI
- libssh2
- fping
- libcurl
- libiksemel
- net-snmp
ขั้นตอนที่ 1 ติดตั้ง Apache , MySQL และ PHP
ทำการติดตั้ง แพคเกจ
# yum install httpd httpd-devel mysql mysql-server mysql-devel php php-cli php-common php-devel php-pear php-gd php-mbstring php-mysql php-xml
ทำการเปิด เซอร์วิส
# service httpd start
# service mysqld start
ทำการตั้งค่าเริ่มต้น ของ MySQL
# mysql_secure_installation
ขั้นตอนที่ 2 การคอนฟิก Yum Repository
ก่อนการติดตั้ง Zabbix จะต้องคอนฟิกค่า zabbix rpm repository ดังนี้
# rpm -Uvh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
ขั้นตอนที่ 3 การติดตั้ง Zabbix Server กับ MySQL
# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-java-gateway
ขั้นตอนที่ 4 การตั้งค่า คอนฟิก Zabbix ใน Apache
ทำการแก้ไข คอนฟิค ที่ /etc/httpd/conf.d/zabbix.conf เพื่อทำการอัพเดท timezone ของ Zabbix
# vi /etc/httpd/conf.d/zabbix.conf
แล้วทำการมองหา ข้อความและแก้ไขดังนี้ php_value date.timezone Asia/Bangkok
php_value date.timezone Asia/Bangkok
หลังจากทำการแก้ไขเรียบร้อยแล้ว ให้ทำการ รีสตาร์ท เซอร์วิส Apache
# service httpd restart
ขั้นตอนที่ 5 การสร้าง Zabbix MySQL Database
# mysql -u root -p
mysql > CREATE DATABASE zabbix CHARACTER SET UTF8;
mysql > GRANT ALL PRIVILEGES on zabbix.* to 'zabbix'@'localhost' IDENTIFIED BY 'Secret_Password';
mysql > FLUSH PRIVILEGES;
mysql > quit;
หลังจากทำการสรา้งฐานข้อมูลเรียบร้อยแล้ว ให้ทำการนำเข้าฐานข้อมูลที่เป็นค่าเริ่มต้น โดยไฟล์เหล่านี้ สามารถพบที่ /usr/share/doc/zabbix-server-mysql-2.2.6/create/
# mysql -u zabbix -p zabbix < /usr/share/doc/zabbix-server-mysql-2.2.6/create/schema.sql
# mysql -u zabbix -p zabbix < /usr/share/doc/zabbix-server-mysql-2.2.6/create/images.sql
# mysql -u zabbix -p zabbix < /usr/share/doc/zabbix-server-mysql-2.2.6/create/data.sql
ขั้นตอนที่ 6 สตาร์ท เซอร์วิส ของ Zabbix
หลังจากทำการตั้งค่าเสร็จเรียบร้อยแล้ว ให้ทำการ สตาร์ท Zabbix ตามคำสั่งนี้
# service zabbix-server start
sหลังจากทำการ สตาร์ท Zabbix เรียบร้อยแล้วให้ทำการเข้าผ่านหน้าเว็บ
ขั้นตอนที่ 7 การตั้งค่า Zabbix บนเว็บ
โดยการเรียกผ่าน IP หรือ โดเมนเนม
http://localhost/zabbix/setup.php
http://xx.xx.xx.xx/zabbix/setup.php
ถ้าหากไม่สามารถเรียกหน้าเว็บได้ ให้ทำการ แก้ไข firewall ดังนี้
# vi /etc/sysconfig/iptables
โดยการเพิ่ม บรรทัดนี้ลงไป
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
และให้ทำการ รีสตาร์ท เซอร์วิส ของ firewall ตามคำสั่งนี้
# service iptables restart
1 .การตั้งค่า Zabbix ผ่านหน้าเว็บ โดยจะเริ่มต้นที่หน้า Wellcome To Zabbix โดยให้คลิกที่ปุ่ม Next>>
2. การตั้งค่าหน้า Check of pre-requisites เป็นการ Check ว่าระบบต้องการ แพคเกจ เพิ่มหรือไม่ ถ้าขึ้น OK ทั้งหมด ให้คลิกที่ปุ่ม Next>>
3. การตั้งค่าหน้า Configure DB connection ให้ทำการใส่รายละเอียดของ ฐานข้อมูล ในขั้นตอนที่ 5 และ คลิก Test connection ถ้าสามารถเชื่อมต่อกับฐานข้อมูลได้ จะปรากฏ ข้อความขึ้นว่า OK และให้คลิกปุ่ม Next>>
4. การตั้งค่าหน้า Zabbix server details เป็นการกำหนดชื่อ Host , Port และ Name เมื่อทำการกรอกรายละเอียดเรียบร้อยแล้ว ให้คลิกปุ่ม Next>>
5. การตั้งค่าหน้า Pre-Installation summary เป็นการบอกรายละเอียดต่างๆ ที่ได้กำหนดมาตั้งแต่หน้าแรก เมื่อตรวจสอบดูแล้วว่าถูกต้อง กดปุ่ม Next>>
6. การตั้งค่าหน้า Install เป็นการบอกว่า ถ้าต้องการแก้ไข ไฟล์คอนฟิก ให้ไปแก้ไขที่ /etc/zabbix/web/zabbix.conf.php คลิกปุ่ม Finish เพื่อสิ้นสุดการติดตั้ง
การเข้าสู่ Zabbix
Username : admin
Password : zabbix
Note * หากเข้าสู่ระบบแล้ว พบ ข้อความ ” Zabbix server is not running: the information displayed may not be current ” ดังรูป
ให้ทำการ อัพเดท เล็กน้อยที่ไฟล์ zabbix_server.conf โดยการค้นหา และแก้ไขดังนี้
# vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
–> คือ Password ในการเชื่อต่อ ฐานข้อมูล ของ Zabbix
และทำการ รีสตาร์ท เซอร์วิส ของ Zabbix ตามคำสั่งนี้
# service zabbix-server restart
การ Configuration Zabbix Agent บน CentOS 6.5 x86_64 (64 bit)
หลังจากที่ได้ติดตั้ง Zabbix Server และ Zabbix Agent ในขั้นตอนที่ 2 และขั้นตอนที่ 3
Zabbix Agent คือ ซอต์ฟแวร์เพิ่มเติมที่ติดตั้งหลังจากติดตั้ง Zabbix Server เพื่อใช้ในการ Monitor ตัว Zabbix Server
แบ่งเป็นสองกรณีคือ
Passive Check คือ Zabbix Agent จะส่งข้อมูลหาฝั่ง Server เมื่อมีการร้องขอ
Active Check คือ Zabbix Agent จะส่งข้อมูลหาฝั่ง Server เป็นระยะๆ
ขั้นตอนที่ 1 การตั้งค่า Zabbix Agent
# vi /etc/zabbix/zabbix_agentd.conf
ให้ค้นหา “Server=” คือ Zabbix Server IP ลงไป เช่น Server=127.0.0.1
และค้นหา “Hostname=” คือ Hostname ของ Client ใส่ Hostname=Server1
Note * ถ้าใช้ Editor vi ให้กดเครื่องหมาย “/” 1 ครั้งแล้วพิมคำที่ต้องการค้นหาเช่น /Server=
แล้วใช้ตัว “n” เพื่อค้นหาคำถัดไป
ขั้นตอนที่ 2 การ Start และ Stop Service ของ Zabbix Agent
คำสั่ง Start
# /etc/init.d/zabbix-agent start
คำสั่ง Stop
# /etc/init.d/zabbix-agent stop
การเพิ่ม Host ใน Zabbix Server สำหรับ Monitor
ขั้นตอนที่ 1 การเข้าหน้าจอ เพิ่ม Host
กด Configuration
กด Hosts
กด Create Host
ดังรูปด้านล่าง
ขั้นตอนที่ 2 การใส่รายละเอียด
ช่อง Hostname คือ Host ที่ต้องการ Monitor
ช่อง Visible name คือ ชื่อที่จะแสดงใน Zabbix
ช่อง Group คือ กลุ่มของ Host ที่จะให้อยู่
ช่อง Interface นั้น ชนิดของ Host Interface ที่รองรับคือ Agent SNMP JMX และ IPMI
IP address คือ Ip ของเครื่องที่ Monitor
DNS name คือ ชื่อของ DNS ที่ Monitor
Connect to คือ สามารถเลือกได้ว่าจะให้ติดต่อทาง IP หรือ DNS * แนะนำ IP
Port คือ Port ช่องทางของเครื่องที่จะ Monitor * Zabbix Agent ใช้ 10050
Status คือ ให้เลือกว่าจะ Monitor หรือ Not Monitor
ขั้นตอนที่ 3 เลือก Template ของเครื่อง Monitor
กด Template
กด Select
เลือก Template ที่ต้องการ
กด Select
หลังจากเลือก Template แล้ว
กด Add แล้วจะได้ Template อยู่ทางด้านบน
กด Save
* Note สามารถ กด Unlink เพื่อเป็นการลบ Template ออก
หลังจากที่กด Save แล้วก็จะได้ Server ที่จะ Monitor
* Note ในทีนี้คือ Monitor ของตัว Zabbix Server เอง ซึ่ง การ เพิ่ม Host ที่เป็น Snmp JMX และ IPMI มีขั้นตอนเหมือนกันสามารถเลือกประเภทได้ในหัวข้อ การเพิ่ม Host ใน Zabbix Server สำหรับ Monitor ในขั้นตอนที่ 2