网络上有很多在Ubuntu下部署Zabbix的,但是大多数教程都是在Ubuntu 14.04下部署,同时Zabbix也不是3.0版本以上。所以在这里写一篇目前最新的部署教程。
Zabbix
Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。目前最新版本是Zabbix 3.2。官方下载地址:http://www.zabbix.com/download
由上图可以看出,只有Zabbix 3.2支持Ubuntu 16.04 (Xenial Xerus)。
部署步骤
环境准备
部署Zabbix需要LAMP环境(Linux、Apache、MySQL、PHP),所以首先要安装Apache、MySQL和PHP。在Ubuntu 16.04下只有php7.0而没有php5。
sudo apt-get install apache2
sudo apt-get install mysql-server
sudo apt-get install php7.0 php7.0-gd libapache2-mod-php7.0 php7.0-mysql php7.0-bcmath php7.0-mbstring php7.0-xml
- 1
- 2
- 3
默认设置MySQL账号:root,密码:root。
配置PHP
用喜欢的编辑器打开/etc/php/7.0/apache2/php.ini
sudo vim /etc/php/7.0/apache2/php.ini
# 查找date字符串,修改date.timezone及添加后面的字段
date.timezone = Asia/Shanghai
max_input_time = 600
max_execution_time= 600
post_max_size = 32M
- 1
- 2
- 3
- 4
- 5
- 6
- 7
配置完成后要重启apache服务器
sudo /etc/init.d/apache2 restart
- 1
附上一个过滤#和$文本行的查询命令
egrep -v "(^#|^$)" [filename]
- 1
下载deb
首先进入一个临时文件夹,因为待会儿会有东西下载。
wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.2-1+xenial_all.deb
sudo dpkg -i zabbix-release_3.2-1+xenial_all.deb
sudo apt-get update
- 1
- 2
- 3
安装配置Zabbix服务端
之后就可以安装Zabbix了
sudo apt-get install zabbix-server-mysql
- 1
配置MySQL的Zabbix数据库
# 创建zabbix表
mysql -uroot -p -e "create database zabbix character set utf8"
# 创建mysql帐号:zabbix,密码:zabbix
mysql -uroot -p -e "grant all on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix'"
# 拷贝zabbix的数据表到MySQL
zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
之后还要修改zabbix_server.conf文件
sudo nano /etc/zabbix/zabbix_server.conf
- 1
# 配置参考如下,主要是修改密码
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
- 1
- 2
- 3
- 4
- 5
完成以上配置后,重启zabbix-server
sudo /etc/init.d/zabbix-server restart
- 1
安装配置Zabbix web端
# 下载安装
>sudo apt-get install zabbix-frontend-php
# 拷贝zabbix到apache2的前端文件夹里
sudo cp -r /usr/share/zabbix /var/www/html/zabbix
- 1
- 2
- 3
- 4
- 5
登入http://<host>/zabbix/
,可以看到初始配置页面。
检查PHP扩展包包,如果有fail的可以回去用apt-get php7.0-[packetname]进行安装。
配置数据库,输入密码zabbix即可。
默认设置即可。
如果在最后一步出现创建zabbix.conf.php失败的问题,那可能是文件夹的权限问题,解决如下:
# 查看权限
ls -lh /etc/zabbix
# 设置权限
sudo chmod -R 775 /etc/zabbix
- 1
- 2
- 3
- 4
- 5
完成后跳转到登录页面,即可登录。默认用户名:Admin,密码:zabbix
安装客户端agent
之后在其他机器安装agent即可与zabbix-server对接。
sudo apt-get install zabbix-agent
- 1
启动客户端agent
sudo /etc/init.d/zabbix-agent start
- 1
客户端agent配置修改
sudo nano /etc/zabbix/zabbix_agentd.conf
- 1
Server=127.0.0.1
ListenPort = 10050
ServerActive=127.0.0.1
- 1
- 2
- 3
其他
zabbix启动不正常时,多查看log日志,命令如下:
cat /var/log/zabbix/zabbix_server.log
cat /var/log/zabbix/zabbix_agentd.log
- 1
- 2
以后如果Zabbix出新版本了,可以先到上面提到的官方下载地址查看新版本信息,再通过wget下载对应的deb即可安装。
2017-10-13更新:
# 拷贝zabbix的数据表到MySQL
zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
- 1
- 2
这条命令在不同环境下执行可能会出现点问题,可参考下面分析:
http://blog.csdn.net/skywalker_only/article/details/37872833
启用中文
# vi /usr/share/zabbix/include/locales.inc.php
- 1
- 2
把zh_CN后面参数写true
然后去选择语言吧。
如果,去选择语言的时候,你发现还是不能选择。。。。 提示:
You are not able to choose some of the languages, because locales for them are not installed on the web server.
- 1
- 2
是因为你系统里没中文环境 那么:设置中文环境 第一步,安装中文包:
# apt-get install language-pack-zh-hant language-pack-zh-hans
- 1
- 2
第二步,配置相关环境变量:(这一步可以不做)
# sudo vi /etc/environment 在文件中增加语言和编码的设置:
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"
- CENTOS7 安装zabbix-agent
- 关闭selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
setenforce 0
- 1
- 2
- 防火墙设置
允许zabbix-agent的10050端口通过
firewall-cmd --permanent --add-port=10050/tcp
firewall-cmd --reload
- 1
- 2
2、安装zabbix 软件源
rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm
- 1
3、安装zabbix-agent
yum install zabbix-sender zabbix-agent zabbix