1、Windows服务器需要先安装zabbix-agent代理

概况

Zabbix agent部署在监控的目标上,主动监测本地的资源和应用(硬件驱动,内存,处理器统计等)。

Zabbix agent收集本地的操作信息并将数据报告给Zabbix server用于进一步处理。一旦出现异常 (比如硬盘空间已满或者有崩溃的服务进程), Zabbix server会主动警告管理员指定机器上的异常。

Zabbix agents的极端高效缘于它可以利用本地系统调用来完成统计数据的收集。

被动(passive)和主动(active)检查

Zabbix agents可以执行被动和主动两种检查方式。

Windows上的Zabbix agent是以Windows服务的形式运行的。

您可以在主机上运行Zabbix agent的单个实例或多个实例。

单个实例可以使用默认配置文件或命令行中指定的配置文件。

在多个实例的情况下,每个agent实例必须有自己独立的配置文件(其中一个实例可以使用默认配置文件)。

以下命令参数可以在Zabbix agent中使用:

参数 描述n
UNIX 和 Windows agent
-c --config <config-file> 配置文件的绝对路径。
您可以使用此选项来制定配置文件,而不是使用默认文件。\\在UNIX中, 默认文件是/usr/local/etc/zabbix_agentd.conf 要么通过 compile-time 变量 --sysconfdir 或者 --prefix来设置
在Windows中,默认文件是 c:\zabbix_agentd.conf
-p --print 显示已知监控项并推出
Note: 为了同时返回用户参数user parameter 您必须制定配置文件 (如果不是在指定位置的话).
-t --test <item key> 测试指定监控项并退出。
Note:为了同时返回用户参数 user parameter 您必须制定配置文件 (如果不是在指定位置的话).
-h --help 显示帮助信息
-V --version 显示版本号
仅UNIX agent
-R --runtime-control <option> 执行管理功能。参见 运行时控制. runtime control.
仅Windows agent
-m --multiple-agents 使用多agent实例 (使用 -i,-d,-s,-x )。
T为了区分实例的服务名称,每项服务名都会包涵来自配置文件里的主机名值。
仅Windows agent (功能)
-i --install 以服务的形式安装Zabbix Windows agent
-d --uninstall 卸载Zabbix indows agent服务
-s --start 开始Zabbix Windows agent服务
-x --stop 停止bbix Windows agent 服务

将上面下载的zabbix_agents_3.4.6.win.zip文件解压放到c盘里面

然后需要修改conf里面的zabbix_agentd.win.conf这个是配置文件

需要修改的配置选项:
LogFile=C:\zabbix_agents_3.4.6.win\log\zabbix_agentd.log ##这个是日志存放的地址
Server=192.168.10.10 ##这个是zabbix服务端的地址
ServerActive=192.168.10.10:10050 ##10050是zabbix-server和zabbix-agent通信的端口
Hostname=192.168.10.11 ##这个填写需要监控的Windows服务器IP

管理员权限运行cmd,如下图显示installed successfully代表成功了,再去服务里面启动zabbix-agent

##下面这一串命令是把agentd服务启动
C:\zabbix_agents_3.4.6.win\bin\win64\zabbix_agentd -i -m -c C:\zabbix_agents_3.4.6.win\conf\zabbix_agentd.win.conf

2、监控Windows-CPU使用率

在zabbix中,默认的模板不带CPU使用率的监控,为减少重复工作率,在template模板下创建一个模板
然后下次新增监控的主机服务器直接关联相关的模板即可!
在配置---->模板---->创建模板
模板名称:Template Windows CPU usage
 

创建完模板就开始创建监控项
名称:CPU usage%
键值:perf_counter[\Processor(_Total)\% Processor Time]
信息类型:浮点数
单位:%

创建完监控项以后新建触发器,可以在表达式构造器测试这个触发器是否有用

名称:cpu used  is more than 80%

严重性:一般严重

表达式:{Template Windows CPU usage:perf_counter[\Processor(_Total)\% Processor Time].avg(5m)}>80

创建完触发器再添加一个图形查看cpu使用率图表

名称:CPU使用率

监控项:Template Windows CPU usage: CPU使用率

添加成功以后可以查看CPU图形表了,有数据代表成功监控了!

3、监控Windows-磁盘IO性能监控

▼注意:这个IO模版是收集整个服务器所有物理硬盘的IO数据的
比如:服务器有一个固态硬盘,一个机械硬盘,他是固态硬盘和机械硬盘数据加起来显示出来
监控数据库服务器的时候,最好分别对待固态硬盘和机械硬盘,使用不同的触发器阀值
因为是机器上所有硬盘加起来的,要针对固态硬盘和机械硬盘区分开触发器就非常困难了

WIN下的IO性能监控,是通过调用性能计数器中的参数来获取

目前已经统计成模板,可直接使用,模板包括了图形和上图所示的监控项

4、监控Windows-磁盘触发器阈值更改

选择配置--->模板--->(Template OS Linux/Template OS Windows)

我这边是监控Windows所以修改Windows的模板,如果是监控Linux可以修改Linux的模板

默认是1小时更新一次,修改成600秒,就是10分钟更新一次,10分钟后就能看到网卡和磁盘的监控值了!

选择配置--->模板--->(Template OS Linux/Template OS Windows)--->Mounted filesystem discovery--->触发器类型

我这边是已经修改好的了,没有修改的或者没有这一触发项的,可以点击右上角(创建触发器原型)

名称:Free disk space is less than 50GB on volume {#FSNAME}

表达式:{Template OS Windows:vfs.fs.size[{#FSNAME},free].last(0)}<50000000000

选择配置--->模板--->(Template OS Linux/Template OS Windows)--->Mounted filesystem discovery--->监控项类型

我这边是已经修改好的了,没有修改的或者没有这一监控项的,可以点击右上角(创建监控项原型)

名称:Free disk space on $1

表达式:vfs.fs.size[{#FSNAME},free]

单位:B

更新间隔:1m或者60s都可以

5、监控Windows-网卡自动发现规则

问题描述:这个一般是默认的windows模板里面包含自动发现服务器网卡的,但是会自动发现很多其他的网卡什么之类的图形东东

解决办法:你直接删除对应的图形是没用的,因为自动发现规则会再次自动发现,所以需要把规则改一下

1.自动发现规则里面---->Windows service discovery(这个可以禁用掉)

2.管理--->一般--->正则表达式--->Network interfaces for discovery(加入下图的参数,这样就设定不会自动发现以这些参数网卡了)

    »    Microsoft    [结果为假]
» Teredo [结果为假]
» Qos [结果为假]
» WFP [结果为假]
» RAS [结果为假]
» WAN [结果为假]
» ^Nu[-.]*$ [结果为假]
» ^[Ss]ystem$ [结果为假]
» ^[Ll]o[-.]*$ [结果为假]
» ^NULL[-.]*$ [结果为假]
» ^(In)?[Ll]oop[Bb]ack[-._]*$ [结果为假]
» ^Software Loopback Interface [结果为假]
» Network traffic on Broadcom NetXtreme Gigabit Ethernet [结果为假]

 

6、监控Windows事件日志

模板名称:Template Windows Event Log

监控项:
应用程序日志MSExchangeTransport
eventlog[Application,,,"MSExchangeTransport",^15004$,,skip]

触发器:
应用程序日志60S不出现则恢复
{Template Windows Event Log:eventlog[Application,,,"MSExchangeTransport",^15004$,,skip].nodata(60)}=0

触发器:

出现系统错误日记

{Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].logeventid(36882)}<>0 and {Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].logeventid(36888)}<>0 and {Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].logeventid(36887)}<>0 and {Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].logeventid(36874)}<>0

触发器:

所有系统错误日记

{Template Windows Event Log:eventlog[System,,"Error",,[^],,skip].nodata(60)}=0

7、配置服务端邮件报警功能

我这边用到的是腾讯企业邮箱

如下图所示,管理--->报警媒介类型--->Email

要注意的是用户名称这里要写你的企业邮箱账号,密码填写密码

一开始我以为是发邮件的名称,搞得没法发邮件,可以使用QQ邮箱

SMTP服务器:smtp.exmail.qq.com

端口:465

SMTP电邮:XXXX@qq.com

用户名称:XXXX@qq.com

配置--->动作--->触发器

创建一个触发器来发邮件报警

操作:

默认标题:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!

消息内容:

告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE}{EVENT.TIME}
告警等级:{TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{ENET.ID}

恢复操作:

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

消息内容:

告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE}{EVENT.TIME}
告警等级:{TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{ENET.ID}

确认操作:

默认标题:已确认: {TRIGGER.NAME}

消息内容:

{USER.FULLNAME} 已经确认的问题 {ACK.DATE} {ACK.TIME} 以下消息:
{ACK.MESSAGE}

目前的问题状态是{EVENT.STATUS}

最后配置报警媒介,也就是触发报警条件,要下发邮件通知道哪个邮箱里面

点击那个小头像,然后进入到用户基本资料,选择报警媒介进行设置

可以自己选择严重性级别,设置完启用了以后,报警功能就设置完成了!

【第一章】zabbix3.4监控WindowsCPU使用率磁盘IO磁盘事件日志监控阈值邮件报警详细配置的更多相关文章

  1. .NET 操作 EventLog(Windows事件日志监控)(转载)

    操作Windows日志:EventLog 如果要在.NET Core控制台项目中使用EventLog(Windows事件日志监控),首先需要下载Nuget包: System.Diagnostics.E ...

  2. zabbix3.0.4 邮件告警详细配置

    sendEmail是一个轻量级,命令行的SMTP邮件客户端.如果你需要使用命令行发送邮件,那么sendEmail是非常完美的选择:使用简单并且功能强大.这个被设计用在php.bash perl和web ...

  3. .NET拾忆:EventLog(Windows事件日志监控)

    操作Windows日志:EventLog 1:事件日志名(logName):“事件查看器”中的每一项,如“应用程序”.“Internet Explorer”.“安全性”和“系统”都是日志(严格地说是日 ...

  4. C++ Primer高速学习 第一章 获得二:输入和输出 (IO)

    什么是输入输出.即Input-Output,缩写是非常装B的IO?请看经典民间解释: C++语言的输入输出是指信息从外部输入设备(如键盘.磁盘等)向计算机内部(内存)输入(即Input)和从内存向外单 ...

  5. syslog系统日志、Windows事件日志监控

  6. 分布式监控系统Zabbix-3.0.3-完整安装记录(5)-邮件报警部署

    前面几篇陆续介绍了zabbix3.0.3监控系统的部署和监控项配置,今天这里分享下zabbix3.0.3的邮件报警的配置过程~由于采用sendmail发送邮件,常常会被认为是垃圾邮件被拒,所以不推荐这 ...

  7. zabbix应用之Low-level discovery监控磁盘IO

    参考文章: http://qicheng0211.blog.51cto.com/3958621/1599776/ zabbix自带的"Template OS Linux"模板支持监 ...

  8. 总zabbix配置-搭建-邮件报警-微信报警-监控mysql

    Centos7安装Zabbix4.0步骤 官方搭建zabbix4.0的环境要求: 1. 环境搭建LAMP 前提Centos系统安装完成:  确认一下: 1 2 cat /etc/redhat-rele ...

  9. zabbix监控MySQL,Tomcat及配置邮件报警

    目录 一.思路 二.部署.配置 环境 安装zabbix 对zabbix进行初步优化 添加监控主机 部署监控Tomcat 配置邮件报警 三.总结 一.思路 首先搭建zabbixserver,本机需要安装 ...

随机推荐

  1. 从零开始学 Web 之 移动Web(四)实现JD分类页面

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  2. SQL 必知必会·笔记<8>分组数据

    1. 使用GROUP BY子句创建分组 示例: SELECT vend_id, COUNT(*) AS num_prods FROM Products GROUP BY vend_id; 注意 GRO ...

  3. 获取VirtualBox COM对象失败,Unable to start the virtual device

    一.问题 1.将Genymotion和VirtualBox安装好之后,并且已经下载完了virtual device: 2.但是在运行虚拟机的时候却弹出了错误提示:虚拟机电脑控制台——严重错误. 如图: ...

  4. 一篇迟到的gulp文章,代码合并压缩,less编译

    前言 这篇文章本应该在去年17年写的,但因为种种原因没有写,其实主要是因为懒(捂脸).gulp出来的时间已经很早了,16年的时候还很流行,到17年就被webpack 碾压下去了,不过由于本人接触gul ...

  5. Python循环文件推荐的方式,可用于读取文本最后一行或删除指定行等

    读取文本最后一行: f = open('test11.txt', 'rb') for i in f: offset = -16 while True: f.seek(offset, 2) data = ...

  6. [转]来扯点ionic3[2] 页面一线牵 珍惜这段缘

    本文转自:https://www.jianshu.com/p/de40aeb3d371 往期传送门 来扯点ionic3[0] 吹完牛再入门也不迟 来扯点ionic3[1] 创建一个新页面     上一 ...

  7. JS 上传图片 + 预览功能(一)

    JS 上传图片 + 预览功能 <body> <input type="file" id="fileimg1" style="disp ...

  8. C# 中的集合(Array/ArrayList/List<T>/HashTable/Dictionary)

    int [] numbers = new int[5]; // 长度为5,元素类型为 int.string[,] names = new string[5,4]; // 5*4 的二维数组byte[] ...

  9. [PHP] 算法-复制复杂链表的PHP实现

    复杂链表的复制: 1.在旧链表中每个结点的后面复制出一个结点,隔代 2.把旧链表的随机指向部分,复制到新添加的结点上 3.把新结点从旧链表中拆分出来成新链表 1. linklist=head whil ...

  10. [android] 数据的异步加载和图片保存

    把从网络获取的图片数据保存在SD卡上, 先把权限都加上 网络权限 android.permission.INTERNET SD卡读写权限 android.permission.MOUNT_UNMOUN ...