共计 15306 个字符,预计需要花费 39 分钟才能阅读完成。
企业级监控工具应用实战 -Zabbix 安装与基础操作目录
- 实战一:zabbix 的搭建与部署
- 1、下载安装
- 2、初始化数据库
- 3、配置,开启 zabbix-server
- 4、设置 zabbix 的 web 服务
- 5、在 web 页面初始化设置
- 6、被监控 node zabbix 的安装配置
- 7、node1 加入到监控中
- 8、对 node1 主机设置
- 实战二:zabbix 基础操作
- 1、设置 items 监控项,采集信息
- 2、设置 trigger 触发器
- 3、设置触发器的依赖关系
- 4、设置 Media 媒介
- 5、设置 Actions 动作
- 6、测试动作
- 实战三、展示接口的实现
- 1、Graphs 图形的设置
- 2、定义 Screens 聚合图形
- 3、把 graphs 图形加入到 screens 屏幕中
- 4、多个 screens 可以做成幻灯片
- 5、Maps 拓扑图
- 实战四、Templates 模板和 macro 宏
- 1、Templates 模板
- 2、宏:macro,预设的文本替换模式
无监控,不运维。好了,废话不多说,下面都是干货。
警告:流量党勿入,图片太多!!!
实验前准备:
① ntpdate 192.168.30.1 同步时间
② 关闭防火墙、selinux
③ vim /etc/hosts 每个机器都设置 hosts,以解析主机名;DNS 也行
192.168.30.107 server.along.com
192.168.30.7 node1.along.com
192.168.30.2 node2.along.com
192.168.30.3 node3.along.com zbproxy.along.com
实战一:zabbix 的搭建与部署
1、下载安装
(1)下载
① 去官网,下载自己需要的版本https://www.zabbix.com/download
② 包的介绍
zabbix-agent-3.4.4-2.el7.x86_64.rpm 监控(安装在被监控者,当然监控自己也需要监控)
zabbix-get-3.4.4-2.el7.x86_64.rpm 在 server 端,手工连接 agent 获取数据的,做测试的
zabbix-Java-gateway-3.4.4-2.el7.x86_64.rpm 基于 JAM 监控时使用的
proxy 是和代理相关的包:
zabbix-proxy-mysql-3.4.4-2.el7.x86_64.rpm
zabbix-proxy-pgsql-3.4.4-2.el7.x86_64.rpm
zabbix-proxy-sqlite3-3.4.4-2.el7.x86_64.rpm
zabbix-sender-3.4.4-2.el7.x86_64.rpm 安装在 agent 端,主动监控模式下,向 server 端发送测试数据使用的
server 取决自己的存储系统选 mysql 或 pgsql:
zabbix-server-mysql-3.4.4-2.el7.x86_64.rpm
zabbix-server-pgsql-3.4.4-2.el7.x86_64.rpm
zabbix-web-3.4.4-2.el7.noarch.rpm web 部位,核心包
zabbix-web-japanese-3.4.4-2.el7.noarch.rpm 专用日语的 web 部位
web 要连接 mysql 或 pgsql 时,需要安装的包:
zabbix-web-mysql-3.4.4-2.el7.noarch.rpm
zabbix-web-pgsql-3.4.4-2.el7.noarch.rpm
zabbix-release-3.4-2.el7.noarch.rpm zabbix 下载的源
(2)安装
① 安装官方的源
zabbix-release-3.4-2.el7.noarch.rpm 直接下载源
rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
yum repolist 可以查看自己的仓库有 zabbix 源了
声明:我用的是 3.2 版本的,以下的示范也是 3.2 版本
② 安装
yum -y install zabbix-agent zabbix-get zabbix-sender zabbix-server-mysql zabbix-web zabbix-web-mysql
2、初始化数据库
(1)vim /etc/my.cnf.d/server.cnf 子配置文件
[server]
skip_name_resolve = on
innodb_file_per_table = on
innodb_buffer_pool_size = 256M #buffer 缓存大小
max_connections = 2000 #最大连接数
log-bin = master-log #二进制日志
(2)建数据库,授权,刷新权限
MariaDB [(none)]> create database zbxdb character set 'utf8';
MariaDB [(none)]> grant all on zbxdb.* to zbxuser@'192.168.30.%' identified by 'zbxpass';
MariaDB [(none)]> flush privileges;
(3)导入数据
rpm -ql zabbix-server-mysql 下包的时候,带有数据库文件的解压包
cp /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz ./ 考到 root 下,解压
gzip -d create.sql.gz
mysql -uroot -p zbxdb < create.sql 导入数据
(4)可以去数据库查看,数据已经生成
3、配置,开启 zabbix-server
(1)配置前准备
cd /etc/zabbix/
cp zabbix_server.conf{,.bak} 先备份,养成好习惯
grep -i “^####” zabbix_server.conf 查看有几个配置段
GENERAL PARAMETERS 一般性配置
ADVANCED PARAMETERS 高级配置
LOADABLE MODULES 可加载模块
TLS-RELATED PARAMETERS 配置加密的东西,如私钥证书等
grep -i “^###” zabbix_server.conf 可以查看一下需要配置的选项
(2)配置
vim zabbix_server.conf 修改配置文件
ListenPort=10051 默认端口 10051
SourceIP= 发采用数据请求的端口,可以加多个地址,需要的话自己设置
② 日志的配置
② 数据库的配置
DBHost=192.168.30.107 数据库对外的地址
DBName=zbxdb 数据库中库的名字
DBUser=zbxuser 数据库授权的用户
DBPassword=zbxpass 密码
DBPort=3306 数据库服务端口
(3)开启服务
systemctl start zabbix-server.service
4、设置 zabbix 的 web 服务
(1)zabbix 需要开启与 web 相连的服务
cd /etc/httpd/conf.d/
vim zabbix.conf 额外为 php5 设置了一些参数
# php_value date.timezone Europe/Riga php 的时区必须设置,不过有两处可以设置,在 php 的配置文件中设置,或在这里设置;在这里设置,只对 zabbix 有效
vim /etc/php.ini 在 php 的配置文件中设置,代表对所有使用 php 的都生效,我就在这里设置了
date.timezone = Asia/Shanghai
(2)开启
systemctl start httpd
5、在 web 页面初始化设置
(1)初始化配置
① web 登录 http://192.168.30.107/zabbix
② 检查所依赖的配置,如果有 fail,需手动修改
③ 设置数据库的连接
④ 可能有多个 zabbix 服务器,加标识;非必须,可以不填
⑤ 没有问题,就开始安装了
⑥ 完成!!!
(2)登录,第一次登录默认账号密码
账号:admin
密码:zabbix
(3)登录进去的仪表盘
(4)status of zabbix 仪表盘分析
Zabbix server is running |
Yes |
192.168.30.107:10051 |
① Number of hosts (enabled/disabled/templates) |
39 |
0 / 1 / 38 |
② Number of items (enabled/disabled/not supported) |
0 |
0 / 0 / 0 |
③ Number of triggers (enabled/disabled [problem/ok]) |
0 |
0 / 0 [0 / 0] |
④ Number of users (online) |
2 |
2 |
⑤ Required server performance, new values per second |
0 |
① 监控主机:已经启用被监控的主机数量,已经配置好缺被禁止主机数,自带模板数
② 监控项:启用多少指标,禁用多少指标,不支持的指标
③ 触发器数量:启用,禁用,处于有问题的
④ 当前 zabbix 有几个用户:现在是一个是来宾,一个是管理员
⑤ 重点关注的nvps 每秒的新值(根据我们定义的监控项,每秒采集过来多少新数据,平均值):
(5)用户管理设置,有大家最喜欢的汉语
(1)如果英语不好,可以切换为中文,但推荐使用英文,为了更好的讲解,博主使用中文示范
(2)修改密码
6、被监控 node zabbix 的安装配置
(1)在 node 机器上安装
yum -y install zabbix-agent zabbix-sender 只需安装这两个包就行
(2)配置,和之前一样,先查看一下配置段
① grep -i “^####” zabbix_agentd.conf 先查看一下配置段
GENERAL PARAMETERS 一般配置,有两个子配置段
Passive checks related 被动接口
Active checks related 主动接口
ADVANCED PARAMETERS 高级配置
USER-DEFINED MONITORED PARAMETERS 用户自定义的监控参数(必要,高级的特性)
LOADABLE MODULES
TLS-RELATED PARAMETERS
② grep -i “^###” zabbix_agentd.conf 查看选项
(3)配置
vim zabbix_agentd.conf
① EnableRemoteCommands=0 是否允许执行远程命令,默认是不允许的,有安全风险
② 指定服务器主机,可以指定多个
Server=192.168.30.107
③ 自己的今天 IP 和端口
ListenPort=10050 自己的监听端口
ListenIP=0.0.0.0 允许监听在本机的地址,0.0.0.0 是监听所有
④ agent 个数,被监控项有很多时,可以多写几个
StartAgents=3 默认 3 个,优化时使用
⑤ 主动监控的机器地址是谁
StartAgents=192.168.30.107
⑥ 能被 server 段解析的主机名,写 IP 也行
Hostname=node1.along.com
下边都是默认值就好
(4)开启服务
systemctl start zabbix-agent.service
7、node1 加入到监控中
(1)先添加一个主机群组 host groups
添加一个 mysrvs 的 host groups
(2)创建主机
创建一个属于 mysrvs 主机组的 node1.along.com 主机,若接口写主机,要开启 DNS 解析
关于主机加密,在内网中最好不要加密,急耗资源
8、对 node1 主机设置
(1)监控类别 applications 应用集
创建 3 个 CPU Utils、Memory Stats、Network Interface Stats 的应用集
3 个已经生成
(2)创建监控项 items
设置名为 rate of interrupt 的 监控项 items
备注:
① key 键值:內建 key、自定义 key;对应的是 命令;服务器自动执行 key,就相当于采集数据
每一个 key 都对应,能在客户端 /agent 端,执行的命令;该命令能帮我们取回关系型数据
例:system.cpu.intr cpu 中断数的 key
在命令行 zabbix_get -s 192.168.30.7 -p 10050 -k “system.cpu.intr”
② 数据更新间隔:
对于非关键型指标,不要太频繁,使服务器压力很大;推荐 5 分钟,或以上
为了实验,选择 5s;关键型指标,30s(默认的)也很频繁了
(3)查看自己设置的监控
查看图形,可以选择不同时间作为坐标轴
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2017-12/149872p2.htm
实战二:zabbix 基础操作
声明:我下边已切换为 3.4 版本了
1、设置 items 监控项,采集信息
(1)对 node1 添加名为 rate of packets(in) 入站包的个数 的 items 监控项
① key 值选的是:net.if.in[if,<mode>]网络接口上传流量统计;可以加参数
② 点击进程,可以选择更多选项;比 3.2 不一样的地方
③ 查看图形
(2)克隆 items 监控项
① 设置 rate of packets(out) 出站包的个数,因为和 in 很相似,可以克隆再设置
② 修改为 out,其他都无需修改
(3)为了后边的实验,多定义 2 个 items 监控项
① rate of bytes(out) 出站字节数
② rate of bytes(in) 入站字节数
2、设置 trigger 触发器
(1)介绍
① 界定某特定的 item 采集到的数据的非合理区间或非合理状态:逻辑表达式
② 逻辑表达式,阈值:通常用于定义数据的不合理区间;
OK:正常 状态 –> 不满足阈值(不合理区间)为 OK
PROBLEM:非正常状态 –> 满足阈值
③ 触发器存在可调用的函数:(对数据进行评估)
nodata():没有数据
last():最近几次的平均值
date()
time()
now()
dayofmonth()
…
注意:常用 nodata()、last(); 能用数值采集的结果保存,就不要用字符串;计算机处理数值要快的多
(2)创建 trigger 触发器
① 创建
② 设置
③ 表达式 可以自己手写;也可以按选择生成
次数 count / 时间 time 选项:二选一
time 时间
④ 下边的选择根据自己的需求选择,我没有设置
(3)查看图形,会发现多了一根警告线
3、设置触发器的依赖关系
(1)介绍
① 在一个网络中,主机 的可用性之间可能 存在依赖关系
例如,当某网关主机不可用时,其背后的所有主机都将无法正常访问
如果所有主机都配置了触发器并定义了相关的通知功能,相关人员将会接收到许多告警信息,这既不利于快速定位问题,也会浪费资源
正确定义的触发器依赖关系可以避免类似情况的发生,它将使用通知机制仅发送最根本问题相关的告警
② 注意:目前 zabbix 不能够直接定义主机间的依赖关系,其 依赖关系仅能通过触发器来定义
(2)依赖的解释:
被依赖者会报警;依赖者不会报警
分析:监控到交换机故障,网卡和主机上的服务不用报警;
监控到主机上的服务,网卡和交换机不用报警
(3)设置依赖
4、设置 Media 媒介
(1)Media 的介绍
Media:媒介,告警信息的传递通道;任何用户收到报警信息,都需要有媒介的端口
类型:下面 3 个中国都没实现,中国可以实现微信,需要特殊插件
Email:邮件
Script:自定义脚本,每一个 script 都是一个媒介
SMS:短信,只适用于北美地区
Jabber:
Ez Texting:
接收信息的目标为 zabbix 用户:
需要用户上定义对应各种媒介通道的接收方式;
每一类媒介,也能分很多种类型,如下图
系统自带的 3 中媒介
(2)定义一个 media,可以在 email 模板上直接修改
在选项中可以设置并发会话
(3)用户使用 media 媒介
① 选择用户中的 admin 用户
② 添加 media 报警媒介,一个用户可以添加多个
为了实验展示,我选择所有等级
(4)实现给公司用户发短信的媒介
① 创建一个名为 duanxin 的媒介
设置,关于发短信的脚本,网上有很多,自己找一个使用
② 设置个用户,使用 duanxin 的媒介
(5)互联网中有发微信做媒介的
需先发个公众号,且公众号中所有人都能收到
5、设置 Actions 动作
(1)设置 action 动作的准备
① 准备一个被监控的服务 redis
yum -y install redis 下载一个 redis 服务做实验
vim /etc/redis.conf 修改配置文件
bind 0.0.0.0 监听本机所有端口
systemctl start redis 开启服务
② 因为要执行动作时需远程操作,给 admin 用户设置 sudo 权限
a) visudo 修改 sudo 的配置
zabbix ALL=(ALL) NOPASSWD: ALL 允许 zabbix 用户能在所有主机,以所有人的身份执行所有命令
Defaults !visiblepw 默认所有命令要依靠 tty 执行,先注释掉
b) vim zabbix_agentd.conf 设置 agent 允许执行远程命令
EnableRemoteCommands=1 允许执行远程命令
LogRemoteCommands=1 把远程执行的命令记录在日志中
systemctl restart zabbix-agent.service 重启 zabbix-agent 服务
(2)设置 redis 的监控项 items
① 监控端口的 key
net.tcp.listen[port] 监听本地 listen:检查 TCP 端口是否处于侦听状态,返回 0 – 未侦听;1 – 正在侦听
net.tcp.port[<ip>,port]:server 远程扫描 redis 服务:检查是否能建立 TCP 连接到指定端口,返回 0 – 不能连接;1 – 可以连接
net.tcp.service[service,<ip>,<port>] 直接指定服务:检查服务是否运行并接受 TCP 连接,返回 0 – 服务关闭;1 – 服务运行
(3)设置 triggers 触发器
① 设置表达式
(4)设置 action 动作
a) 创建一个 action
b) 设置 action
① 设置 action 的动作
② 设置 action 的操作
③ 设置要操作的步骤 1:重启 redis 服务
④ 设置要操作的步骤 2:给 admin 发邮件
⑤ 设置完的 action 的操作:共两步
c) 设置 action 的恢复操作
d) 设置 action 成功
6、测试动作
(1)手动停掉 redis 服务,模拟服务故障
systemctl stop redis
(2)可以看到 problem 问题已产生
① 问题生成
② 执行动作,10s,第一个 action 1 执行成功,problem 问题解决
因为第一个 action1 执行成功,所以 action 2 没有执行
③ 恢复操作执行了,zabbix server 收到了 mail “Resolved”
(3)模拟故障,且无法恢复
systemctl stop redis && rpm -e redis 停止服务,且删除 redis
① 问题产生
② action 1 无法完成
③ action 2 执行:给 admin 发邮件
企业级监控工具应用实战 -Zabbix 安装与基础操作目录
- 实战一:zabbix 的搭建与部署
- 1、下载安装
- 2、初始化数据库
- 3、配置,开启 zabbix-server
- 4、设置 zabbix 的 web 服务
- 5、在 web 页面初始化设置
- 6、被监控 node zabbix 的安装配置
- 7、node1 加入到监控中
- 8、对 node1 主机设置
- 实战二:zabbix 基础操作
- 1、设置 items 监控项,采集信息
- 2、设置 trigger 触发器
- 3、设置触发器的依赖关系
- 4、设置 Media 媒介
- 5、设置 Actions 动作
- 6、测试动作
- 实战三、展示接口的实现
- 1、Graphs 图形的设置
- 2、定义 Screens 聚合图形
- 3、把 graphs 图形加入到 screens 屏幕中
- 4、多个 screens 可以做成幻灯片
- 5、Maps 拓扑图
- 实战四、Templates 模板和 macro 宏
- 1、Templates 模板
- 2、宏:macro,预设的文本替换模式
无监控,不运维。好了,废话不多说,下面都是干货。
警告:流量党勿入,图片太多!!!
实验前准备:
① ntpdate 192.168.30.1 同步时间
② 关闭防火墙、selinux
③ vim /etc/hosts 每个机器都设置 hosts,以解析主机名;DNS 也行
192.168.30.107 server.along.com
192.168.30.7 node1.along.com
192.168.30.2 node2.along.com
192.168.30.3 node3.along.com zbproxy.along.com
实战一:zabbix 的搭建与部署
1、下载安装
(1)下载
① 去官网,下载自己需要的版本https://www.zabbix.com/download
② 包的介绍
zabbix-agent-3.4.4-2.el7.x86_64.rpm 监控(安装在被监控者,当然监控自己也需要监控)
zabbix-get-3.4.4-2.el7.x86_64.rpm 在 server 端,手工连接 agent 获取数据的,做测试的
zabbix-Java-gateway-3.4.4-2.el7.x86_64.rpm 基于 JAM 监控时使用的
proxy 是和代理相关的包:
zabbix-proxy-mysql-3.4.4-2.el7.x86_64.rpm
zabbix-proxy-pgsql-3.4.4-2.el7.x86_64.rpm
zabbix-proxy-sqlite3-3.4.4-2.el7.x86_64.rpm
zabbix-sender-3.4.4-2.el7.x86_64.rpm 安装在 agent 端,主动监控模式下,向 server 端发送测试数据使用的
server 取决自己的存储系统选 mysql 或 pgsql:
zabbix-server-mysql-3.4.4-2.el7.x86_64.rpm
zabbix-server-pgsql-3.4.4-2.el7.x86_64.rpm
zabbix-web-3.4.4-2.el7.noarch.rpm web 部位,核心包
zabbix-web-japanese-3.4.4-2.el7.noarch.rpm 专用日语的 web 部位
web 要连接 mysql 或 pgsql 时,需要安装的包:
zabbix-web-mysql-3.4.4-2.el7.noarch.rpm
zabbix-web-pgsql-3.4.4-2.el7.noarch.rpm
zabbix-release-3.4-2.el7.noarch.rpm zabbix 下载的源
(2)安装
① 安装官方的源
zabbix-release-3.4-2.el7.noarch.rpm 直接下载源
rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
yum repolist 可以查看自己的仓库有 zabbix 源了
声明:我用的是 3.2 版本的,以下的示范也是 3.2 版本
② 安装
yum -y install zabbix-agent zabbix-get zabbix-sender zabbix-server-mysql zabbix-web zabbix-web-mysql
2、初始化数据库
(1)vim /etc/my.cnf.d/server.cnf 子配置文件
[server]
skip_name_resolve = on
innodb_file_per_table = on
innodb_buffer_pool_size = 256M #buffer 缓存大小
max_connections = 2000 #最大连接数
log-bin = master-log #二进制日志
(2)建数据库,授权,刷新权限
MariaDB [(none)]> create database zbxdb character set 'utf8';
MariaDB [(none)]> grant all on zbxdb.* to zbxuser@'192.168.30.%' identified by 'zbxpass';
MariaDB [(none)]> flush privileges;
(3)导入数据
rpm -ql zabbix-server-mysql 下包的时候,带有数据库文件的解压包
cp /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz ./ 考到 root 下,解压
gzip -d create.sql.gz
mysql -uroot -p zbxdb < create.sql 导入数据
(4)可以去数据库查看,数据已经生成
3、配置,开启 zabbix-server
(1)配置前准备
cd /etc/zabbix/
cp zabbix_server.conf{,.bak} 先备份,养成好习惯
grep -i “^####” zabbix_server.conf 查看有几个配置段
GENERAL PARAMETERS 一般性配置
ADVANCED PARAMETERS 高级配置
LOADABLE MODULES 可加载模块
TLS-RELATED PARAMETERS 配置加密的东西,如私钥证书等
grep -i “^###” zabbix_server.conf 可以查看一下需要配置的选项
(2)配置
vim zabbix_server.conf 修改配置文件
ListenPort=10051 默认端口 10051
SourceIP= 发采用数据请求的端口,可以加多个地址,需要的话自己设置
② 日志的配置
② 数据库的配置
DBHost=192.168.30.107 数据库对外的地址
DBName=zbxdb 数据库中库的名字
DBUser=zbxuser 数据库授权的用户
DBPassword=zbxpass 密码
DBPort=3306 数据库服务端口
(3)开启服务
systemctl start zabbix-server.service
4、设置 zabbix 的 web 服务
(1)zabbix 需要开启与 web 相连的服务
cd /etc/httpd/conf.d/
vim zabbix.conf 额外为 php5 设置了一些参数
# php_value date.timezone Europe/Riga php 的时区必须设置,不过有两处可以设置,在 php 的配置文件中设置,或在这里设置;在这里设置,只对 zabbix 有效
vim /etc/php.ini 在 php 的配置文件中设置,代表对所有使用 php 的都生效,我就在这里设置了
date.timezone = Asia/Shanghai
(2)开启
systemctl start httpd
5、在 web 页面初始化设置
(1)初始化配置
① web 登录 http://192.168.30.107/zabbix
② 检查所依赖的配置,如果有 fail,需手动修改
③ 设置数据库的连接
④ 可能有多个 zabbix 服务器,加标识;非必须,可以不填
⑤ 没有问题,就开始安装了
⑥ 完成!!!
(2)登录,第一次登录默认账号密码
账号:admin
密码:zabbix
(3)登录进去的仪表盘
(4)status of zabbix 仪表盘分析
Zabbix server is running |
Yes |
192.168.30.107:10051 |
① Number of hosts (enabled/disabled/templates) |
39 |
0 / 1 / 38 |
② Number of items (enabled/disabled/not supported) |
0 |
0 / 0 / 0 |
③ Number of triggers (enabled/disabled [problem/ok]) |
0 |
0 / 0 [0 / 0] |
④ Number of users (online) |
2 |
2 |
⑤ Required server performance, new values per second |
0 |
① 监控主机:已经启用被监控的主机数量,已经配置好缺被禁止主机数,自带模板数
② 监控项:启用多少指标,禁用多少指标,不支持的指标
③ 触发器数量:启用,禁用,处于有问题的
④ 当前 zabbix 有几个用户:现在是一个是来宾,一个是管理员
⑤ 重点关注的nvps 每秒的新值(根据我们定义的监控项,每秒采集过来多少新数据,平均值):
(5)用户管理设置,有大家最喜欢的汉语
(1)如果英语不好,可以切换为中文,但推荐使用英文,为了更好的讲解,博主使用中文示范
(2)修改密码
6、被监控 node zabbix 的安装配置
(1)在 node 机器上安装
yum -y install zabbix-agent zabbix-sender 只需安装这两个包就行
(2)配置,和之前一样,先查看一下配置段
① grep -i “^####” zabbix_agentd.conf 先查看一下配置段
GENERAL PARAMETERS 一般配置,有两个子配置段
Passive checks related 被动接口
Active checks related 主动接口
ADVANCED PARAMETERS 高级配置
USER-DEFINED MONITORED PARAMETERS 用户自定义的监控参数(必要,高级的特性)
LOADABLE MODULES
TLS-RELATED PARAMETERS
② grep -i “^###” zabbix_agentd.conf 查看选项
(3)配置
vim zabbix_agentd.conf
① EnableRemoteCommands=0 是否允许执行远程命令,默认是不允许的,有安全风险
② 指定服务器主机,可以指定多个
Server=192.168.30.107
③ 自己的今天 IP 和端口
ListenPort=10050 自己的监听端口
ListenIP=0.0.0.0 允许监听在本机的地址,0.0.0.0 是监听所有
④ agent 个数,被监控项有很多时,可以多写几个
StartAgents=3 默认 3 个,优化时使用
⑤ 主动监控的机器地址是谁
StartAgents=192.168.30.107
⑥ 能被 server 段解析的主机名,写 IP 也行
Hostname=node1.along.com
下边都是默认值就好
(4)开启服务
systemctl start zabbix-agent.service
7、node1 加入到监控中
(1)先添加一个主机群组 host groups
添加一个 mysrvs 的 host groups
(2)创建主机
创建一个属于 mysrvs 主机组的 node1.along.com 主机,若接口写主机,要开启 DNS 解析
关于主机加密,在内网中最好不要加密,急耗资源
8、对 node1 主机设置
(1)监控类别 applications 应用集
创建 3 个 CPU Utils、Memory Stats、Network Interface Stats 的应用集
3 个已经生成
(2)创建监控项 items
设置名为 rate of interrupt 的 监控项 items
备注:
① key 键值:內建 key、自定义 key;对应的是 命令;服务器自动执行 key,就相当于采集数据
每一个 key 都对应,能在客户端 /agent 端,执行的命令;该命令能帮我们取回关系型数据
例:system.cpu.intr cpu 中断数的 key
在命令行 zabbix_get -s 192.168.30.7 -p 10050 -k “system.cpu.intr”
② 数据更新间隔:
对于非关键型指标,不要太频繁,使服务器压力很大;推荐 5 分钟,或以上
为了实验,选择 5s;关键型指标,30s(默认的)也很频繁了
(3)查看自己设置的监控
查看图形,可以选择不同时间作为坐标轴
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2017-12/149872p2.htm
实战三、展示接口的实现
1、Graphs 图形的设置
(1)创建一个图形
设置一个名为interface traffic packets 的图形
图形类别展示:
① normal 正常的
注释:
工作时间:白色
非工作时间:黑色
② Stacked 层积的
③ Pie
④ Exploded 爆发式图形
设置完后:加入两个监控项
rate of packets(in)
rate of packets(out)
(2)仿照上边的,再创建 2 个图形
① interface traffic bytes 加入 2 个监控项
rate of bytes(in)
rate of bytes(out)
② redis status 加入一个监控项
redis status
2、定义 Screens 聚合图形
(1)创建 screen 屏幕
(2)设置 screens
3、把 graphs 图形加入到 screens 屏幕中
(1)编辑上边设置的 screens
(2)点击更改,把 3 个 graphs 加入进来
① graph 加入 screen
② 设置
③ 添加成功,在浏览器上可以按 F11,全屏查看
4、多个 screens 可以做成幻灯片
(1)再设置一个 screens
(2)设置 Slide shows 幻灯片
① 创建一个幻灯片
② 把两个 screens 加入到幻灯片设置中
② 播放幻灯片,5s 会切换一次
5、Maps 拓扑图
Local network 自带的 maps 拓扑图;用处不是想象中那么大,就不讲了
实战四、Templates 模板和 macro 宏
1、Templates 模板
(1)模板介绍:
主机配置模板:用于链接至目标主机实现快速监控管理;
link, unlink, unlink and clear
模板可继承;
主机 link 多个模板必须注意,模板们不能含有相同的 item key。trigger 和 graphs 中使用的 items 不能是来自多个模板。
(2)创建 template 模板
① 创建
② 设置 template 模板
③ complete 模板,应用集 application、监控项 items、触发器 triggers、图形 graphs、屏幕 screens、自动发现 discover rules、web 检测 web scenarios。
模板 complete 的一系列添加设置,和主机 host 几乎一模一样,但是不会直接生效、采集数据;只有链接至主机才能生效、采集数据
区别:主机接口;complete 没有;host 有
host 有主机接口
complete 没有主机接口
④ 导入模板
可以在网上找到很多不错的别人定义的模板,可以直接导入
⑤ 也可导出自己的模板给其他人使用
(3)在 hosts 中导入模板 complete
① 导入
② 导入成功
(4)不想在 host 主机中使用模板,可以 取消链接 或 取消并清除
(5)组 group 使用模板
如果有很多属于同一组内的主机 host,想快速基于某模板监控,组 group 添加模板
(6)模板也可以链接到其他模板
2、宏:macro,预设的文本替换模式
(1)介绍
级别:
全局:Administration –> General –> Macros,对所有主机、所有模板都有效,优先级很低
模板:编辑模板 –> Macros,对所有链接至此模板的主机都有效
主机:编辑主机 –> Macros,仅对单个主机有效
类型:
内建宏:调用 {MACRO_NAME}
自定义:{$MACRO_NAME};命名方式:大写字母、数字和下划线
查询宏的官方文档:
https://www.zabbix.com/documentation/3.4/manual/appendix/macros/supported_by_location
(2)设置使用宏
① 还以 redis 为例
yum -y install redis
vim /etc/redis.conf
bind 0.0.0.0 #监听本地所有端口
systemctl start redis 开启服务
② 定义 全局宏
③ 在 items 监控项中调用
④ 调用成功
⑤ 设置模板宏
⑥ 定义主机宏
注意:宏的优先级:host 主机宏 > complete 模板宏 > 全局宏
更多 Zabbix 相关教程集合:
在 Ubuntu 16.04 服务器上安装 Zabbix 3.2 http://www.linuxidc.com/Linux/2017-07/145519.htm
CentOS 7 LNMP 环境搭建 Zabbix3.0 http://www.linuxidc.com/Linux/2017-02/140134.htm
Ubuntu 16.04 安装部署监控系统 Zabbix2.4 http://www.linuxidc.com/Linux/2017-03/141436.htm
Zabbix 监控安装部署及警报配置 http://www.linuxidc.com/Linux/2017-03/141611.htm
Zabbix 触发器表达式详解 http://www.linuxidc.com/Linux/2017-03/141921.htm
Ubuntu 16.04 下安装部署 Zabbix3.0 http://www.linuxidc.com/Linux/2017-02/140395.htm
CentOS 6.3 下 Zabbix 监控 apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm
CentOS 7 下 Zabbix 3.0 安装详解 http://www.linuxidc.com/Linux/2017-03/141716.htm
64 位 CentOS 6.2 下安装 Zabbix 2.0.6 http://www.linuxidc.com/Linux/2014-11/109541.htm
Zabbix 3.2.6 通过 Orabbix 监控 Oracle 数据库 http://www.linuxidc.com/Linux/2017-10/147224.htm
ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-12/149872.htm