zabbix分布式监控服务 安装与配置

zabbix安装与配置

 

一、什么是zabbix及优缺点(对比cacti和nagios)

Zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
agent端:主机通过安装agent方式采集数据。
server端:通过收集agent发送的数据,写入数据库(MySQL,ORACLE等),再通过php+apache在web前端展示.
zabbix = cacti + nagios
  • 优点:基于两款工具优点于一身并更强大,实现企业级分布式监控。

  • 缺点:2.2版本带宽占用大但是升级到2.4版本后更节省了带宽资源,其它再无发现。

二、监控功能

主机的性能监控、网络设备性能监控、数据库性能监控、多种告警方式、详细的报表图表绘制
监控主机zabbix有专用的agent,可以监控Linux,Windows,FreeBSD等 。
监控网络设备zabbix通过SNMP,ssh(不多用)
可监控对象
  • 设备:服务器,路由器,交换机

  • 软件:OS,网络,应用程序

  • 主机性能指标监控

  • 故障监控: down机,服务不可用,主机不可达

三、工作原理

一个监控系统运行的大概的流程是这样的:
zabbix agent需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。这里agent收集数据分为主动和被动两种模式:
主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy
被动:server向agent请求获取监控项的数据,agent返回数据。
 

四、zabbix的组件及进程

 
重要组件
zabbix由以下几个组件部分构成:
1、Zabbix Server:负责接收agent发送的报告信息的核心组件,所有配置,统计数据及操作数据均由其组织进行;
2、Database Storage:专用于存储所有配置信息,以及由zabbix收集的数据;
3、Web interface:zabbix的GUI接口,通常与Server运行在同一台主机上;
4、Proxy:可选组件,常用于分布监控环境中,代理Server收集部分被监控端的监控数据并统一发往Server端;
5、Agent:部署在被监控主机上,负责收集本地数据并发往Server端或Proxy端;
注:zabbix node也是 zabbix server的一种 。
常见进程

五、zabbix监控环境中基本概念

1、主机(host):要监控的网络设备,可由IP或DNS名称指定;
2、主机组(host group):主机的逻辑容器,可以包含主机和模板,但同一个组织内的主机和模板不能互相链接;主机组通常在给用户或用户组指派监控权限时使用;
3、监控项(item):一个特定监控指标的相关的数据;这些数据来自于被监控对象;item是zabbix进行数据收集的核心,相对某个监控对象,每个item都由"key"标识;
4、触发器(trigger):一个表达式,用于评估某监控对象的特定item内接收到的数据是否在合理范围内,也就是阈值;接收的数据量大于阈值时,触发器状态将从"OK"转变为"Problem",当数据再次恢复到合理范围,又转变为"OK";
5、事件(event):触发一个值得关注的事情,比如触发器状态转变,新的agent或重新上线的agent的自动注册等;
6、动作(action):指对于特定事件事先定义的处理方法,如发送通知,何时执行操作;
7、报警升级(escalation):发送警报或者执行远程命令的自定义方案,如每隔5分钟发送一次警报,共发送5次等;
8、媒介(media):发送通知的手段或者通道,如Email、Jabber或者SMS等;
9、通知(notification):通过选定的媒介向用户发送的有关某事件的信息;
10、远程命令(remote command):预定义的命令,可在被监控主机处于某特定条件下时自动执行;
11、模板(template):用于快速定义被监控主机的预设条目集合,通常包含了item、trigger、graph、screen、application以及low-level discovery rule;模板可以直接链接至某个主机;
12、应用(application):一组item的集合;
13、web场景(web scennario):用于检测web站点可用性的一个活多个HTTP请求;
14、前端(frontend):Zabbix的web接口;
 

六、在centos7.3上安装zabbix4.0

#安装mariadb10.3数据库[mariadb]name=MariaDBbaseurl=http://mirrors.ustc.edu.cn/mariadb/yum/10.3/centos7-amd64/gpgkey=http://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDBgpgcheck=1#安装mariadb数据库yum install MariaDB#安装zabbix4.0的源rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm#安装zabbix所需的组件yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent# mysql -uroot -prootmysql> create database zabbix character set utf8 collate utf8_bin;mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';mysql> quit;#导入zabbix服务器所需要的表和数据zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix#编辑文件/etc/zabbix/zabbix_server.confDBPassword=zabbix#编辑文件设置时区/etc/httpd/conf.d/zabbix.confphp_value date.timezone Europe/Riga(打开注释)#启动服务和开机自启systemctl restart zabbix-server zabbix-agent httpdsystemctl enable zabbix-server zabbix-agent httpd#浏览器访问http://server_ip/zabbix #有乱码方块的解决办法在windows下的C:\Windows\Fonts下找到宋体字文件simsun.ttc上传到linux服务器中cd /usr/share/zabbix/fonts#将原来的字体备份mv graphfont.ttf graphfont.ttf.bak#把windows中的字体改名为graphfont.ttfmv simsun.ttc graphfont.ttf

一、关闭sendmail或者postfix

service sendmail stop #关闭

chkconfig sendmail off #禁止开机启动

service postfix stop

chkconfig postfix off

备注:

使用外部邮箱账号时,不需要启动sendmail或者postfix

如果在sendmail或者postfix启动的同时使用外部邮箱发送报警邮件,首先会读取外部邮箱

配置信息。

二、安装邮件发送工具mailx

下载mailx:

yum install mailx

whereis mailx #查看安装路径

mailx -V #查看版本信息

三、配置Zabbix服务端外部邮箱

vi /etc/mail.rc #编辑,添加以下信息

set from=xxx@163.com smtp=smtp.163.com

set smtp-auth-user=xxx@163.com smtp-auth-password=123456

set smtp-auth=login

:wq! #保存退出

echo "zabbix test mail" |mail -s "zabbix" yyy@163.com

#测试发送邮件,标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:yyy@163.com

#这时候,邮箱yyy@163.com会收到来自xxx@163.com的测试邮件

四、配置Zabbix服务端邮件报警

1、打开Zabbix

2、设置Zabbix用户报警邮箱地址

3、设置Zabbix触发报警的动作

主题:

Problem: {EVENT.NAME}故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!

内容:

告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

恢复主题:

恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!

恢复信息:

告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}

事件ID:{EVENT.ID}

已启用:打钩

切换到操作选项

新的

操作类型:送出信息

送到用户:添加

默认信息:打钩

选择用户:Admin

选择

仅送到:Sendmail

存档

4、添加Zabbix服务端邮件发送脚本

cd /usr/lib/zabbix/alertscripts    #进入脚本存放目录

vi sendmail.sh #编辑,添加以下代码

#!/usr/bin/shecho 'start' >> /tmp/zabbix.logmessages=`echo $3 | tr '\r\n' '\n'`subject=`echo $2 | tr '\r\n' '\n'`echo "${messages}" | mail -s "${subject}" $1echo "end" >> /tmp/zabbix.log

:wq! #保存退出

chown zabbix.zabbix sendmail.sh

chown zabbix.zabbix /tmp/zabbix.log

#设置脚本所有者为zabbix用户

chmod +x sendmail.sh

#设置脚本执行权限

五、测试Zabbix报警

关闭Zabbix客户端服务

service zabbix_agentd stop

查看xxx@163.com邮箱,会收到报警邮件

再开启Zabbix客户端服务

service zabbix_agentd start

查看xxx@163.com邮箱,会收到恢复邮件

自动发现

点击配置--->自动发现

创建自动发现的规则

然后就可以在检测自动发现里看到扫描出来的主机了

如果要监控起来需要添加自动注册,点击配置--->动作

zabbix监控mysql数据库

在客户端的zabbix配置文件中添加HOME=/etc/zabbix/ mysqladmin ping | grep -c alive

proxy配置

create database zabbix_proxy character set utf8 collate utf8_bin;grant all privileges on zabbix_proxy.* to zabbix@localhost identified by 'zabbix';zcat /usr/share/doc/zabbix-proxy-mysql-4.0.6/schema.sql.gz | mysql -uzabbix -pzabbix zabbix_proxyvim /etc/zabbix/zabbix_proxy.confServer=192.168.254.61(zabbix server的ip地址)Hostname=zabbix-proxy(本机的主机名字)DBName=zabbix_proxy(数据库名字)DBUser=zabbix(数据库用户名)DBPassword=zabbix(数据库密码)service zabbix-proxy restart

agent端

Server=192.168.254.62ServerActive=192.168.254.62HostnameItem=system.hostname

自定义监控

UnsafeUserParameters=1UserParameter=proc.mysql,ps -ef|grep mysql|wc -l

测试命令

yum install zabbix-getzabbix_get -s 127.0.0.1 -p 10050 -k "proc.mysql"
(0)

相关推荐

  • Zabbix3.4使用详解

    zabbix-基础 第1章 关于zabbix 1.1 为什么要使用监控 1.对系统不间断实时监控 2.实时反馈系统当前状态 3.保证服务可靠性安全性 4.保证业务持续稳定运行 1.2 如何进行监控 比 ...

  • 监控工具之Zabbix,搭建过程和使用心得

    一.简介 1.1 zabbix监控框架工具介绍 Zabbix架构图 zabbix是一个企业级分布式开源监控解决方案,能够监控众多网络参数和服务器的健康度.完整性.使用灵活的告警机制,允许用户为几乎任何 ...

  • Zabbix分布式监控系统

    Zabbix分布式监控系统 准备两台虚拟机,yum源使用zabbix文件夹 基础环境配置 主机名配置 # hostnamectl set-hostname zabbix-server # hostna ...

  • CentOS 7 Tomcat服务的安装与配置

    一.Linux下的Java运行环境 Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即J ...

  • CentOS 7 Apache服务的安装与配置

    https://blog.51cto.com/13525470/2070375 一.Apache简介 Apache 是一个知名的开源Web服务器. 早期的Apache服务器由Apache Group来 ...

  • 2022年起,AMSA将为船只提供24小时HF监控服务

    从2022年1月1日起,AMSA将在澳大利亚提供24小时全国范围的高频(HF)无线电话船只遇险.紧急情况和安全通信监控. HF无线电话是VHF岸站范围以外的船只与其他船只和岸站发送和接收遇险和海上安全 ...

  • 变电站辅助系统综合监控平台 安装及调试

    变电站辅助系统综合监控平台 安装及调试

  • linux下vsftpd的安装及配置使用详细步骤

    安装 yum install vsftpd 新建/home/uftp目录作为用户主目录 mkdir /home/uftp 新建用户uftp: useradd -d /home/uftp -s /bin ...

  • 【Go从学会到学废】(一) 下载、安装、配置

    一.下载 Go语言官方网站地址https://golang.google.cn/ Go语言中文网下载地址https://studygolang.com/dl 二.安装 双击安装包,一直下一步就行 安装 ...

  • 自建RSS阅读器Tiny Tiny RSS安装和配置自动更新,全文RSS,更换主题,手机RSS登录

    关于放弃商业的和免费的在线RSS阅读器,转用自己自建个人RSS阅读器,wzfou.com在放弃免费Inoreader 自建RSS阅读器一文中就建议使用Tiny Tiny RSS和FreshRSS这两个 ...

  • 电脑监控软件安装方法

    在公司电脑上面安装电脑监控软件需要提前告知员工,否则会有偷窥员工隐私嫌疑,一旦触犯员工个人利益,员工可申请劳动仲裁. 安企神软件的安装非常简单,只需要在一台电脑上安装上管理端,在其他员工电脑安装被控端 ...