centos 6.9安装zabbix 3.0

 

Linux下常用的系统监控软件有Nagios、Cacti、Zabbix、Monit等,这些开源的软件,可以帮助我们更好的管理机器,在第一时间内发现,并警告系统维护人员。

    今天开始研究下Zabbix,使用Zabbix的目的,是为了能够更好的监控mysql数据库服务器,并且能够生成图形报表,虽然Nagios也能够生成图形报表,但没有Zabbix这么强大。

    首先,我们先来介绍下Zabblx:

一.Zabbix简介  

       zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

       zabbix由zabbix server与可选组件zabbix agent两部门组成。

       zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视。

       zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。

zabbix的主要特点:

          - 学习成本低

          - 支持多语言(包括中文)

          - 免费开源

          - 自动发现服务器与网络设备

          - 分布式监视以及WEB集中管理功能

          - 可以无agent监视

          - 用户安全认证和柔软的授权方式

          - 通过WEB界面设置或查看监视结果

          - email等通知功能

         等等

Zabbix主要功能:

         - CPU负荷

         - 内存使用

         - 磁盘使用

         - 网络状况

         - 端口监视

         - 日志监视

官方也提供了安装资料:https://www.zabbix.com/documentation/

搭建ZABBIX准备资源

1、需要服务器是LAMP环境 LNMP

2、主机名和IP要写在HOST文件里

3、iptables 和 selinux 必须关闭   生产环境中防火墙开放端口即可

一、先用最简单的方式搭建lamp环境(yum安装)

yum -y install gcc net-snmp-devel curl-devel OpenIPMI

yum -y install mysql* php* http*

安装完成后再测试web能否访问php页面

先添加php页面

vi /var/www/html/index.php

<?php

    phpinfo();

?>

再查看是否有该进程 netstat -anlp|grep :80

使用浏览器访问测试

http://ip地址:端口号

服务端

1、安装LAMP环境及依赖包

yum install -y  mysql-server mysql-devel libcurl-devel net-snmp-devel php php-gd php-xml php-mysql php-mbstring php-bcmath httpd gcc c++ gcc-c++ curl-devel xmlrpc

2、添加用户并设置启动项

[root@localhost ~]# groupadd zabbix

[root@localhost ~]# useradd zabbix -g zabbix

[root@localhost ~]# chkconfig httpd on
[root@localhost ~]# chkconfig mysqld on
[root@localhost ~]# chkconfig snmpd on

 

3、创建数据库,添加用户授权

[root@localhost ~]# /etc/init.d/mysqld start

 

mysql> create database zabbix character set utf8;

mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '123456';

mysql> grant all privileges on zabbix.* to zabbix@'%' identified by '123456';

4、编译安装zabbix

[root@localhost ~]# tar xvf zabbix-3.0.9.tar.gz

[root@localhost ~]# cd zabbix-3.0.9

[root@localhost zabbix-3.0.9]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl

[root@localhost zabbix-3.0.9]# make && make install

  [root@localhost zabbix-3.0.9]# mysql -uzabbix -p123456 <database/mysql/schema.sql zabbix

  [root@localhost zabbix-3.0.9]# mysql -uzabbix -p123456<database/mysql/images.sql zabbix

  [root@localhost zabbix-3.0.9]# mysql -uzabbix -p123456<database/mysql/data.sql zabbix

5、修改配置文件

[root@localhost ~]# vi /usr/local/zabbix/etc/zabbix_server.conf 

LogFile=/tmp/zabbix_server.log   #log日志

PidFile=/tmp/zabbix_server.pid   #pid

DBName=zabbix               #数据库名字

DBUser=zabbix                #数据库授权用户

DBPassword=123456           #数据库授权密码

DBSocket=/var/lib/mysql/mysql.sock   #数据库sock的文件路径

ListenIP=10.0.8.223                #服务端ip地址

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts  #脚本路径

 

6、拷贝启动文件,修改启动文件,授权等

cp /usr/local/src/zabbix-3.0.9/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server

cp /usr/local/src/zabbix-3.0.9/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd

[root@localhost ~]# vi /etc/init.d/zabbix_server

BASEDIR=/usr/local/zabbix

[root@localhost ~]# vi /etc/init.d/zabbix_agentd

BASEDIR=/usr/local/zabbix

[root@localhost ~]#  vi /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

[root@localhost ~]# chmod +x /etc/init.d/zabbix_server #执行权限

[root@localhost ~]# chmod +x /etc/init.d/zabbix_agentd #执行权限

[root@localhost ~]# chkconfig zabbix_server on #添加开机启动

[root@localhost ~]# chkconfig zabbix_agentd on #添加开机启动

[root@localhost ~]# /etc/init.d/iptables stop #关闭防火墙

7、拷贝zabbix安装页,授权等

[root@localhost ~]# cp -r /usr/local/src/zabbix-3.0.9/frontends/php/ /var/www/html/zabbix

[root@localhost ~]# chown -R zabbix:zabbix /var/www/html/zabbix

[root@localhost ~]# chmod 777 -R /var/www/html/zabbix

8、修改php配置文件

[root@localhost ~]# vi /etc/php.ini #编辑修改

post_max_size =16M

max_execution_time =300

max_input_time =300

date.timezone = Asia/Shanghai

9、启动zabbix服务

[root@localhost ~]#  /etc/init.d/zabbix_server  start #服务端服务

[root@localhost ~]#  /etc/init.d/zabbix_agentd  start #客户端服务

[root@localhost ~]#  netstat -ntlp |grep zabbix   #查看服务进程是否启动

10、测试访问

http://ip地址:端口号

客户端安装

[iyunv@zabbix-c1 ~]# yum install  tree gcc gcc-c++ -y

[root@localhost ~]# groupadd zabbix

[root@localhost ~]# useradd zabbix -g zabbix

[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxf zabbix-3.0.9.tar.gz

[root@localhost ~]# cd zabbix-3.0.9

[root@localhost zabbix-3.0.9]# ./configure --prefix=/usr/local/zabbix --enable-agent

[root@localhost zabbix-3.0.9]# make && make install

[root@localhost zabbix-3.0.9]# cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/

[root@localhost zabbix-3.0.9]# vi /etc/init.d/zabbix_agentdBASEDIR=/usr/local/zabbix/

[root@localhost zabbix-2.0.6]# vi /usr/local/zabbix/etc/zabbix_agentd.conf

PidFile=/tmp/zabbix_server.pid   #pid

LogFile=/tmp/zabbix_agentd.log   #log日志

Server=10.0.8.223        #服务端ip地址

ServerActive=10.0.8.223   #服务端ip地址

Hostname=zabbix_user     #服务端主机名

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/   #子配置文件

UnsafeUserParameters=1   # #启用自定义key

启动客户端服务:

[iyunv@zabbix-c1 ~]#  /etc/init.d/zabbix_agentd  start #客户端服务

[root@localhost ~]#  netstat -ntlp |grep zabbix   #查看服务进程是否启动

最后 去web上 添加主机

问题:
1、cannot send list of active checks to [127.0.0.1]: host [Zabbix server] not monitored
    在监控中显示Zabbix状态:Zabbix服务端运行中 值是NO(不)
解决方法:
(1)检查端口是否已开启
(2)检查是否已打开防火墙,已打开,请加例外, 或者关闭防火墙
(3)服务端的主机名必须与客户端Hostname一样
(4)关闭SELinux(Security Enhanced Linux[安全加強的 Linux]) 
    gedit /etc/sysconfig/selinux
    修改为:SELINUX=disabled

原文地址:https://www.cnblogs.com/tianlinger/p/7100077.html