共计 2610 个字符,预计需要花费 7 分钟才能阅读完成。
Zabbix 是一个基于 WEB 界面提供分布式系统监视以及网络监视功能的企业级开源解决方案,如果您手里要需要管理多台服务器,使用 Zabbix 来监控非常合适。Zabbix 由 2 部分构成,Zabbix server 与可选组件 zabbix agent。
Zabbix server 需要用到 PHP + Mysql 支持,(SQLite、PostgreSQL 等数据库也可以),由于服务器已经安装了OneinStack(Linux + Nginx+ MySQL+ PHP)环境,为了当前环境不受到影响,所以选择源码编译方式安装 Zabbix server
1. 编译 Zabbix server & agent
# 安装各种依赖
yum -y install gcc gcc-c++ curl-devel mysql-devel curl-devel net-snmp net-snmp-devel
#创建用户 & 用户组
groupadd zabbix
useradd -g zabbix zabbix
#下载源码,可从官方下载最新版
wget http://soft.xiaoz.org/linux/zabbix-3.4.4.tar.gz
#解压
tar -zxvf zabbix-3.4.4.tar.gz && cd zabbix-3.4.4
#编译安装
./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2
make install
注意事项:
xiaoz 在写这篇文章的时候 Zabbix 最新稳定版为 3.4
,可以在官方https://www.zabbix.com/download 找到最新的源码包
如果编译的时候提示“checking for mysql_config… configure: error: MySQL library not found”这样的报错,这种情况可以指定 mysql_config
位置,比如:
# 查找 mysql_config 位置
find / -name 'mysql_config'
#指定位置
--with-mysql=/usr/local/mysql/bin/mysql_config
如果编译的时候依然有报错,请根据实际报错情况搜索处理。CentOS 7 编译安装 Zabbix server 后,配置文件路径如下:
/usr/local/etc/zabbix_server.conf
/usr/local/etc/zabbix_agentd.conf
2. 导入数据库
需要自己创建一个数据库(略过),并将源码包里面有 3 个数据库文件(位于zabbix-3.4.4/database/mysql
),一定要按照下面的顺序依次导入:
├─ zabbix-3.4.4/database/mysql
├─ schema.sql
├─ images.sql
└─ data.sql
修改配置文件 /usr/local/etc/zabbix_server.conf
填写正确的数据库账号、密码等信息,然后输入 zabbix_server && zabbix_agentd
启动 Zabbix server 和 Zabbix agent
3. 安装 WEB 界面
WEB 界面使用 PHP 开发,所以您需要新建一个站点,PHP 源码位于 zabbix-3.4.4/frontends/php
将里面的所有源码拷贝到您站点目录下,访问您的域名:http://domain.com/
输入 Zabbix Server 的一些基本信息即可完成,安装成功后会看到如下界面。用户名是Admin
,密码是zabbix
,请登录后务必修改。
设置中文
Zabbix 默认界面是英文语言,可以在个人中心设置为中文语言,方便管理,如下图。
中文乱码?
打开自己的电脑 C:\Windows\Fonts
随便拖一个中文语言字体出来,比如 simkai.ttf
上传至站点 fonts
目录下,替换原来的默认字体。
# 对原来的字体备份
mv DejaVuSans.ttf DejaVuSans.ttf.bak
#对新上传的字体命名
mv simkai.ttf DejaVuSans.ttf
4. 开机自动启动
先将 Zabbix 注册为服务,并赋予权限,再设置开机启动,执行下面的命令即可:
cd zabbix-3.4.4
cp misc/init.d/tru64/zabbix_server /etc/init.d/zabbix_server
cp misc/init.d/tru64/zabbix_agentd /etc/init.d/zabbix_agentd
#赋予权限
chmod 755 /etc/init.d/zabbix_*
编辑 zabbix_server
、zabbix_agentd
这两个文件,在头部加入:
#chkconfig: 35 95 95
#description:zabbix Agent server
注册为服务,并开机启动:
chkconfig --add zabbix_server
chkconfig --add zabbix_agentd
chkconfig zabbix_server on
chkconfig zabbix_agentd on
至此安装已基本完成,如果需要监控其它服务器数据,可通过官方 RPM 包方式仅安装客户端即可。客户端不需要 PHP/ 数据库支持,推荐官方 RPM 包方式安装客户端,较为便捷。
5. 扩展阅读
6. 总结
主机商一般默认带有服务器数据监控功能,但如果您手里有多台服务器且不在一个服务商,管理起来很不方便,而且出现故障无法及时知晓,Zabbix 正好可以完美解决这个问题,Zabbix 不仅数据详细,且支持多种不同动作及通知等,以及开放的 API,可以在现有基础上不断定制和强化。Zabbix 功能实在是太强大了,xiaoz 连皮毛都还未掌握。
此文部分内容参考了:4 从源代码安装 [Zabbix Documentation 3.4]
CENTOS6.3 下 zabbix 安装部署
官方主页:https://www.zabbix.com/
官方手册:https://www.zabbix.com/documentation/3.4/zh/manual
顺便再推荐一本关于 Zabbix 教程的电子书
ZABBIX 从入门到精通 v3.0.1(PDF)
ZABBIX 从入门到精通 v3.0.1(MOBI)