目录
- [1 概述](#1 概述)
- [2 配置 Web 场景](#2 配置 Web 场景)
-
- [2.1 配置步骤](#2.1 配置步骤)
- [2.2 显示](#2.2 显示)
- [3 Web 场景步骤](#3 Web 场景步骤)
-
-
- [3.1 创建新的 Web 场景。](#3.1 创建新的 Web 场景。)
- [3.2 定义场景的步骤](#3.2 定义场景的步骤)
- [3.3 保存配置完成的Web 监控场景。](#3.3 保存配置完成的Web 监控场景。)
-
- [4 Zabbix-Get的使用](#4 Zabbix-Get的使用)
1 概述
您可以使用 Zabbix 对多个网站进行可用性方面监控:
要使用 Web 监控,您需要定义 web 场景。Web 场景包括一个或多个 HTTP 请求或"步骤"。Zabbix 服务器根据预定义的命令周期性的执行这些步骤,如果主机是通过Proxy代理监控的话,这些步骤将由proxy代理执行。
从 Zabbix2.2 开始,Web 场景和 Items,Triggers 等一样,是依附在 Hosts/Templates 上的。这意味着 web 场景也可以创建到一个模板里,然后应用于多个主机。
任何web场景都会收集下列数据:
- 整个场景中所有步骤的平均下载速度
- 失败的步骤数量
- 最近的错误信息
对于web场景的所有步骤,都会收集下列数据:
- 平均下载速度
- 响应时间
- HTTP状态码
执行 web 场景收集的数据保存在数据库中。数据自动用于图形、触发器和通知。
Zabbix 还支持获取 HTML 内容中是否存在设置的字符串。还可以模拟登录动作和模拟鼠标单击。
Zabbix web 监控同时支持 HTTP 和 HTTPS。当运行 web 场景时,Zabbix 将选择跟踪重定向。重定向硬编码的最大数量为 10 。在执行 web 场景时,所有 Cookie 都会保存。
2 配置 Web 场景
配置 web 场景:
- 转到:配置 (Configuration)-→主机 (或者 模板)
- 点击主机 (host)/ 模板 (template) 行中的 Web
- 点击右上角 创建 web 场景(或点击场景名字进行编辑现有的场景)
- 在场景的表单中输入参数
场景选项卡允许您配置此 Web 场景的通用参数。
"步骤"选项卡允许您配置 Web 场景步骤。 要添加 Web 场景步骤,请在 步骤 (Steps) 单击 添加 (Add)。
2.1 配置步骤
Name:Home
Follow redirects:√
Timeout:15s
Required status codes:200
2.2 显示
要查看定义的 Web 场景的详细数据,请转到 监控中 (Monitoring)→Web 或 最新数据 (Latest data)。 单击方案名称以查看更详细的统计信息。
可以在 监控中 (Monitoring)→仪表板 (Dashboard) 中查看 Web 监控场景的概述。
3 Web 场景步骤
3.1 创建新的 Web 场景。
我们将添加一个场景来监控Zabbix的Web界面,该场景将执行多个步骤。
点击 配置 → 主机, 选择一个主机,然后在该主机行中单击 Web 。 然后单击 创建Web场景。
在新的场景中,我们将场景命名为 Zabbix frontend ,并为其创建一个新的 Zabbix frontend 应用。
注意,我们还需要创建两个变量:{user}和{password}。
3.2 定义场景的步骤
单击 步骤 选项卡中的 添加 按钮添加单独的步骤。
Web 场景步骤 1
单击 Steps 选项卡中的 Add 按钮添加单独的步骤。
我们首先检查第一页响应是否正确,返回HTTP响应代码200,并包含文本"Zabbix SIA"。
properties
Name:First page
URL:http://192.168.10.30/zabbix/index.php
Follow redirects: √
Timeout:15s
Required string:Zabbix SIA
Required status codes:200
完成配置步骤后,单击 添加。
Web 场景步骤 2
我们继续登录Zabbix前端,通过我们在场景级别{user}和{password}上定义的宏(变量)来实现。
注意,Zabbix前端在登录时使用JavaScript重定向,因此,我们必须先登录,只有在下一步的步骤中,我们才能检查登录功能。此外,登录步骤必须使用完整的URL以获取index.php文件 。
Follow redirects:√
Timeout:15s
Required status codes:200
Web 场景步骤 3
登录后,我们现在应该验证一下是否登陆成功。为此,我们检查一个仅在登录后可见的字符串 - 例如Zabbix-itcast。
Timeout:15s
Required string:Zabbix-itcast
Required status codes:200
Web 场景步骤 4
现在我们已经验证了前端是可访问的,我们可以登录并检索登录的内容,我们也应该注销 - 否则Zabbix数据库将被大量打开的会话记录占用资源。
Follow redirects:√
Timeout:15s
Required status codes:200
Web 场景步骤 5
我们可以通过查找用户名字符串来检查我们是否已经注销了。
Name:Logout check
URL:http://192.168.10.30/zabbix/index.php
完成步骤配置
Web 场景步骤的完整配置应如下所示:
3.3 保存配置完成的Web 监控场景。
通过以下方式查看场景 Monitoring → Web:
单击场景名称以查看更详细的统计信息:
4 Zabbix-Get的使用
Zabbix-Get是Zabbix中的一个程序,用于Zabbix-Server到Zabbix-Agent的数据获取,通常可以用来检测验证客户端的配置是否正确。
sh
[root@linux30 zabbix]# zabbix_get -s 192.168.10.31 -k system.uname
Linux linux31 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64
[root@linux30 zabbix]#