引言
Zabbix是一个功能强大的开源监控解决方案,适用于各种规模的企业。它能够监控服务器、网络设备、应用程序等,并提供实时数据、图表和报告,帮助管理员快速定位和解决问题。本文将详细介绍如何在CentOS系统上轻松部署Zabbix监控系统,从入门到实战,帮助您快速上手。
一、Zabbix概述
1.1 什么是Zabbix
Zabbix是一个开源的、免费的、易于理解的、容易应用的监控软件。它适用于企业中各种规模的网络和IT基础设施的监控。
1.2 为什么选择Zabbix
- 功能强大:支持多种监控项、触发器、图形和报告。
- 易于扩展:支持插件和自定义监控项。
- 开源免费:降低企业成本。
二、安装前的系统准备工作
2.1 配置主机名
hostnamectl set-hostname zabbix-server
2.2 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
2.3 关闭SELinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
2.4 配置YUM源
cat << EOF > /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository
baseurl=http://repo.zabbix.com/zabbix/7.0/centos/7/
enabled=1
gpgcheck=0
EOF
2.5 配置时钟同步
yum install ntp -y
systemctl start ntpd
systemctl enable ntpd
2.6 优化系统限制
echo 'fs.file-max = 65536' >> /etc/sysctl.conf
echo 'net.core.somaxconn = 65535' >> /etc/sysctl.conf
sysctl -p
2.7 安装JDK
yum install java-1.8.0-openjdk -y
三、部署LNMP环境
3.1 部署Nginx
yum install nginx -y
systemctl start nginx
systemctl enable nginx
3.2 部署MySQL
yum install mariadb-server -y
systemctl start mariadb
systemctl enable mariadb
mysql_secure_installation
3.3 部署PHP
yum install php php-mysql -y
四、部署Zabbix Server
4.1 安装依赖软件
yum install -y net-snmp net-snmp-utils openipmi openipmi-sysfs
4.2 创建用户
groupadd zabbix
useradd -g zabbix -s /sbin/nologin -M -c "Zabbix user" zabbix
4.3 编译安装zabbix服务
tar -zxf zabbix-7.0.0.tar.gz
cd zabbix-7.0.0
./configure --enable-source-includes --with-mysql --with-openssl --with-pgsql --with-net-snmp --with-openipmi --with-apache --with-nginx
make
make install
4.4 创建数据库用户
mysql -u root -p
CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'zabbix';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
FLUSH PRIVILEGES;
exit
4.5 初始化数据库
cd /usr/local/zabbix
./db_create.sql zabbix zabbix
4.6 复制前端文件
cp -r frontends/* /usr/share/nginx/html/zabbix
4.7 添加系统服务
systemctl start httpd
systemctl enable httpd
4.8 编辑zabbix配置文件
sed -i 's/# Start Zabbix Server/zabbix_server: yes/g' /etc/sysconfig/zabbix-server
sed -i 's/# Start Zabbix Agent/zabbix_agent: yes/g' /etc/sysconfig/zabbix-agent
4.9 启动服务
systemctl start zabbix-server
systemctl start zabbix-agent
systemctl enable zabbix-server
systemctl enable zabbix-agent
4.10 初始化服务
/usr/local/zabbix/bin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf -i
4.11 编译安装zabbixagent2
tar -zxf zabbix_agent2-4.0.0.tar.gz
cd zabbix_agent2-4.0.0
./configure --enable-source-includes --with-mysql --with-openssl --with-pgsql --with-net-snmp --with-openipmi --with-apache --with-nginx
make
make install
4.12 编辑zabbixagent2配置文件
sed -i 's/# Start Zabbix Agent/zabbix_agent2: yes/g' /etc/sysconfig/zabbix-agent2
4.13 启动zabbixagent2
systemctl start zabbix-agent2
systemctl enable zabbix-agent2
五、Zabbix监控中汉化
5.1 修改前端页面语言
sed -i 's/en_US/en_ZN/g' /usr/local/zabbix/share/zabbix.conf.php
5.2 替换字体并解决乱码
yum install wqy-microhei wqy-microhei-oem -y
5.3 重载并验证字体
nginx -s reload
六、Zabbix添加Linux主机监控
6.1 环境准备
确保Zabbix Server和Agent2已安装并启动。
6.2 安装zabbix-agent2
yum install zabbix-agent2 -y
6.3 配置zabbix-agent2
sed -i 's/# Hostname/Hostname = zabbix-agent2/g' /etc/zabbix/zabbix_agent2.conf
sed -i 's/# Server/Server = 192.168.1.100/g' /etc/zabbix/zabbix_agent2.conf
sed -i 's/# ServerActive/ServerActive = 192.168.1.100/g' /etc/zabbix/zabbix_agent2.conf
6.4 启动zabbix-agent2
systemctl start zabbix-agent2
systemctl enable zabbix-agent2
6.5 配置Zabbix-web
sed -i 's/# Zabbix frontend path/IncludeDir = /usr/local/zabbix/share/nginx/html/zabbix/g' /etc/nginx/nginx.conf
6.6 重载并验证配置
nginx -s reload
七、Zabbix添加Windows主机监控
7.1 安装Zabbix-Agent2
cd /usr/local/src
wget https://dlcdn.apache.org/zabbix/zabbix-agent2/zabbix-agent2-4.0.0.Windows.x86_64.zip
unzip zabbix-agent2-4.0.0.Windows.x86_64.zip
cd zabbix-agent2-4.0.0.Windows.x86_64
./install.sh
7.2 启动Zabbix-Agent2
cd /usr/local/zabbix_agent2
./zabbix_agent2c.exe
7.3 服务端测试取值
zabbix_get -s 192.168.1.101 -k system.cpu.load[0]
7.4 配置zabbix-Web
sed -i 's/# Zabbix frontend path/IncludeDir = /usr/local/zabbix/share/nginx/html/zabbix/g' /etc/nginx/nginx.conf
7.5 重载并验证配置
nginx -s reload
八、总结
通过本文的详细步骤,您可以在CentOS系统上轻松部署Zabbix监控系统。Zabbix具有丰富的功能和易用的界面,可以帮助您轻松监控各种网络和IT基础设施。希望本文对您有所帮助!