Zabbix分布式系统监控+ 试验:搭建一个Zabbix服务器
Posted kiroct
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zabbix分布式系统监控+ 试验:搭建一个Zabbix服务器相关的知识,希望对你有一定的参考价值。
zabbix简介
1.什么是zabbix?
zabbix又称分布式系统箭筒,是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
2.zabbix的作用
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
3.zabbix的组成
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
4.zibbix的应用场景
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
5.zabbix的特点
安装与配置简单,学习成本低
支持多语言(包括中文)
免费开源
自动发现服务器与网络设备
分布式监视以及WEB集中管理功能
可以无agent监视
用户安全认证和柔软的授权方式
通过WEB界面设置或查看监视结果
email等通知功能
加粗样式等等
6.zabbix主要功能
CPU负荷
内存使用
磁盘使用
网络状况
端口监视
日志监视
实验 部署zabbix系统
环境:
zibbix 01 服务段主机 192.168.206.102
zibbix02 代理机器 192.168.206.5
默认全部关闭firewalld、配置好在线yum仓库!!!(这个很重要)
首先是206.102机器部署 (我没说明换机器前一直是这台机器哦!!!!)
```html/xml
先安装nginx
1、先配置nginx的在线配置源
vim /etc/yum.repos.d/nginx.repo
......................
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
.....................
yumclean all && yum makecache
yum -y install nginx
systemctl start nginx
systemctl enable nginx
netstat -natp | grep nginx #检查是否成功
然后部署部署mariadb
yum -y install mariadb*
systemctl start mariadb.service
systemctl enable mariadb.service
netstat -natp | grep 3306 #检查是否成功
可以看到nginx和mariadb成功开启
![1.png](https://s2.51cto.com/images/20220303/1646307973932839.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
```html/xml
#mariadb下的mysql安全配置向导
mysql_secure_installation
回车 #第一次进来无密码直接回车
y #确定添加密码
123456 #密码
123456 #再次输入密码
n
n
n
y #刷新数据库(reload)
#其他都选no
```html/xml
下面是继续部署php
yum install -y epel-release.noarch
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y install php72w php72w-devel php72w-fpm php72w-gd php72w-mbstring php72w-mysql
php -v #查看php版本
![3.png](https://s2.51cto.com/images/20220303/1646308820455266.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
![3.1.png](https://s2.51cto.com/images/20220303/1646308823332330.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
![3.2.png](https://s2.51cto.com/images/20220303/1646308825493804.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)![3.3.png](https://s2.51cto.com/images/20220303/1646308830261205.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
```html/xml
下面是修改php配置文件
vim /etc/php-fpm.d/www.conf
==8修改用户==
user = nginx
==10修改组==
group = nginx
然后修改nginx的配置文件
vim /etc/nginx/conf.d/default.conf
10行
index.php #添加这个文件
30-36行
取消注释
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
root /usr/share/nginx/html;
下面是修改php。ini文件
vim /etc/php.ini
//202 short_open_tag = On
//359 expose_php = Off
//368 max_execution_time = 300
//378 max_input_time = 300
//656 post_max_size = 16M
//799 upload_max_filesize = 2M
//800 always_populate_raw_post_data = -1
//877 date.timezone = Asia/Shanghai
然后开启php即可
systemctl start php-fpm
systemctl enable php-fpm
netstat -natp | grep 9000
下面是修改php配置文件www。conf
用户和组改成nginx
下面是改nginx配置文件
首页添加php结尾文件
该根目录与站点跟目录
下面是修改vim /etc/php.ini配置文件
支持php短标签
隐藏版本和执行时间
等待时间和脚本执行内存大小
上传文件大小
原始文件可以直接被处理
最后改时区
然后启动php-form
```html/xml
测试数据库
首先创建一个php文件来测试是否能连接成功
vim /usr/share/nginx/html/info.php
....................
<?php
$link=mysqli_connect(127.0.0.1,zabbix,123456);
if ($link) echo zabbix成功;
else echo zabbix失败;
?>
.....................................
systemctl restart php-fpm.service
systemctl restart nginx
#下面是数据库操作
mysql -uroot -p123456
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on . to zabbix@% identified by 123456;
select user,host from mysql.user;
drop user @localhost;
drop user @server;
flush privileges;
exit
创建一个zabbix库,使用utf-8,授权所有人可以进去,密码是123456
记得删除用户localhost、server,不然会引起用户冲突,zabix连接失败
浏览器
http://192.168.206.102/info.php
创建php文件来做检测脚本,zabix是否能连接数据库
![0.1.png](https://s2.51cto.com/images/20220303/1646310514903133.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
vim /usr/share/nginx/html/info.php
![1.png](https://s2.51cto.com/images/20220303/1646310481531536.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
创建一个zabbix库,使用utf-8,授权所有人可以进去,密码是123456
记得删除用户localhost、server,不然会引起用户冲突,zabix连接失败
![2.png](https://s2.51cto.com/images/20220303/1646310519754562.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)![2.1.png](https://s2.51cto.com/images/20220303/1646310522353604.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
验证:zabix与数据库成功连接
![3.png](https://s2.51cto.com/images/20220303/1646310558197481.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
```html/xml
下面是部署zabbix
rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
安装zabix
安装插件依赖包
```html/xml
cd /usr/share/doc/zabbix-server-mysql-4.0.39/
zcat create.sql.gz | mysql -uzabbix -p zabbix
mysql -uzabbix -p123456
use zabbix;
show tables;
去/usr/share/doc/zabbix-server-mysql-4.0.39/ #查看自己安装的版本哦。不要直接复制转帖
把数据导入数据路当中(这步没完成开启不了10051端口哦)
![1.png](https://s2.51cto.com/images/20220303/1646313702994098.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
![2.png](https://s2.51cto.com/images/20220303/1646313704417423.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
```html/xml
编辑zabix配置文件
vim /etc/zabbix/zabbix_server.conf
#定义日志文件位置和名称
//38 LogFile=/var/log/zabbix/zabbix_server.log
#定义日志文件大小,0表示不限制大小
//49 LogFileSize=0
#进程文件位置
//72 PidFile=/var/run/zabbix/zabbix_server.pid
#通信sock文件
//82 SocketDir=/var/run/zabbix
#数据库所在服务器,本地
//91 DBHost=localhost
#数据库名称
//100 DBName=zabbix
#数据库用户
//116 DBUser=zabbix
#数据库密码
//124 DBPassword=admin123
#snmp协议日志位置
//356 SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
#定义超时时间
//473 Timeout=4
#告警的脚本存放位置
//516 AlertScriptsPath=/usr/lib/zabbix/alertscripts
#扩展性脚本存放位置
//527 ExternalScripts=/usr/lib/zabbix/externalscripts
#定义慢查询时间
//563 LogSlowQueries=3000
1去 /etc/zabbix/zabbix_server.conf 修改配置文件
124行是数据库密码
```html/xml
搞属主和组
cp -r /usr/share/zabbix/ /usr/share/nginx/html
chown -R zabbix.zabbix /etc/zabbix
chown -R zabbix.zabbix /usr/share/nginx
chown -R zabbix.zabbix /usr/lib/zabbix
chmod -R 755 /etc/zabbix/web
chmod -R 777 /var/lib/php/session
重启zabix
systemctl start zabbix-server.service
systemctl enable zabbix-server.service
systemctl restart php-fpm
netstat -napt | grep 10051
然后重启zabix和php就行
![1.png](https://s2.51cto.com/images/20220303/1646312962213781.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
![3.png](https://s2.51cto.com/images/20220303/1646313773303505.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
下面是浏览器登录
http://192.168.206.102/zabbix/setup.php
即可
按next进入环境监察
全ok即可,不然请排错
![2.png](https://s2.51cto.com/images/20220303/1646313019476957.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
下面是输入passwd(数据库密码)
![2.2.png](https://s2.51cto.com/images/20220303/1646313067510894.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
这不检查host和端口后直接下一步
![1.png](https://s2.51cto.com/images/20220303/1646313831604763.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
下一步
![2.png](https://s2.51cto.com/images/20220303/1646313900863270.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
直接下载
![2.1.png](https://s2.51cto.com/images/20220303/1646313903188718.png?x-oss-process=image/watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=)
```html/xml
cd /etc/zabbix/web
这个文件传过去
vim zabbix.conf.php #修改用户密码,你自己设置得
chmod +x zabbix.conf.php
如文本所示,修改自己的密码用户
然后就是授权了
下面是浏览器登录192.168.206.102/zabbix
初始账户Admin
密码是zabbix
(没截图)
这样子的话我们就安装好zabbix了
顺带一提,这里设置中文
完工!
以上是关于Zabbix分布式系统监控+ 试验:搭建一个Zabbix服务器的主要内容,如果未能解决你的问题,请参考以下文章