环境依赖:LNMP或者LAMP

简介参考:http://blog.51cto.com/zhang789/1868880

一、准备

我安装的环境及其版本如下:

系统版本CentOS Linux release 7.2.1511 (Core)
数据库mysql 5.7.12
nginx1.10.2
php5.6.25 
server_ip192.168.68.30

lnmp基本的安装参考我的连接:http://www.cnblogs.com/tianfen/articles/6274466.html

特别说明:

  • php的配置参数

打开 php.ini 配置文件,修改以下配置(zabbix 硬性要求)

max_execution_time = 300
memory_limit = 128M #至少128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
date.timezone = PRC #不必须

二、服务端安装配置

2.1.下载安装

cd /mnt/soft

wget https://pilotfiber.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.3/zabbix-3.2.3.tar.gz  --no-check-certificate

tar xf zabbix-3.2.3.tar.gz  -C  /usr/local/src

cd   /usr/local/src/zabbix-3.2.3

./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql==/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 --with-gettext

make

make install

提示:zabbix server 一般充当两个角色:server、angent (需要监控自己),所以上面的配置参数也同时加上了--enable-agent。

 2.2 创建用户

为了安全考虑 zabbix 只使用普通用户运行,但是如果在 root 环境下运行 zabbix,那么 zabbix 将会主动尝试以 zabbix 身份来运行。但是如果你的系统没有名叫

zabbix 的用户,需要创建一个用户

groupadd zabbix
useradd -g zabbix zabbix

2.3初始化数据库

zabbix server 与 proxy 需要数据库,angent 不需要。尤其要注意的是 proxy 只需要导入一个 sql 文件,而 server 一共
要导入 3 个 sql 文件。我当时在搭建 proxy 的时候导入了 3 个 sql,导致出现报错。后来才发现 proxy 只需要导入一
个表结构即可。
我假想你安装好了 MySQL,用户名为 root,密码为 空

cd  /mnt/soft/zabbix-3.2.3/database/mysql         #此目录为zabbix安装包解压路径,而不是安装路径

mysql -e "create database zabbix default charset utf8;"             #创建数据库,别忘记加 default charset utf8,有可能会导致你出现中文乱码问题

mysql  zabbix < schema.sql

如果仅仅是初始化 proxy 的数据库,那么够了。如果初始化 server,那么接着导入下面两个 sql

mysql zabbix < images.sql

mysql zabbix < data.sql

2.4配置zabbix

#配置zabbix的数据库连接信息
[root@localhost etc]# pwd
/usr/local/zabbix/etc
[root@localhost etc]# cat zabbix_server.conf|grep '^DB'
DBHost=localhost
DBName=zabbix
DBUser=root
DBPassword=
DBSocket=/dev/shm/mysql.sock
DBPort=

2.5启动zabbix server

/usr/local/zabbix/sbin/zabbix_server

默认端口:10051

3.zabbix管理网站配置

3.1拷贝前端文件

mkdir /mnt/home/webroot/zabbix -p

cp -rp /mnt/soft/zabbix-3.2.3/frontends/php/* /mnt/home/webroot/zabbix/

3.2 配置虚拟主机

#当然具体的路径和域名等信息,根据自己的需求修改,下面是我的配置

[root@localhost vhosts]# cat zabbix.conf

server {
listen 80;
server_name zabbix.devbei.cn;
access_log /mnt/logs/nginx/zabbix.access.log;

index index.html index.php index.html;
root /mnt/home/webroot/zabbix;

location /
{
try_files $uri $uri/ /index.php?$args;
}

location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

[root@localhost vhosts]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost vhosts]# /usr/local/nginx/sbin/nginx -s reload

 

3.3 在线 配置zabbix

浏览器打开: zabbix.devbei.cn

安装步骤,不包括欢迎界面一共5步

  • php需求检查

zabbix基础安装-LMLPHP

  • MySQL配置

zabbix基础安装-LMLPHP

  • zabbix 服务端详细信息

zabbix基础安装-LMLPHP

  • zabbix  安装前信息列表

zabbix基础安装-LMLPHP

  • 安装完成

如果失败了,一般情况是php对zabiix没有写权限

zabbix基础安装-LMLPHP

  • 登录zabbix

默认用户名:Admin,密码:zabbix

zabbix基础安装-LMLPHP

  • 如下是zabbix首页

zabbix基础安装-LMLPHP

好了,服务器端的基本安装和配置已经完成

三、客户端的安装与配置

比如我的一台服务器:192.168.68.25  需要被监控,此时这台服务器就称为客户端,简单的安装配置如下。

1.下载安装

cd /mnt/soft

wget https://pilotfiber.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.3/zabbix-3.2.3.tar.gz  --no-check-certificate

tar xf zabbix-3.2.3.tar.gz  -C  /usr/local/src

cd   /usr/local/src/zabbix-3.2.3

./configure --prefix=/usr/local/zabbix  --enable-agent

make

make install

[root@localhost ~]# useradd zabbix -s /sbin/nologin     #创建zabbix用户

2.修改zabbix 与服务端相关的配置

[root@localhost conf]# pwd
/usr/local/zabbix/etc #/usr/local/zabbix 为安装目录
[root@localhost conf]# cat zabbix_agentd.conf |grep -Ev '^#|^$'
LogFile=/tmp/zabbix_agentd.log
Server=192.168.68.30
ServerActive=192.168.68.30
Hostname=client_25

解释:其中 Server 和 ServerActive 都指定 zabbixserver 的 IP 地址,不同的是,前者是被动后者是主动。也就是说 Server

这个配置是用来允许 192.168.68.30 这个 ip 来我这取数据。而 serverActive 的 192.168.68.30的意思是,客户端主动提交数据给
服务器端
其他主机安装客户端记得添加 zabbix 用户。

3.3 zabbix 客户端启动

   # /usr/local/zabbix/sbin/zabbix_agentd

   默认端口 10050

05-28 00:34