第一步:安装环境
Zabbix要求的环境
组件 版本要求
Apache版本 1 .3.1 2
MySQL版本 5.0.3
PHP版本 5.4.0
本次安装的环境
组件 版本要求
操作系统 CentOS 7.2 X86_64
zabbbix版本 3.0.4
zabbix安装方式 源码编译
LAMP安装方式 yum
Apache版本 2.4.6
Mariadb版本 5.5.47
PHP版本 5.4.1 6
zabbix 3.0 需要php 5.4.0以上版本且不支持php 7, 这一点要注意
环境配置
LAMP安装
LAMP(Linux+Apache+Mysql+PHP)采用yum的方式进行安装比较方便捷。 CentOS7 默认采用
Mariadb替代了Mysql
yum i nstall httpd php mari adb-server mysql-devel \
php-gd gcc php-mysql php-xml li bcurl-devel \
curl-* net-snmp* li bxml2-* \
php-mbstri ng php-bcmath -y -y
以上为安装zabbix所需要的基本环境
第二步:基础准备
关闭防火墙
centos7 默认采用friewall, 不采用iptables
systemctl stop firewalld
禁用防火墙开机启动
systemctl disable firewalld
关闭SELINUX
vi /etc/sysconfig/selinux
修改selinux状态为disabled
SELINUX=disabled
修改之后执行
setenforce 0
即可关闭SELINUX! 只修改文件不执行setenforce 0,不能立即关闭SELINUX
修改
设置时间
检查操作系统时间, 如果时间或者时区不正确, 按照以下步骤同步服务器时间, 确保服务器时间正
确。
如果时区不对, 首先使用tzselecet设置时区
tzselect
覆盖时区文件
cp /usr/share/zonei nfo/Asi a/Shanghai /etc/localtime
同步时间
ntpdate 133. 100. 11. 8
第三步:配置MySQL数据库
使用yum安装mysql数据库之后, 需要对mysql进行初始化操作
启动mysql
/etc/init.d/mysql start
初始化mysql数据库
mysql_secure_installation
根据提示设置root密码,其余一律选择”Y”,编辑my.cnf文件设置数据库编码为utf-8
vi /etc/my.cnf
在[mysqld]这一段落加入
character-set-server=utf8
log_bin_trust_function_creators=1
skip-name-resolve
加入之后, 保存, 重启mysql数据库使之生效,同时设置mysql开机自启动
至此mysql初始化完毕。
第四步:安装zabbix
编译安装zabbix server
下载zabbix源码
cd /opt
wget http: //pilotfiber.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20St
able/3.0.4/zabbi x-3.0.4.tar. gz
a.解压
tar zxvf zabbi x-3.0.4.tar.gz
configure
cd zabbi x-3.0.4
b.配置zabbix
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2
configure参数详解
prefix=/usr/local/zabbix zabbix安装路径为: /usr/local/zabbix
enable-server 安装Zabbix Server
enable-agent 安装Zabbix Agent
with-mysql 使用Mysql数据库
with-net-snmp 支持snmp监控
with-libcurl 支持web监控
with-libxml2 支持VMware监控
configure过程中一定要检查输出, 如果出现ERROR, 请根据错误具体处理,切勿继续执行一下步
骤!
安装Zabbix Server/Proxy/Agent 各种角色所用configure参数
不要把Zabbix Server和Zabbix Proxy安装再同一台服务器上, 因为并没有什么卵用!
Zabbix Server
. /confi gure --prefi x=/usr/local/zabbi x --enable-server --enable-agent --w
i th-mysql --wi th-net-snmp --wi th-li bcurl --wi th-li bxml2
Zabbix Proxy
. /confi gure --prefi x=/usr/local/zabbi x --enable-proxy --enable-agent --wi
th-mysql --wi th-net-snmp --wi th-li bcurl --wi th-li bxml2
Zabbix Agent
. /confi gure --prefi x=/usr/local/zabbi x --enable-proxy --enable-agent --wi
th-mysql --wi th-net-snmp --wi th-li bcurl --wi th-li bxml2
目 前这里只安装zabbix server, configure之后如果没有出现ERROR
c.进行编译
make
d.如果没有出现ERROR执行
make install
如果没有出现ERROR, 表示安装成功
第五步:安装server之后, 需要建立zabbix系统用户以及创建zabbix数据库
建立zabbix系统用户
useradd zabbix
创建zabbix数据库并授权[假设之前设置的mysql数据库root的密码为1 23456]
mysql -uroot -p123456
create database zabbix;
grant all on zabbix. * to zabbix@localhost identified by 'zabbixpwd123' ;
以上命令建立了名为zabbix的数据库, 并建立了zabbix用户 ,设置用户密码为zabbixpwd123, 并授
权访问zabbix数据库且只允许本机连接改数据库
导出zabbix数据库结构
mysql -uroot -p123456 zabbix</opt/zabbix/database/mysql/schema.sql
mysql -uroot -p123456 zabbix</opt/zabbix/database/mysql/images.sql
mysql -uroot -p123456 zabbix</opt/zabbix/database/mysql/data.sql
第六步:安装Zabbix WEB
yum安装的apache,
默认的web目录为/home/wwwroot/, 拷贝zabbix web的文件到这个目录
a. cd /home/wwwroot/
清空掉default里面的内容
然后进入到/opt/zabbix/frontends/php里面
cp -R * /home/wwwroot/default/
chown -R www:www default/
调整参数php参数, 编辑php.ini文件,
vi /usr/local/php/etc/php.ini
post_max_size = 16M
max_execution_time = 300
max_input_time = 60
date.timezone = Asia/Shanghai
启动http服务器,并设置开机启动
/etc/init.d/php-fpm start
chkconfig httpd on
启动之后打开浏览器直接访问zabbix server地址, 即可看到zabbix web安装页面
点击Next
这里要检查一下, 看看都OK的, 确认没有问题直接Next
这里是设置数据库连接信息, 数据库为zabbix, 数据库用户为zabbix, 密码为zabbixpwd1 23(之前
设置的) , 填好之后直接Next
这里不用改, 直接Next
确认信息无误, 直接Next
创建配置文件成功, zabbix web安装成功, 点Finish。
默认用户名:Admin 密码: zabbix
第七部:配置zabbix
安装好web之后,在web页面会提示
zabbix server is not running the information displayed may not be current
表示Zabbix server没有启动, 需要配置zabbix server并启动
配置zabbix server
编辑zabbix server的配置文件
vi /usr/local/zabbix/etc/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbixpwd123
修改以上内容, 即可完成对zabbix server的配置
启动zabbix server
/usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
启动之后使用查看日志有无报错
tail -f /tmp/zabbix_server.log
若无报错, 返回zabbix web,看到Zabbix Server的状态已变为running状态
设置zabbix server 开机启动
vi /etc/rc.local
/usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
第八步:(可选)配置Zabbix Agent
Zabbix Agent需要安装在被监控机器.由于目前zabbix server和zabbix agent都安装在同一台机器
上, 默认的zabbix agent配置文件已经配置了zabbix server地址为1 27.0.0.1 (本机), 所以无需修
改, 直接用一下命令启动zabbix agent
/usr/local/zabbi x/sbi n/zabbi x_agentd -c /usr/local/zabbi x/etc/zabbi x_agen
td. conf
启动之后使用查看日 志有无报错
tai l -f /tmp/zabbi x_agentd. log
如果在别的机器安装了Zabbix Agent, 需要修改Zabbix Agent配置文件
编译zabbix agent 配置文件
vi /usr/local/zabbi x/etc/zabbi x_agentd. conf
Server=192. 168. 1. 100
ServerActi ve=192. 168. 1. 100
Hostname=vm93
只需修改以上三个参数即可
Server为zabbix server的地址可以用ip, 也可以用域名(配置DNS)
ServerActive为zabbix server的地址可以用ip, 也可以用域名(配置DNS)
Hostname为机器的名称,不能使用中文, 必须和zabbix web里配置的主机名一直
修改以上三个参数, 启动agent即可。
设置zabbix server 开机启动
vi /etc/rc.local
/usr/local/zabbi x/sbi n/zabbi x_agentd -c /usr/local/zabbi x/etc/zabbi x_agen
td. conf
第九步:界面汉化
zabbix本身自带中文, 可在设置里直接修改为中文。 直接点击右上角的[Profile] 直接设置为中文并
下载一个中文字体替换默认的字体即可
cd /var/www/html/fonts/
wget http: //cacti fans. hi -www. com/tools/msty. ttf
mv msty. ttf Dej aVuSans. ttf
说明
zabbix web目 录为/var/www/html 具体目 录根据自身情况修改, 切勿照搬
msty.ttf为微软的雅黑字体, 来自 互联网共享
第十步:fping安装配置
zabbix默认自带ICMP的监控模版, 不过服务器需要安装fping, 才能使用此模版
使用源码编译的方法安装fping
下载fping源码并编译安装
wget http: //fpi ng. org/di st/fpi ng-3. 13. tar. gz
tar zxvf fpi ng-3. 13. tar. gz
cd fping-3. 13
./configure
make
make install
完成fping安装之后, 默认的安装路在/usr/local/sbin/fping, zabbix server默认的配置文件里, fping
的路径为/usr/sbin/fping, 为了方便, 直接做一个软连接过去
ln -s /usr/local/sbin/fping /usr/sbin/fping
做好软连接, 还需要赋予权限, 因为zabbix执行ICMP检测使用系统zabbix用户去调用fping命令,
你可能会在zabbix server日 志里看到如下错误
fping failed: “/usr/sbin/fping: can’t create raw socket (must run as root?) : Operation not
permitted
表明没有权限, 赋予权限即可解决
chmod u+s /usr/sbin/fping
第十一步: 启动脚本(配置启动zabbix脚本,配置之后才能用命令重启)
centos7 采用systemd启动方式, 与centos6有很大不通
使用源码编译不自带启动脚本文件需要自己编写
zabbix server启动文件
[Unit]
Description=Zabbix Server
After=syslog.target
After=network.target
[Service]
Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_server.conf"
EnvironmentFile=-/etc/sysconfig/zabbix-server
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_server.pid
KillMode=control-group
ExecStart=/usr/local/zabbix/sbin/zabbix_server -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
[Install]
WantedBy=multi-user.target
注意pid文件位置和zabbix配置文件路径及zabbix server安装位置
如果你的zabbix安装路径和文件中的不一致, 请根据实际情况修改
把此文件命名为zabbix-server并放到/usr/lib/systemd/system目 录下
systemctl enable zabbix-server
基本命令
重启zabbix server
systemctl restart zabbix-server
启动zabbix server
systemctl start zabbix-server
停止zabbix server
systemctl stop zabbix-server
设置zabbix agent启动脚本
[Uni t]
Descri pti on=Zabbi x Agent
After=syslog. target
After=network. target
[Servi ce]
Envi ronment="CONFFILE=/usr/local/zabbi x/etc/zabbi x_agentd. conf"
Envi ronmentFi le=-/etc/sysconfi g/zabbi x-agent
Type=forki ng
Restart=on-fai lure
PIDFi le=/tmp/zabbi x_agentd. pi d
Ki llMode=control-group
ExecStart=/usr/local/zabbi x/sbi n/zabbi x_agentd -c $CONFFILE
ExecStop=/bi n/ki ll -SIGTERM $MAINPID
RestartSec=10s
[Install]
WantedBy=multi -user. target
注意pid文件位置和zabbix配置文件路径及zabbix agent安装位置
如果你的zabbix agent安装路径和文件中的不一致, 请根据实际情况修改
把此文件命名为zabbix-agent并放到/usr/lib/systemd/system目 录下
systemctl enable zabbi x-agent
这样就设置了zabbix agent开机启动。
基本命令
重启zabbix agent
systemctl restart zabbi x-agent
启动zabbix agent
systemctl start zabbi x-agent
停止zabbix agent
systemctl stop zabbi x-agent