Linux部署Zabbix服务
1、环境要求LNMP
LNMP环境使用yum源搭建
Nginx的源码安装参考我的另一篇博客:
http://www.iworkstation.top/wordpress/2016/09/01/%E6%90%AD%E5%BB%BAlamp%E7%8E%AF%E5%A2%83%E6%BA%90%E7%A0%81%E5%AE%89%E8%A3%85nginx/
2、启动程序并设置开机自启动
[root@vipuser200 ~]# service nginx restart
[root@vipuser200 ~]# service php-fpm restart
Stopping php-fpm: [ OK ]
Starting php-fpm: [ OK ]
[root@vipuser200 ~]# chkconfig mysqld on
[root@vipuser200 ~]# chkconfig php-fpm on
[root@vipuser200 ~]# service mysqld restart
Starting mysqld: [ OK ]
#第一次启动时有初始化这里省略
3、修改nginx文件支持php
[root@vipuser200 ~]# vim /usr/local/nginx/conf/nginx.conf
location / {
location / {
root html;
index index.php index.html index.htm;
} #添加index.php支持
#以下几行取消注释并修改路径
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
[root@vipuser200 html]# service nginx restart #重启服务
4、验证php是否成功
5、创建数据库
[root@vipuser200 ~]# mysql -uroot -p123456
此处省略……
mysql> create database zabbix; #创建数据库
Query OK, 1 row affected (0.00 sec)
mysql> grant all on zabbix.* to zabbix@localhost identified by 'zabbix';#授权
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges; #刷新
Query OK, 0 rows affected (0.01 sec)
6、上传源码并编译安装
[root@vipuser200 ~]# tar zxf zabbix-2.4.8.tar.gz
[root@vipuser200 ~]# cd zabbix-2.4.8
[root@vipuser200 zabbix-2.4.8]# ls # zabbix需要数据库支持需要先导入数据库
aclocal.m4 compile config.sub depcomp m4 misc upgrades
AUTHORS conf configure frontends Makefile missing
bin config.guess configure.ac include Makefile.am NEWS
build config.log COPYING INSTALL Makefile.in README
ChangeLog config.status database install-sh man src
[root@vipuser200 zabbix-2.4.8]# cd database/mysql/
data.sql images.sql schema.sql
[root@vipuser200 mysql]# ls
data.sql images.sql schema.sql #导入数据顺序schema.sql->images.sql->data.sql
[root@vipuser200 mysql]# mysql -uzabbix -pzabbix zabbix < schema.sql
[root@vipuser200 mysql]# mysql -uzabbix -pzabbix zabbix < images.sql
[root@vipuser200 mysql]# mysql -uzabbix -pzabbix zabbix < data.sql
[root@vipuser200 zabbix-2.4.8]# yum -y install net-snmp-devel #解决zabbix依赖
[root@vipuser200 zabbix-2.4.8]#./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl
注: --prefix= #指定路径
--enable-server #Server支持
--enable-agent #支持Zabbix客户端
--with-mysql #指定MySql库可以选择制定路径mysql_config,mysql_config是命令,用于编译mysql客户端程序
--with-net-snmp #支持snmp协议,需要安装net-snmp-devel包
--with-libcurl #支持CURL功能,libcurl主要功能就是用不同的协议连接不同的务器,libcurl当前支持的协议有http,https,ftp,gopher,telent,dict,file,和ldap协议其他参数:
--enable-proxy 指的是支持zabbix代理服务器,zabbix proxy是一个监控代理服务器,它收集到监控数据,选存放在缓冲区,保存的时间可以通过配置文件设定,然后再传送的zabbix server。监控代理服务需要一个独立的数据库。用zabbix proxy的好处:进程监控,当监控文遏制通讯不方便的时候,当通讯上千台设备的时候,使用zabbix proxy可以简化维护分布式监控,降低zabbix server的负负载,
[root@vipuser200 zabbix-3.0.4]# yum -y install gcc gcc-c++ automake autoconf libcurl
#解决编译依赖不同的基础环境需要的依赖不同,缺少什么装什么
~~~~~~~~~~~~~~~~~~~~~~~下面是一个错误的解决方法~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@vipuser200 zabbix-2.4.8]#./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... configure: error: newly created file is older than distributed files!
Check your system clock
[root@vipuser200 zabbix-2.4.8]# date -s '2016-8-26 16:06'
Fri Aug 26 16:06:00 CST 2016
编译完成后会出现如下:
***********************************************************
* Now run 'make install' *
* *
* Thank you for using Zabbix! *
* <http://www.zabbix.com> *
***********************************************************
[root@vipuser200 zabbix-2.4.8]# make install
[root@vipuser200 zabbix-2.4.8]# cd /usr/local/zabbix/
[root@vipuser200 zabbix]# ls
bin etc lib sbin share
[root@vipuser200 zabbix]# cd etc/
[root@vipuser200 etc]# ls
zabbix_agent.conf zabbix_agentd.conf zabbix_server.conf
zabbix_agent.conf.d zabbix_agentd.conf.d zabbix_server.conf.d
修改配置文件
[root@vipuser200 etc]# vim zabbix_server.conf
DBHost=localhost
DBPassword=zabbix
DBUser=zabbix
DBName=zabbix
[root@vipuser200 etc]# vim zabbix_agentd.conf #配置监控自己
UnsafeUserParameters=1
7、创建用户并启动
[root@vipuser200 etc]# useradd -M -s /sbin/nologin zabbix
[root@vipuser200 etc]# /usr/local/zabbix/sbin/zabbix_server
[root@vipuser200 etc]# ss -lntup | grep zabbix
tcp LISTEN 0 128 *:10051 *:* users:(("zabbix_server",1609,4),("zabbix_server",1613,4),("zabbix_server",1614,4),("zabbix_server",1615,4),("zabbix_server",1616,4),("zabbix_server",1617,4),("zabbix_server",1618,4),("zabbix_server",1619,4),("zabbix_server",1620,4),("zabbix_server",1621,4),("zabbix_server",1622,4),("zabbix_server",1624,4),("zabbix_server",1625,4),("zabbix_server",1626,4),("zabbix_server",1627,4),("zabbix_server",1628,4),("zabbix_server",1629,4),("zabbix_server",1630,4),("zabbix_server",1631,4),("zabbix_server",1640,4),("zabbix_server",1641,4),("zabbix_server",1642,4),("zabbix_server",1643,4),("zabbix_server",1644,4),("zabbix_server",1645,4),("zabbix_server",1646,4),("zabbix_server",1653,4)) [root@vipuser200 etc]# grep zabbix /etc/services
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
8、查看启动脚本
[root@vipuser200 etc]# cd /root/zabbix-3.0.4/misc/init.d/ fedora/
[root@vipuser200 fedora]# ls
core core5 #core5为官方启动脚本
[root@vipuser200 fedora]# cd core5
[root@vipuser200 core5]# ls
zabbix_agentd zabbix_server
[root@vipuser200 core5]# cp * /etc/init.d/
[root@vipuser200 core5]# ll /etc/init.d/zabbix_*
-rwxr-xr-x 1 root root 1355 Aug 26 16:38 /etc/init.d/zabbix_agentd
-rwxr-xr-x 1 root root 1357 Aug 26 16:38 /etc/init.d/zabbix_server
[root@vipuser200 core5]# vim /etc/init.d/zabbix_server
ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server" #只修改这个目录位置
[root@vipuser200 core5]# vim /etc/init.d/zabbix_agentd
ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"#只修改这个目录位置
启动
[root@vipuser200 core5]# service zabbix_server restart
Stopping Zabbix Server: [ OK ]
Starting Zabbix Server: [ OK ]
讲zabbix下的php文件cp到nginx网络目录下
[root@vipuser200 etc]# cd /root/zabbix-2.4.8/frontends/php/
[root@vipuser200 php]# \cp * /usr/local/nginx/html/ -r
[root@vipuser200 php]# cd /usr/local/nginx/html/
9、进入浏览器查看
点击next
这里面好多错误需要一个个配置,前面的几个值是修改配置文件,后面的的是支持的功能通过安装软件包支持
[root@vipuser200 zabbix-2.4.8]# yum -y install gd php-gd php-bcmath php-mbstring php-xml libjpeg-devel
[root@vipuser200 ~]# vim /etc/php.ini
重启php-fpm服务
[root@vipuser200 zabbix-2.4.8]# /etc/init.d/php-fpm restart
点击next
点击next直接下一步name不填
在这里点击Download下载这个配置文件放到上面目录下面即可然后retry
点击finish
默认用户名admin 密码zabbix登陆后
登陆
下面就是窗口化操作。(本篇到此为止,下一篇将尝试zabbix监控其他主机)