zabbix服务器与客户端(Linux+Windows)的搭建

zabbix监控搭建

一、搭建LNMP环境(MySQL)

创建数据库以及授权zabbix账户

mysql> create database zabbix character set utf8;
mysql> grant all on zabbix.* to zabbix@'%' identified by 'zabbix123';
mysql> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix123';
mysql> flush privileges;

  

修改php的参数

$ vim /usr/local/php/lib/php.ini 
    max_execution_time = 300
    max_input_time = 300
    date.timezone = Asia/Shanghai
    post_max_size = 28M


# 如果不知道php.ini文件的位置
$ /usr/local/php/bin/php --ini查看php.ini文件所在目录

 

修改nginx配置文件

server {
        listen       80;
        server_name  localhost;
​
        root /var/www/html/zabbix;
        index index.php;
​
        #charset koi8-r;
​
        #access_log  logs/host.access.log  main;
​
        location / {
            #root   html;
            #index  index.html index.htm;
            try_files $uri $uri/ /index.php?$args;
        }
​
        location ~ \.php$ {
            include        fastcgi.conf;
            fastcgi_intercept_errors on;
            fastcgi_buffers 16 16k;
            fastcgi_buffer_size 32k;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        }
​
        location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                expires max;
                log_not_found off;
        }
​}

  

 

二、Zabbix-server搭建(源码3.4.14)

1.下载源码包
$ wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.4.14/zabbix-3.4.14.tar.gz

 

2.创建用户和组
$ groupadd --system zabbix
$ useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix

  

3.安装依赖
$ yum -y install mysql-devel libxml2-devel unixODBC-devel  net-snmp-devel OpenIPMI-devel curl-devel  libevent-devel 

  

4.安装zabbix
$ tar xf zabbix-3.4.14.tar.gz -C /usr/local/src/
$ cd /usr/local/src/zabbix-3.4.14/
$  ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
$ make && make install

  

5.导入数据库
$ mysql -p'Qy123123.' zabbix < /usr/local/src/zabbix-3.4.14/database/mysql/schema.sql 
$ mysql -p'Qy123123.' zabbix < /usr/local/src/zabbix-3.4.14/database/mysql/images.sql 
$ mysql -p'Qy123123.' zabbix < /usr/local/src/zabbix-3.4.14/database/mysql/data.sql 
 
6.修改server配置文件
$ vim /usr/local/zabbix/etc/zabbix_server.conf
    DBName=zabbix
    DBUser=zabbix
    DBPassword=zabbix123
    DBSocket=/tmp/mysql.sock

  

7.启动脚本
$ cd /usr/local/src/zabbix-3.4.14/misc/init.d/
$ cp fedora/core/zabbix_* /etc/init.d/
# 修改 server 端启动脚本
$ vim /etc/init.d/zabbix_server
......
BASEDIR=/usr/local/zabbix ----- zabbix 安装目录
BINARY_NAME=zabbix_server ----- zabbix 二进制文件名称(对应 zabbix 安装目录 sbin/ 下的名称)
.....
​
# 修改 agent 端启动脚本
$ vim /etc/init.d/zabbix_agentd
......
BASEDIR=/usr/local/zabbix
BINARY_NAME=zabbix_agentd
.....

  

8.启动zabbix_server
$ service zabbix_server start
$ ss -antp | grep 10051

  

9.拷贝页面
$ cp -r /usr/local/src/zabbix-3.4.14/frontends/php/* /var/www/html/
$ chmod 777 /var/www/html/ -R

 

10.修改字符
$ vim /var/www/html/zabbix/include/defines.inc.php
···
# 定义字符路径
define('ZBX_FONTPATH',                          realpath('fonts')); // where to search for font (GD > 2.0.18)
# 指定字体名称
define('ZBX_GRAPH_FONT_NAME',           'simkai'); // font file name
···
define('ZBX_FONT_NAME', 'simkai');

  

中文字符从windows系统中的控制面板的字体导出,然后上传到zabbix服务器上。

$ cp simkai.ttf /var/www/html/zabbix/fonts

 

11.Web界面上安装

直接访问ip就会显示如下页面

image

 这一步必须全部OK才行

image

 

image

 

 

登录默认账号:admin 密码:zabbix

正确登录后,效果如下

 

三、Zabbix-agent搭建(Windows)

1.下载zabbix-agent包

https://www.zabbix.com/downloads/3.4.0/zabbix_agents_3.4.0.win.zip

2.解压到D盘,并重命名目录为zabbix

 

查看目录结构

conf目录存放的是agent的配置文件

bin目录存放的Windows下32位和64位安装程序

3.配置zabbix-agent(zabbix_agent.win.conf)
# 需要创建logs目录存放zabbix_agent的日志
LogFile=d:\zabbix\logs\zabbix_agentd.log
​
# 指定zabbix-server的ip
Server=192.168.1.65
​
# 指定server端的ip:interface
ServerActive=192.168.1.65
​
# 指定主机名
Hostname=Windows-host-test

  

其中Server和ServerActive都指定zabbix Server的IP地址,不同的是,前者是被动后者是主动。也就是说Server这个配置是用来允许192.168.1.65这个ip来我这取数据。而ServerActive的192.168.1.65的意思是,客户端主动提交数据给他。

 

4.安装agent
> D:\zabbix\bin\win64\zabbix_agentd.exe -i -c d:\zabbix\conf\zabbix_agentd.win.conf

  

控制台输出如下信息,表示安装成功:

zabbix_agentd.exe [8288]: service [Zabbix Agent] installed successfully
zabbix_agentd.exe [8288]: event source [Zabbix Agent] installed successfully

  

5.启动zabbix-agent
D:\zabbix\bin\win64>zabbix_agentd.exe -c  d:\zabbix\conf\zabbix_agentd.win.conf -s

 

6.关闭zabbix
D:\zabbix\bin\win64>zabbix_agentd.exe -c  d:\zabbix\conf\zabbix_agentd.win.conf -x
 
7.卸载zabbix
D:\zabbix\bin\win64>zabbix_agentd.exe -c  d:\zabbix\conf\zabbix_agentd.win.conf -d

 

四、Zabbix-agent搭建(Linux)

客户端和服务端保持版本一直,不然可能会导致

message from IP is missing header. Message ignored.

1.下载安装agent
$ wget https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.4.15/zabbix-3.4.14.tar.gz
$ tar xf zabbix-3.4.14.tar.gz -C /usr/local/src/
$ cd /usr/local/src/zabbix-3.4.14/
$ ./configure  --prefix=/usr/local/zabbix --enable-agent  --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
$ make && make install

 

2.修改配置文件
$ vim /usr/local/zabbix/etc/zabbix_agentd.conf
Server=192.168.1.79
ServerActive=192.168.1.79:10051
Hostname=ActiveMQ

  

3.创建zabbix用户
$ groupadd --system zabbix
$ useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix

  

客户端如果没有创建zabbix用户,而是直接用root用户启动zabbix进程,可能会出现服务状态起来,但是端口和进程都无法发现zabbix

 

4.启动agent
$ cp /usr/local/src/zabbix-3.4.14/misc/init.d/fedora/core/zabbix_* /etc/init.d/
$ vim /etc/init.d/zabbix_agentd 
        # Zabbix-Directory
        BASEDIR=/usr/local/zabbix
​
        # Binary File
        BINARY_NAME=zabbix_agentd

  

5.配置SNMP(server端)
$ yum -y install net-snmp net-snmp-utils
$ vim /etc/snmp/snmpd.conf 
com2sec notConfigUser  192.168.1.79       public
access  notConfigGroup ""      any       noauth    exact  all none none
view all    included  .1                               80
$ ss -anup | grep snmp
udp   UNCONN  0  0  *:161  *:* users:(("snmpd",pid=7478,fd=6))
$ systemctl enable snmpd
$ systemctl restart snmpd
​
#测试snmp协议是否正常
$ snmpwalk -v 2c -c public 192.168.1.79

  

Zabbix服务端

#命令行获取客户端的信息
$ /usr/local/zabbix/bin/zabbix_get -s 192.168.1.37 -k system.cpu.load[all,avg15]
0.120000

 

五、报错

1.配置文件zabbix.conf.php未能创建

点击Download the configure file,下载配置文件,然后上传到/var/www/html/zabbix/conf/下,文件名为zabbix.conf.php

 

posted @ 2019-01-05 18:01  情浅凉心  阅读(4940)  评论(0编辑  收藏  举报