Zabbix监控

一、Zabbix介绍

Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。

zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

1、zabbix监控架构

zabbix根据网络环境、监控归农等分了三种架构:server-client、master-node-client、server-proxy-client

server-client架构

zabbix最简单的监控架构,监控机和被监控机之间不经过任何代理,直接由zabbix server和zabbix agentd之间进行数据交互。适用于网络比较简单、设备比较少的监控环境。

server-proxy-client架构

server-proxy-client架构中proxy是server、client之间沟通的一个桥梁,proxy本身没有前端,且本身并不存放数据,只是将agentd发来的数据暂时存放,再提交给server。适用于跨机房、跨网阔的中型网络架构的监控

master-node-client架构

zabbix最复杂的监控架构,适用于跨机房、跨网络、设备较多的大型环境。每个node同时也是一个server端,node下面可以接proxy,也可以直接接client。node有自己的配置文件和数据库,其要做的是将配置信息和监控数据向master同步

2、zabbix优点

  • 开源,无软件成本投入。
  • Server对设备要求低。
  • 支持设备多,自带多种监控模板。
  • 支持分布式集中管理,有自动发现功能,可以实现自动化监控。
  • 监控的item比较多服务器队列比较大时可以采用被动状态,被监控客户端主动从server端去下载需要监控的item,然后取数据上传到server端。这种方式对服务器的负载比较小。
  • API的支持,方便与其他系统结合。

3、 zabbix缺点

需要在被监控主机上安装agent,所有数据都存放在数据库里,产生的数据很大。

4、zabbix功能

具备常见的商业监控软件所具备的功能

主机的性能监控
网络设备性能监控
数据库性能监控
FTP等通用协议监控
多种告警方式
详细的报表图表绘制

支持自动发现网络设备和服务器;支持分布式,能集中展示、管理分布式的监控点;扩展性强,server提供通用接口,可以自己开发完善各类监控。

5、zabbix监控对象

数据库: MySQL,MariaDB,Oracle,SQL,Server
应用软件: Nginx,Apache,PHP,Tomcat

集群:LVS,Keepalived,Haproxy,RHCS,FS
虚拟化:VMware,KVM,XEN
操作系统:Linux,Unix,Windows

硬件:服务器,存储,网络设备
网络:网络环境(内网环境,外网环境)

6、监控区别

1.nagios图形不是特别好,也可以安装图形插件,但是也不怎么好看
2.nagios一般情况下如果需要图形可以和cacti配合使用
3.cacti的监控是轮询监控,效率低,图形相对nagios比较好看
4.zabbix和nagios因为是并发监控,对cpu的要求更高
5.zabbix在性能和功能上都强大很多
6.zabbix的图形相当漂亮
7.支持多种监控方式 zabbix-agent  snmp 等等
8.支持分布式监控,能监控的agent非常多
9.zabbix有图形的web配置界面,配置简洁
10.zabbix支持自动发现功能

7、Zabbix组件

zabbix server

Zabbix server是agent程序报告系统可用性、系统完整性和统计数据的核心组件,是所有配置信息、统计信息和操作数据的核心存储器。

zabbix database

所有配置信息和Zabbix收集到的数据都被存储在数据库中。

zabbix web

为了从任何地方和任何平台都可以轻松的访问Zabbix, 我们提供基于Web的Zabbix界面。该界面是Zabbix Server的一部分,通常跟Zabbix Server运行在同一台物理机器上。

zabbix proxy

zabbix proxy可以替zabbix server收集性能和可用性数据。再统一发送给server

zabbix agent

Zabbix agents监控代理 部署在监控目标上,能够主动监控本地资源和应用程序,并将收集到的数据报告给Zabbix Server。

二、zabbix监控系统搭建

1、server端安装

zabbix包下载

进入官网zabbix点击下载
在这里插入图片描述
找到对应版本
在这里插入图片描述
在这里插入图片描述
根据提示下载,并更新yum源

[root@cosin ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/7/x86_64/zabbix-release-5.4-1.el7.noarch.rpm
[root@cosin ~]# yum clean all
[root@cosin ~]# yum repolist
#配置国内源(这里使用阿里云的)
[root@cosin ~]# sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo  

#安装zabbix及相关工具

[root@cosin ~]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y
[root@cosin ~]# yum install -y zabbix-get.x86_64
安装设置数据库

为了实验方便,这里使用mariadb

[root@cosin ~]# yum install mariadb mariadb-server -y
[root@cosin ~]# systemctl restart mariadb
[root@cosin ~]# systemctl enable mariadb
[root@cosin ~]# mysqladmin -uroot password 'zabbix@23'	#设置密码

创建数据库并授权账号

[root@cosin ~]# mysql -uroot -p'zabbix@23'
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;  # 创建zabbix数据库
MriaDB [(none)]> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';										# 注意授权网段
MariaDB [(none)]> flush privileges;           # 刷新授权
MariaDB [(none)]> \q

导入表

[root@cosin ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password:                   #输入密码
配置server端
[root@cosin ~]# cd /etc/zabbix/
[root@cosin zabbix]# ls
web  zabbix_agentd.conf  zabbix_agentd.d  zabbix_server.conf
#为了方便我们以后恢复,我们把配置文件备份一下
[root@cosin zabbix]# cp zabbix_server.conf zabbix_server.conf.bak
[root@cosin zabbix]# vim zabbix_server.conf
 DBHost=localhost            #数据库对外的主机
 DBName=zabbix               #数据库名称
 DBUser=zabbix               #数据库用户
 DBPassword=zabbix           #数据库密码
 
[root@cosin zabbix]# systemctl start zabbix-server		#配置完成开启服务
[root@cosin zabbix]# systemctl enable zabbix-server
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
[root@cosin zabbix]# netstat -lntp | grep 10051		#查看端口确定服务是否开启
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      1574/zabbix_server  
tcp6       0      0 :::10051                :::*                    LISTEN      1574/zabbix_server
配置 web GUI
1.启用zabbix前端源,修改vim /etc/yum.repos.d/zabbix.repo,将[zabbix-frontend]下的 enabled 改为 1
[root@cosin zabbix]# vim /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]
...
enabled=1
...
2.安装 Software Collections,便于后续安装高版本的 php,默认 yum 安装的 php 版本为 5.4 过低
[root@cosin zabbix]# yum install centos-release-scl -y
3.安装 zabbix 前端和相关环境
[root@cosin zabbix]# yum install zabbix-web-mysql-scl zabbix-apache-conf-scl -y
[root@cosin ~]# vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf   #设置时区
#里面基本不用动。只需要添加一行时区即可
php_value[date.timezone] = Asia/Shanghai     

#启动服务并设置开机自启
[root@cosin ~]# systemctl restart cosin zabbix-agent httpd rh-php72-php-fpm
[root@cosin ~]# systemctl enable cosin zabbix-agent httpd rh-php72-php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/rh-php72-php-fpm.service to /usr/lib/systemd/system/rh-php72-php-fpm.service. 
浏览器访问并进行初始化设置

使用浏览器访问39.106.68.210/zabbix,第一次访问时要进行初始化设置,根据提示操作即可
在这里插入图片描述

在这里插入图片描述
配置响应的ip和端口默认,也可以更改
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击完成后跳转到登录界面,默认用户名为Admin,密码默认为zabbix
在这里插入图片描述
在这里插入图片描述

2、agent端配置

zabbix安装
[root@zabbix-node1 ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[root@zabbix-node1 ~]# yum install -y zabbix-agent zabbix-sender
修改配置文件
[root@zabbix-node1 ~]# cd /etc/zabbix/
[root@zabbix-node1 zabbix]# ls
zabbix_agentd.conf  zabbix_agentd.d
[root@zabbix-node1 zabbix]# cp zabbix_agentd.conf zabbix_agentd.conf.bak 
[root@zabbix-node1 zabbix]# vim zabbix_agentd.conf
Server=39.106.68.210zabbix服务器的地址 
ServerActive=39.106.68.210 主动模式 zabbix-server-ip 
Hostname=zabbix-node1 	#本机主机名
UnsafeUserParameters=1 是否限制用户自定义 keys 使用特殊字符 1是可以启用特殊字符 0是不可以启用特殊字符
[root@zabbix-node1 zabbix]# systemctl restart zabbix-agent
[root@zabbix-node1 zabbix]# systemctl enable zabbix-agent
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@zabbix-node1 zabbix]# netstat -lntp | grep 10050
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name           
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      1493/zabbix_agentd      
tcp6       0      0 :::10050                :::*                    LISTEN      1493/zabbix_agentd  

多台agent端也是一样的操作,把各配置文件中的Hostname改为对应的就行

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cionsi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值