Zabbix:从介绍、安装到使用【全】【基础篇】

Zabbix:

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


Zabbix组成:

zabbix由2部分构成,zabbix server与可选组件zabbix agent


Zabbix功能:

监控:

  • CPU负荷
  • 内存使用
  • 磁盘使用
  • 网络状况
  • 端口监视
  • 日志监视

在这里插入图片描述

在使用上:我们通常对物理机监控会使用Zabbix,监控服务,物理机状态,网络等。
而对容器一般用普罗米修斯监控【实时监控】,原因是容器时实时存储再释放的,不需要记录,Zabbix监控会产生较多的日志记录


Zabbix特点:

在这里插入图片描述

  • 安装与配置简单,学习成本低
  • 支持多语言(包括中文)
  • 免费开源
  • 自动发现服务器与网络设备
  • 分布式监视以及WEB集中管理功能
  • 可以无agent监视
  • 用户安全认证和柔软的授权方式
  • 通过WEB界面设置或查看监视结果
  • email等通知功能

下面部分为Zabbix使用演示:

主机名IP
server1172.25.12.1 (zabbix-server)
server2172.25.12.2 (zabbix-agent)
server3172.25.12.3(zabbix-proxy)
server4172.25.12.4(zabbix-agent)
端口占用:

zabbix-server 10051
zabbix-agent 10050
mysql数据库 3306

在这里插入图片描述


第一部分:安装演示:

在这里插入图片描述

我这边直接将需要用到的软件包,以及解决依赖性的包都下载存放在了/var/www/html/4.0中,然后真机通过httpd将其共享,虚拟机搭建yum仓库,使其可以使用。

如何网络共享yum源以及本地搭建yum源:https://blog.csdn.net/dddxxy/article/details/89500440
在这里插入图片描述

在这里插入图片描述
server1:

yum install -y zabbix-server-mysql mariadb-server zabbix-web-mysql  #下载zabbix服务端 ,mariadb数据库,前端数据库web界面
systemctl start mariadb   #开启数据库
mysql_secure_installation  #数据库安全初始化

在这里插入图片描述

mysql -p  #登陆数据库
create database zabbix character set utf8 collate utf8_bin;   #创建zabbix库
grant all privileges on zabbix.* to zabbix@localhost identified by 'redhat';   #安全初始化中我设定密码为redhat
##如果不能直接授权,那么需要先创建用户,然后再授权
     CREATE USER zabbix@'%' identified by'redhat'; 
 ##用户建立 【%:有远程登陆的权力】【localhost:本地登陆】【by后面跟密码】
     GRANT all privileges ON zabbix.* TO zabbix@'%' identified by'redhat';  
exit
cd /usr/share/doc/zabbix-server-mysql-4.0.5/
zcat create.sql.gz | mysql -p zabbix   #输入mariadb设置的密码
mysql -predhat
use zabbix
show tables  #可以查看到zcat导入进来的表【144个】
cd /etc/zabbix/
vim zabbix_server.conf   #更改DBPassword= 密码【我统一都设置为redhat】
systemctl start zabbix-server  #开启服务
systemctl enable zabbix-server  #开机自启
vim /etc/httpd/conf.d/zabbix.conf
	将php_value data.timezone的注释去掉,更改时区为Asia/shanghai
	#更改时区是因为php要求,当网页登陆时,会有这个要求
systemctl enable httpd   #开启自启

网页访问:http://172.25.12.1/zabbix
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
以上就完成了基础配置,可以进入zabbix页面进行监控。如果初始页面是英文版,可以在有上角的人物头像处点击一下,里面有语言切换。【注意!:中文版在图形监测时的汉字可能会为乱码,需要修改配置文件。】


第二部分:agent端:

在做agent的服务器上,我们只需要:

  yum install -y zabbix-agent   #安装客户端
  vim /etc/zabbix/zabbix_agent.conf
  		Server=server端IP    #agent被server监测
  		ServerActive=server端IP   #agent主动请求server监测
  		Hostname=本机主机名
  systemctl start zabbix-agent  #开启
  systemctl enable zabbix-agent  #开机自动启动【为了方便,可以不设置】

在配置,主机界面,能看到已经发现的zabbix服务器,包括服务端,客户端,代理端。下面的代理是我之前已经做过配置,默认没有。在server端也可以添加agent,这样就可以做到监控自己。
在这里插入图片描述
补充一下:我们部分地方是使用主机名来进行指向的,所以把各个主机的本地解析做好,防止访问不到。

想要去监控agent,那么需要我们主动去先添加要监控的agent主机:
在配置–>主机–>创建主机
在这里插入图片描述
主机主体设置好后,要添加模版;批量管理,都是根据模版中的设定来去监控主机,而不是需要我们一点一点全部自己添加要监控的内容。
在这里插入图片描述

在这里插入图片描述


第三部分:自动发现和自动注册:

介绍:自动发现&自动注册

自动发现:当有满足设定条件的agent端主机出现时,会执行我们为其设定的动作,发现主机并为其执行动作也就创建了主机。
自动注册:省去创建主机的步骤,当有满足条件的agent主机时,自动为其执行动作,将其添加到主机,以及执行其他设定动作

区别:主动和被动

主要为主动和被动的区别,自动发现为server端主动去寻找agent,自动注册为agent主动去注册。

设置:如何使用

配置–>动作–>事件源【自动发现】【自动注册】
必须先设置动作,然后再设置规则!先设置规则并启用的话如果有其他默认动作,就会执行其他动作。

这里我直接 启用了下方的动作,没有再手动添加动作。
在这里插入图片描述
设定完动作后,设定规则:
在这里插入图片描述
在这里插入图片描述
我之前没有开启过server4,现在我开启server4的zabbix-agent【下载zabbix-agent,更改配置文件,开启服务】,会发现已经给它执行了我们设定的动作:添加组。
在这里插入图片描述
注册:简而言之,添加,将满足条件的主机添加到我们的主机列表中。只需要设定条件和动作即可。
在这里插入图片描述
在这里插入图片描述


第四部分:脚本方式调用API

https://www.zabbix.com/documentation/4.0/zh/manual/api/reference/host/get
参考官方说明文档


第五部分:图形监控中的中文乱码解决:

乱码的原因是字体不识别,我们更换一种字体即可。
这里我在网上找了simkai.ttf字体,并将其放在了/usr/share/zabbix/fonts这个目录下
在这里插入图片描述
然后vim defines.inc.php将graphfont替换为simkai
在这里插入图片描述
在这里插入图片描述

systemctl restart zabbix-server      #重起服务      

改完后中文乱码就消失了。

在这里插入图片描述


第六部分:监控nginx:

在server4上安装nginx
我使用的是 nginx-1.15.8.tar.gz

tar zxf nginx-1.15.8.tar.gz  #解压
yum install -y gcc pcre-devel zlib-devel  #安装编译工具
vim auto/cc/gcc   #防止编译后文件过大

在这里插入图片描述

./configure --prefix=/usr/local/nginx --with-http_stub_status_module   #编译检测,模块添加
make && make install   #编译
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/   #制作软链接
nginx -t   #检测配置文件是否正确
vim /usr/local/nginx/conf/nginx.conf    #编辑nginx配置文件

在这里插入图片描述

nginx -t
nginx -s reload   #重新家载nginx
curl http://localhost/status   
#访问测试,截图中因为这是我第四次访问了,每次访问会使其值增加。每个数字分别对应accept、handled、requests

在这里插入图片描述

cd /etc/zabbix/zabbix_agentd.d/   
cp userparameter_mysql.conf userparameter_nginx.conf   #用复制后的文件编写脚本
vim userparameter_nginx.conf    
	删除原有所有内容
	UserParameter=nginx.active,curl -s http://localhost/status | grep Active | awk '{print $3}'
#捕获数据
systemctl restart zabbix-agent   #重起agent

在server1上:

yum install -y zabbix-get
zabbix_get -s 172.25.12.4 -p  10050 -k "nginx.active"

在这里插入图片描述
这样,我们在server4上用脚本获取的数据,通过server1的zabbix_get就得到了。
在网页上,给server4添加监控项:在这里插入图片描述
然后图形方式,预览,就能看到图形化的数据监控了。在这里插入图片描述

同样的方式:

vim userparameter_nginx.conf    
#继续添加
	UserParameter=nginx.accept,curl -s http://localhost/status | awk NR==3  | awk '{print $1}'
	UserParameter=nginx.request,curl -s http://localhost/status | awk NR==3  | awk '{print $3}'
#捕获数据
systemctl restart zabbix-agent   #重起agent

给主机server4添加监控项,图形模式下监控。就可以看我们指定的nginx状态。

补充:action & accept & request的区别:
action: #活跃连接数
accept: #server接受的连接数
request: #请求server来连接的数目


大大的小小阳

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值