Zabbix监控服务

Linux监控平台介绍

常见开源监控软件

cacti、nagios、zabbix、smokeping、open-falcon等等 # cacti、smokeping偏向于基础监控,成图非常漂亮 # cacti、nagios、zabbix服务端监控中心,需要php环境支持. 其中zabbix和cacti都需要mysql作为数据存储, nagios不用存储历史数据,注重服务或者监控项的状态, zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图 # open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业, 滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究。

Zabbix监控介绍

Zabbix为 C/S 架构,基于C++开发,监控中心支持web界面配置和管理,单server节点可以支持上万台客户端 # 最新版本3.4,官方文档https://www.zabbix.com/manuals # 5个组件 1:zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据 2:数据存储 存放数据,比如mysql 3:web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因 4:zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力 5:zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报:

安装zabbix

实验环境说明

本实验需要两个虚拟机,一台作为Zabbix监控服务器,一台作为被监控的主机 #服务器与客户端最好关闭防火墙与SELINUX Zabbix服务器: 主机名:zabbix-server IP:10.1.1.30 需要预先安装epel扩展源和mysql服务,当然mysql也可以使用其他的主机上的mysql服务 Zabbix客户端:被监控的主机 主机名:zabbix-agent IP:10.1.1.31

准备安装Zabbix服务器的环境

这里使用yum安装的方式来安装Zabbix服务 # yum源里面的Zabbix服务版本比较老,所以需要先安装Zabbix官方的yum源 # 官网下载地址 www.zabbix.com/download

wget https://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm

rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm #这个需要注意版本号

yum安装Zabbix服务

yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql # 这个会自动的安装Httpd服务和PHP服务,并且自动的配置好运行环境

数据库相关设置

Zabbix服务相关设置

启动服务

Windows下用浏览器访问 zabbix-server服务的地址 http://10.1.1.30/zabbix

这里点击Next step会报错:Time zone for PHP is not set (configuration parameter “date.timezone”).

# 需要修改PHP的配置文件,设置时区 # 修改/etc/php.ini 配置文件, 找到 ;data.timezone = 修改为 data.timezone = Asia/Shanghai # 注意需要去掉开头的分号 ;

然后重启httpd服务,刷新浏览器的页面

可以看到全部条件都为OK的状态。

然后点击Next step,设置数据库信息

Database type # 保持默认的 MySQL

Database host # 填写mysql服务器的地址

Database port # 0就表示默认的mysql端口3306,如果数据库自定义了其他端口需要填写具体的端口号

Database name # 填写前面在mysql里面创建的库名zabbix

User # 填写在前面mysql里面创建的zabbix用户

Password # 填写创建zabbix用户时设定的密码

点击Next step 设置zabbix服务的相关信息

Host和Port保持默认即可,Name可以随意定义:

再次点击Next Step,可以检查刚才所填写的信息是否有问题,如果没问题直接点Next step即可。

成功安装了Zabbix 前端

然后点击Finish就会跳转到登录界面,输入默认的账号:Admin 密码:zabbix 即可登录

登陆后的界面

登录后的第一件事是修改Admin账号的密码

依次点击页面上的Administration>Users>Admin

再点击页面中Password后面的Change password ,然后填入新的密码,需要填写两次相同的密码,

还可以在此页面修改webUI显示的语言,将Language 改为 Chinese (zh_CN) 就可以显示中文了

修改完点击下方的UPdate,然后刷新一下就可以看到中文的页面了,同时密码也更改了

忘记Admin密码如何做

添加监控的主机

安装zabbix-agent服务

安装

zabbix-agent安装好之后还需要修改配置文件:

启动zabbix-agent服务

systemctl start zabbix-agent

systemctl enable zabbix-agent

添加主机

添加主机前需要创建一个主机组

添加主机:

点击web界面的 配置 > 主机 > 创建主机

添加自定义模板

模板概述:

在Zabbix-server中有许多自带的监控模板,也可以我们自己添加自定义的模板

模板是一些配置的集合,它可以应用在多个主机上,便于配置管理。

一个模板中包含以下的配置:

  应用集
  监控项
  触发器
  图形
  聚合图形:
  自动发现:
  web监测

使用链接自带模板的方式添加自定义模板:

依次点击web界面的 配置 > 模板 > 创建模板

然后填写模板名,和可见名, 群组需要选择Templates,设置好这些就可以点击添加了

刚创建的模板里面是空的,模板的监控项可以从其他模板复制过来,在模板列表里找到 Template OS Linux,点击它的监控项

然后勾选需要复制到新模板的监控项,再点击复制

目标类型:选择模板,群组:Templates,目标:勾选test_template,

然后再点击复制,完城后web页面会出现 监控项复制 的提示

找到先前创建的模板,就可以看到模板下已经有监控项了

但是自动发现规则并不能使用这种复制的方式。因为它没有复制的选项

这样的话还可以将相关的模板导出成xml的配置文件, 进行修改之后再导入到新模板中

但是这种方式相对比较复杂,

还有另外一种方式,链接到指定的模板,然后删除用不到的配置。

1:进入先前创建的模板,点击链接的模板

2:点击链接指示器后面的选择,勾选 Template OS Linux ,然后点击最下面的选择

3:点击链接指示器下面的添加,点击添加后,Template OS Linux 会出现在链接的模板那个框里

4:点击更新,完成后就可以看到模板中应用集,监控项等都有配置了

5:还需要修改一下链接模板的配置,进入链接模板的页面,点解取消链接,不要点到链接并清理

这一步是为了能修改和删除这个模板中的东西,

如果不取消链接,就不能在这个模板中修改和删除东西,只能去源模板里面操作。

如上如,点击取消链接,可以保留所有的配置,如果点击取消链接并清理就会删除链接创建的配置。 
点击取消链接后,记得点更新,

然后就可以删除test-template这个模板中我们用不上的监控项。

如下图勾选上用不到的监控项,然后点击删除就OK了

(注:如果报错Error in query [INSERT INTO…. 需要重新创建zabbix库,在创建库的时候指定字符集为utf8)

然后还可以删除应用集中没有监控项的应用集

然后将前面添加的主机 zabbix-agent-01 添加到这个模板中

进入test_template模板,在主机/模板区块中添加zabbix-agent-01这台主机

处理图形中的乱码

问题描述

进入test_template的图形的页面,任意点击一个图形的名称,然后点击预览,

可以看到预览图形的下方有一些不明所以的小方块

这是因为我们使用了中文的web页面,但是图形所使用的字库只是一个英文字库,所以才显示为小方块。

需要将图形使用的字库更换为中文字库,才能解决这个问题

更换字库

检查是否更换成功

重新打开一个图形预览页面,可以看到中文已经正常显示了。

自动发现

更改自动发现规则的更新时间

默认的自动发现规则更新时间为1个小时,为了更块看到效果,可以将更新时间更改为30s

点击test_template模板的自动发现

然后点击 Network interface discovery这个自动发现规则。 
将更新时间的 1h 更改为 30s 然后点击更新

然后等待30秒后,图形中就会出现一个新的图形,这个就是监控网卡流量的图形

在zabbix-agent主机上下载一个大一点的文件(比如mysql的二进制包),来查看这个图形的效果

添加自定义监控项目

需求:监控某台主机的tcp状态处于TIME_WAIT连接数,并出图

解决方案:

1:客户端相关配置

2:服务端相关配置

3:在Zabbix 监控中心 web 页面添加监控项目

然后填写相关信息,

名称随便定义,

类型保持默认,

键值填写 my.estab.count 需要与客户端配置文件中定义的UserParameter相同

其他的保持默认即可,配置完点击添加就好。

然后依次点击 监测中 > 最新数据 , 用过滤筛选出刚才添加的监控项看看是否有数据

如果有数据,就可以建立图形了。

依次点击 配置 > 模板 > test_template模板的图形 > 创建图形

然后填入图形的名称,再点击最下面的监控项的添加,添加刚才创建的TCP_TIME_WAIT监控项

其他保持默认,绘图风格和颜色,可以根据自己的喜好进行修改。配置完点击最下面的添加按钮。

配置完成就可以在 监测中 > 图形 查看到这个图形了(注意需要在红框中进行筛选才能看到)

主动模式和被动模式

定义主动模式或被动模式

在webUI中一次点击 配置 > 模板或者主机 > 监控项 > 监控项的名称,然后会加载类似下图的页面, 
图里面的红框中 Zabbix 客户端表示被动模式, Zabbix 客户端(主动式)就表示主动模式 。

配置邮件告警

准备邮箱

# 如果使用163或者QQ邮箱发告警邮件

# 首先需要登录你的163或者QQ邮箱,到设置里面开启POP3、IMAP、SMTP服务

# 开启并记录授权码

监控中心设置邮件告警

依次点击 管理 > 报警媒介类型 > 创建媒体类型

然后填写相关信息:

名称(自定义),类型选择脚本,后面会在主机上编写一个发邮件的脚本

依次添加三个脚本参数,需要注意顺序 {ALERT.SENDTO} ,{ALERT.SUBJECT},{ALERT.MESSAGE}

然后点击添加按钮

编写邮件发送脚本

接下来还需要在主机上编写一个发邮件的python脚本

写入脚本的内容如下,需要根据自己的情况进行修改:

给脚本执行权限 
bash 
[root@zabbix-server dejavu]# chmod 755 chmod 755 /usr/lib/zabbix/alertscripts/mail.py 

测试脚本能否发邮箱
[root@zabbix-server dejavu]# python /usr/lib/zabbix/alertscripts/mail.py deaoza@163.com 'testmail' 'this is a test mail' 

检查邮箱是否有收到邮件,如果可以收到邮件,表示脚本已经没问题了。

创建一个接受告警邮件的用户

依次点击 管理 > 用户 > 创建用户 先填写一些用户的基本信息

然后点击 报警媒介,添加一条报警媒介,类型选择“Baojing”

还需要注意用户的权限,如果没有需要到用户组去设置权限

用户群组中点击 Zabbix administrators ,然后点权限,再点击下面图中的选择按钮,

然后在弹出的窗口中勾选所有的主机群组,再点击选择,

还需要选中读写的权限。然后点击添加,不点击添加不会生效。

点击添加后

再点击上图的更新,然后查看sendmail用户的权限

设置动作

动作是在触发报警条件以后执行的一些操作。

依次点击 配置 > 动作 > 创建动作

名称写“sendmail”(自定义),添加两个条件如图

“操作”页面,标题默认,消息内容如下:

点击操作框的 ’新的‘ 创建具体操作,创建完点操作细节框最下面的添加,才表示创建完毕

测试告警

给主机zabbix-agent-01创建一个触发器

依次点击 配置 > 主机 > zabbix-agent-01的触发器 > 创建触发器

然后填写信息,名称随意,严重性:未分类

添加表达式,监控项选择先前添加的 TCP_TIME_WAIT , 
功能选择 最新的值 < N 
最后一个(T) 就保持为 时间 
间隔 30s , N值,这里因为我的TCP_TIME_WAIT的值一直是小于20的 所有将N值设置为25就很容易就报警了 
设置完成点插入按钮 

然后其他的选项保持默认就好,然后点击最下面的添加按钮完成创建触发器

接下来稍等一会就可以在仪表盘中的问题栏看见问题

出现问题发送的邮件成功,然后修改触发器将T值改为大于N

问题恢复的邮件也发送成功,

最后确认了问题已恢复,确认问题恢复的邮件也发送成功

发送失败的那个是我在动作的配置中有问题,不应该添加发送消息给用户群组,后面修改了就没有问题了。

扩展阅读

Prometheus入门

使用Prometheus+grafana打造高逼格监控平台

zabbix监控交换机(思科)

zabbix远程执行命令

zabbix分布式部署

zabbix监控tomcat(版本有点老,大家只需要参考步骤,不能照搬)

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值