一。 zabbix操作和配置
zabbix常用的操作为 系统用户权限管理 虚拟主机 监控项 触发器 监控模板等
1》用户和权限
以下是权限配置的几个概念
主机组:被监控的主机的集合 同一类模板创建的主机 主机组配置参考官方文档
用户组:某个用户组对某些主机组的操作权限 常用的操作权限有(读写,读,拒绝)用户组配置参考官方文档(https://www.zabbix.com/documentation/3.4/zh/manual/config/users_and_usergroups/usergroup) 默认管理用户组是Zabbix administrators
用户:可以属于多个用户组 属于不同用户组 操作不同主机的权限
2》虚拟主机
也就是被监控的目标机器 一般该机器需要安装zabbit-agent
3》监控项
监控项是Zabbix中获得数据的基础。没有监控项,就没有数据——因为一个主机中只有监控项定义了单一的指标或者需要获得的数据 比如监控cpu 内存磁盘等数据。
4》触发器
监控项只是用于收集数据。如果需要自动评估收到的数据,我们则需要定义触发器。触发器包含了一个表达式,这个表达式定义了数据的可接受的阈值级别。
如果收到的数据超过了这个定义好的级别,触发器将被“触发”,或者进入“异常(Problem)”状态——从而引起我们的注意,让我们知道有问题发生。如果数据再次恢复到合理的范围,触发器将会到“正常(Ok)”状态。
5》问题通知
当监控项收集了数据后,触发器会根据异常状态触发报警。根据一些报警机制,它也会通知我们一些重要的事件,而不需要我们直接在Zabbix前端进行查看。
这就是通知(Notifications)的功能。E-mail是最常用的异常通知发送方式。我们将会学习如何配置e-mail通知。
二。 zabbix agent安装
模拟监控linux环境
192.168.58.152 zabbix-server和zabbix-web
192.168.58.150 zabbix-agent 被监控的linux主机
58.152安装参考http://blog.csdn.net/liaomin416100569/article/details/78663086
hostname zabbix-server
58.150安装过程:
[root@node3 tomcat]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
安装 zabbix-agent
[root@node3 tomcat]# yum install -y zabbix-agent
查看所有安装文件
[root@node3 tomcat]# rpm -ql zabbix-agent.x86_64 0:3.4.4-2.el7
/etc/logrotate.d/zabbix-agent
/etc/zabbix/zabbix_agentd.conf
/etc/zabbix/zabbix_agentd.d
/etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
/usr/lib/systemd/system/zabbix-agent.service
/usr/lib/tmpfiles.d/zabbix-agent.conf
/usr/sbin/zabbix_agentd
/usr/share/doc/zabbix-agent-3.4.4
/usr/share/doc/zabbix-agent-3.4.4/AUTHORS
/usr/share/doc/zabbix-agent-3.4.4/COPYING
/usr/share/doc/zabbix-agent-3.4.4/ChangeLog
/usr/share/doc/zabbix-agent-3.4.4/NEWS
/usr/share/doc/zabbix-agent-3.4.4/README
/usr/share/man/man8/zabbix_agentd.8.gz
/var/log/zabbix
/var/run/zabbix
根配置文件位于/etc/zabbix/zabbix_agentd.conf 添加了一个服务 zabbix-agent.service
192.168.58.152 zabbix-server
修改配置文件
/etc/zabbix/zabbix_agentd.conf 以下几项#zabbixserver的ip地址 可以是多个用,隔开
Server=192.168.58.152
#用于检查服务器是否存活的ip
ServerActive=192.168.58.152
#zabbixweb服务器添加的虚拟主机名称 zabbixagent需要通过ServerActive指定的主机 10050端口去检测添加的虚拟主机名称 是否被激活
Hostname=mylinux
启动 zabbix-agent
[root@node3 tomcat]# service zabbix-agent start
Redirecting to /bin/systemctl start zabbix-agent.service
[root@node3 tomcat]# service zabbix-agent status
Redirecting to /bin/systemctl status zabbix-agent.service
● zabbix-agent.service - Zabbix Agent
Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
Active: active (running) since Mon 2017-11-27 03:11:54 PST; 3s ago
Process: 4844 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 4846 (zabbix_agentd)
CGroup: /system.slice/zabbix-agent.service
├─4846 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
├─4847 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
├─4848 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
├─4849 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
├─4850 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
└─4851 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
Nov 27 03:11:54 node3 systemd[1]: Starting Zabbix Agent...
Nov 27 03:11:54 node3 systemd[1]: PID file /run/zabbix/zabbix_agentd.pid not readable (yet?) after start.
Nov 27 03:11:54 node3 systemd[1]: Started Zabbix Agent.
默认开启了服务器连接的端口 10050
[root@node3 tomcat]# netstat -nlp | grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 4846/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 4846/zabbix_agentd
三。 zabbix web添加虚拟主机及查看监控图形
zabbixserver必须添加虚拟主机 来实现和zabbixagent的对接 登录 zabbixweb端(http://192.168.58.152/zabbix/zabbix.php?action=dashboard.view)
输入名称和ip地址(主机名我这里写的中文 是无法成功的 应该使用英文 可见名称可以随便写 我这里 主机名称后面改成了mylinux
也就是这里主机名称和zabbix-agent配置 Hostname=的值必须一致 否则无法监控
)
点击模板 链接指示器 选择 弹出窗口中 选择 Template OS Linux 点击选择 一定要连接 下面超链接的添加 否则没有真正添加进入
点击最下面的添加 主机就添加完成
查看监控
点击监控中-图像-选择之前的主机 查看cpu的负载或者内存等
可以在 150下载安装 lookbusy来进行模拟cpu繁忙 下载地址(http://devin.com/lookbusy/download/lookbusy-1.4.tar.gz) 上传到linux安装
进入解压目录
./configure && make && make install
测试占用70%的cpu
[root@node3 lookbusy-1.4]# lookbusy -c 70
cpu_spin (6678): starting 1 spinner(s) for 70%-70% usage
lookbusy (6678): CPU spinner started, PID 6679
cpu_spin (6679): measuring CPU
cpu_spin (6679): est. 70% util at 12674959 cycles, 29973 usec sleep
查看web图形发现cpu的 1min监控的绿线 会突然升高到顶部
Last login: Thu Nov 30 10:31:40 2017 from 192.168.58.1
[root@zabbix-server ~]# rpm -ql zabbix-web-3.4.4-2.el7.noarch | grep font
/usr/share/zabbix/fonts
该目录存在一个字体文件
[root@zabbix-server ~]# cd /usr/share/zabbix/fonts
[root@zabbix-server fonts]# ll
total 0
lrwxrwxrwx 1 root root 33 Nov 29 11:13 graphfont.ttf -> /etc/alternatives/zabbix-web-font
window下的c:/windows/fonts目录下 拷贝任意一个支持中文的字体 比如 我拷贝宋体
拷贝到任意目录 使用sc上传到zabbix-server的/usr/share/zabbix/fonts
将上传的 simsun.ttc 重命名为graphfont.ttf
mv graphfont.ttf graphfont.ttf.old
cp simsun.ttc graphfont.ttf
重启 httpd服务
service httpd restart
重新查看web界面 发现图形乱码都解决
四。 zabbix web监控图形解释
1》监控 cpu
cpu存在三种监控 cpu jumps,cpu load,cpu utilization
》》cpm jumps 主要有两个子监控项
》》cpu load
实际上 就是统计系统的负载值 (是由于CPU使用、内存使用、IO消耗三部分构成) 比如 linux上使用uptime查看负载
[root@node3 ~]# uptime
03:53:48 up 1 day, 11:09, 2 users, load average: 1.07, 1.11, 0.64
最后三个参数是 最近1分钟 5分钟 15分钟的平均负载 也可以通过top命令 头部分的 load average: 1.76, 1.20, 0.63部分看到
3》cpu utilization (cpu使用率)
一般就是统计当前cpu的利用占用 其实就是根据top命令统计 其中top头有以下几个部分
%Cpu(s): 75.0 us, 2.5 sy, 0.0 ni, 22.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
us表示 用户空间占用CPU百分比 查看CPU使用率
sy 内核空间占用CPU百分比
ni 用户进程空间内改变过优先级的进程占用CPU百分比
id 空闲CPU百分比
wa 等待输入输出的CPU时间百分比
2》监控内存
zabbix监控的是 linux剩余可用内存 linux上可以使用 free -m查看以M为单位的内存信息
[root@node3 ~]# free -m
total used free shared buff/cache available
Mem: 1824 1625 73 4 126 65
Swap: 2048 291 1757
mem表示物理内存 总共是1824M 使用了 1625M 剩余73M
Swap表示交换内存(物理内存不够 使用交换内存顶 实际就是用磁盘空间当内存用 效率低 ) 总共是2G 使用291剩余1757
查看可用内存
3》监控磁盘
查看磁盘的可用空间 linux命令为 -m表示单位是MB
[root@node3 ~]# df -m
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/sda3 79532 6345 73187 8% /
devtmpfs 904 0 904 0% /dev
tmpfs 913 0 913 0% /dev/shm
tmpfs 913 9 904 1% /run
tmpfs 913 0 913 0% /sys/fs/cgroup
/dev/sda1 297 107 191 36% /boot
tmpfs 183 0 183 0% /run/user/0
zabbix可以监控这两个分区
磁盘使用率 /
3》监控网络
查看当前网络占用的流量信息 一般包括 上行流量(进入主机的数据)和下行流量(发出的数据)
实际统计的linux下的网络流文件
[root@node3 ~]# more /proc/net/dev
Inter-| Receive(接受) | Transmit(发出)
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
eno16777736: 215187628 544001 0 0 0 0 0 0 672193851 861396 0 0 0 0 0 0
lo: 16189197 216842 0 0 0 0 0 0 16189197 216842 0 0 0 0 0 0