zabbix服务器与客户端(Linux+Windows)的搭建
一、搭建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界面上安装
这一步必须全部OK才行
登录默认账号: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