CentOS7.x编译安装zabbix4.0
编译安装zabbix
Zabbix简介
Zabbix 是一个企业级的分布式开源监控方案。
Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。这些功能使得Zabbix成为容量规划的理想方案。
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
Zabbix支持主动轮询和被动捕获。Zabbix所有的报告、统计信息和配置参数都可以通过基于Web的前端页面进行访问。基于Web的前端页面可以确保您从任何方面评估您的网络状态和服务器的健康性。适当的配置后,Zabbix可以在IT基础架构监控方面扮演重要的角色。对于只有少量服务器的小型组织和拥有大量服务器的大型公司也同样如此。
Zabbix是免费的。Zabbix是根据GPL通用公共许可证第2版编写和发行的。这意味着它的源代码都是免费发行的,可供公众任意使用。
Zabbix基于LAMP架构,或者LNMP架构进行工作。
Zabbix功能点:数据收集,灵活的阀值定义,高度可配置化的告警,实时图表绘制,Web监控功能,丰富的可视化选项,历史数据存储,配置简单,使用模板,网络发现,快捷的Web界面,Zabbix API,权限管理系统,功能强大,易于扩展的agent,二进制代码,使用Zabbix proxy代理服务器,使得远程监控更简单。
系统环境
# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core)
# uname -r
3.10.0-957.el7.x86_64
# getenforce
Disabled
# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
下载zabbix源码包
https://www.zabbix.com/cn/download_sources 可以在此页面找到想要的zabbix源码包。
# tar xf zabbix-4.0.6.tar.gz
安装依赖包
# yum install gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel net-snmp-devel libevent-devel -y
创建zabbix相关的用户
# groupadd --system zabbix
# useradd --system -g zabbix -d /application/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
创建相关zabbix目录
# mkdir -m u=rwx,g=rwx,o= -p /application/zabbix
# chown zabbix:zabbix /application/zabbix
创建默认数据库
create database zabbix default character utf8; #创建库
grant all privileges on zabbix.* to zabbix@'localhost' identified by '123456'; #授权库
use zabbix #切换到zabbix库
导入默认的数据库文件
mysql> source /mnt/zabbix-4.0.6/database/mysql/schema.sql
mysql> source /mnt/zabbix-4.0.6/database/mysql/images.sql
mysql> source /mnt/zabbix-4.0.6/database/mysql/data.sql
./configure --prefix=/application/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
make && make install
配置zabbix配置文件
# egrep -v '^$|^#' /application/zabbix/etc/zabbix_agentd.confLogFile=/tmp/zabbix_agentd.log
Server=10.0.0.100
ServerActive=10.0.0.100
Hostname=Zabbix server
Include=/application/zabbix/etc/zabbix_agentd.conf.d/*.conf
# egrep -v '^$|^#' /application/zabbix/etc/zabbix_server.confLogFile=/tmp/zabbix_server.log
DBHost=10.0.0.100
DBName=zabbix
DBUser=zabbix
DBPassword=qwer 1234
DBSocket=/application/mysql/mysql.sock
Timeout=4
LogSlowQueries=3000
Include=/application/zabbix/etc/zabbix_server.conf.d/*.conf
复制默认zabbix-web页面
# pwd
/mnt/zabbix-4.0.6/frontends/php
# cp -rf ./* /application/nginx/html/Zabbix #复制到nginx的html目录下
Zabbix服务就可以启动了
/application/zabbix/sbin/zabbix_agentd
/application/zabbix/sbin/zabbix_server
故障问题
问题一:找不到共享库
ln -s /application/mysql/lib/libmysqlclient.so.20 /usr/local/lib/libmysqlclient.so.20 #find找到此库,然后创建软连接
# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/lib #添加此行信息
# /sbin/ldconfig -v #更新配置信息
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'qwer 1234' WITH GRANT OPTION;
php编译安装后不读取php.ini信息
通过phpinfo查看到是php.ini路径不对
将php.ini放到/application/php-7.2.16/lib下就正常访问了
php.ini配置文件调整
根据其实页面zabbix起始页面的报错,将php.ini信息改成对应的参数即可。
遗留问题
server无法监控本机agent
