技术标签: zabbix Zabbix监控服务 监控项 Zabbix服务监控 监控服务
2018.5
Zabbix中内置了很多监控参数(Key_),可以获取监控对象中的系统、CPU、网络、内存、文件系统等信息。下面就详细介绍一下这些监控参数的意义。
在Zabbix Server上使用zabbix_get命令可以从监控对象获取监控参数的具体内容。zabbix_get命令的具体使用方法如下:
zabbix_get -s 目标服务器IP -p 端口(10050) -k {key}
zabbix_get命令实际的执行结果如下:
[email protected]:~$ zabbix_get -s 192.168.3.133 -p 10050 -k system.uname
Keys |
说明 |
system.boottime |
# 系统启动的时间点(Host boot time)(单位:时间戳);API中参数history需指定为3; |
system.uptime |
# 系统已运行时长(System uptime)(单位:秒);API中参数history需指定为3; |
system.localtime |
# 系统时间(Host local time)(单位:时间戳);API中参数history需指定为3; |
system.hostname |
# 主机名(Host name);API中参数history需指定为1; |
kernel.maxfiles |
# 内核参数,可打开的最大文件数(Maximum number of opened files);API中参数history需指定为3; |
kernel.maxproc |
# 内核参数,支持的最大进程数(Maximum number of processes);API中参数history需指定为3; |
system.users.num |
# 目前登录到系统中的用户数量(Number of logged in users);API中参数history需指定为3; |
system.uname |
# 获取系统信息(System information);API中参数history需指定为1; |
|
|
网卡按照最高网速可以分为百兆网卡(100Mbps)和千兆网卡(1000Mbps或1Gbps)。当传输大量的数据时,可能会出现流速过大的情况。对于Webapp而言,如果出现高并发,同时请求的页面比较大时,就会出现流量过大的情况,也叫作带宽被占满了。如果试验将网速触发到顶速,可以在内网环境中,在两台主机之间传输一个大文件,如果是百兆网卡可以传输几个G的数据,如果是千兆网卡则需要传输几十个G的数据,效果才会比较明显。两个主机之间传输数据时,网速最大不会超过网速比较小的网卡的最高网速。比如百兆网卡之间传输数据,最高配可能到达90Mbps以上;千兆网卡之间传输数据,最高配速可能到达900Mbps以上;百兆网卡和千兆网卡之间传输数据,最高配速只能到达90Mbps以上。
传输大量的数据,理论上会出现高流速的情况,如果没有出现,则说明是数据传输的发送方或者接收方在处理数据上消耗了一些时间,这些时间摊平了数据的流速。此时如果需要提升传输速度,则需要减少发送发或接收方的数据处理操作。
Keys |
说明 |
net.if.out[br0] |
# 网卡流速,流出方向;时间间隔60s; # 获取指定网卡(br0)的流出流量的流速值(Outgoing network traffic on br0),br0为网卡名称,根据实际情况填写;时间间隔60s; |
net.if.in[br0] |
# 网卡流速,流入方向(单位:字节); API中参数history需指定为3;下同;时间间隔60s; # 获取指定网卡(br0)的流入流量的流速值(Incoming network traffic on br0),br0为网卡名称,根据实际情况填写;时间间隔60s; |
|
|
Keys |
说明 |
proc.num[] |
# 目前系统中的进程总数(Number of processes);时间间隔60s; |
proc.num[,,run] |
# 目前正在运行(处于运行态)的进程总数(Number of running processes);时间间隔60s; |
|
|
--> 通过zabbix_get获取负载值
[email protected]:~$ zabbix_get -s 192.168.0.38 -p 10050 -k system.cpu.load[percpu,avg1]
0.010000
[email protected]:~$ zabbix_get -s 192.168.0.38 -p 10050 -k system.cpu.load[percpu,avg5]
0.012500
[email protected]:~$ zabbix_get -s 192.168.0.38 -p 10050 -k system.cpu.load[percpu,avg15]
0.012500
合理的控制用户态、系统态、io等待时间可以保证进程高效率的运行。
系统态运行时间较高说明进程进行系统调用的次数比较多。一般的程序,如果系统态运行时间占用过高,就需要优化程序,减少系统调用。
io等待时间的比例过高,则表明硬盘的IO性能差,如果是读写文件比较频繁,读写效率要求比较高,可以考虑更换硬盘,或者使用多磁盘做Raid的方案。
Keys |
说明 |
system.cpu.switches |
# CPU的进程上下文切换(Context switches per seconds),单位sps,表示每秒采样次数;API中参数history需指定为3;时间间隔60s; |
system.cpu.intr |
# CPU中断数量(Interrupts per second); API中参数history需指定为3; |
system.cpu.load[percpu,avg1] |
# CPU每分钟的负载值,按照核数做平均值(Processor load (1 min average per core));API中参数history需指定为0;下同 |
system.cpu.load[percpu,avg5] |
# CPU每5分钟的负载值,按照核数做平均值(Processor load (5 min average per core)) |
system.cpu.load[percpu,avg15] |
# CPU每15分钟的负载值,按照核数做平均值(Processor load (15 min average per core)) |
system.cpu.util[,softirq] |
# CPU的软中断时间,百分比形式(CPU softirq time);API中参数history需指定为0;下同 |
system.cpu.util[,steal] |
# CPU的偷盗的时间,百分比形式(CPU steal time); |
system.cpu.util[,idle] |
# CPU的空闲时间,百分比形式(CPU idle time);API中参数history需指定为0;下同;时间间隔60s; |
system.cpu.util[,user] |
# CPU的用户态运行时间,百分比形式(CPU user time);时间间隔60s; |
system.cpu.util[,system] |
# CPU的系统态运行时间,百分比形式(CPU system time);时间间隔60s; |
system.cpu.util[,iowait] |
# CPU的io等待时间,百分比形式(CPU iowait time) |
system.cpu.util[,interrupt] |
# CPU的中断时间,百分比形式(CPU interrupt time) |
system.cpu.util[,nice] |
# CPU的nice时间,百分比形式(CPU nice time) |
|
|
虚拟内存是由物理内存(即购买的内存条)和swap分区组成。物理内存占用过高之后,会将部分很久不用的数据转储到swap分区中。由此可见,在正常情况下,物理内存使用量并不高的情况下,不会占用swap分区。如果出现物理内存使用量过高,开始使用swap分区,或者swap分区使用过高的情况,就需要考虑购买并添加物理内存了。
---> 通过zabbix_get获取内存使用信息
[email protected]:~$ zabbix_get -s 192.168.4.133 -p 10050 -k vm.memory.size[available]
14989234176
[email protected]:~$ zabbix_get -s 192.168.4.133 -p 10050 -k system.swap.size[,free]
10681548800
Keys |
说明 |
system.swap.size[available] |
# 物理内存目前可用的容量(Available memory)(单位:字节);API中参数history需指定为3;时间间隔60s; |
system.swap.size[,total] |
# swap分区的总容量(Total swap space);API中参数history需指定为3;时间间隔3600s; |
system.swap.size[,free] |
# swap分区尚可使用的容量(Free swap space);API中参数history需指定为3;时间间隔60s; |
system.swap.size[,pfree] |
# swap分区尚可使用的容量,百分比形式(Free swap space in %);API中参数history需指定为0;时间间隔60s; |
vm.memory.size[total] |
# 物理内存总量(Total memory)(单位:字节);API中参数history需指定为3;时间间隔3600s; |
|
|
文件系统的inode表示可以创建的文件的最大数量。在需要创建很多文件的系统中需要密切关注这个值。如果文件系统的容量没有用完,但是inode的数量已经消耗完了,也再也不能创建文件了。
Keys |
说明 |
vfs.fs.inode[/,pfree] |
# 文件系统的指定分区中尚未使用的inode数量,百分比形式(Free inodes on / (percentage));API中参数history需指定为0;时间间隔60s; |
vfs.fs.size[/,free] |
# 文件系统中指定分区(目录)中未使用的容量数值(Free disk space on /);API中参数history需指定为3;时间间隔60s; |
vfs.fs.size[/,pfree] |
# 文件系统中指定分区(目录)中未使用的容量,百分比形式(Free disk space on / (percentage));API中参数history需指定为0;时间间隔60s; |
vfs.fs.size[/,used] |
# 文件系统中指定分区(目录)中已使用的容量(Used disk space on /)(单位:字节);API中参数history需指定为3;下同;时间间隔60s; |
vfs.fs.size[/,total] |
# 文件系统中指定分区(目录)的总容量(Total disk space on /);时间间隔3600s; |
|
|
Keys |
说明 |
vfs.file.cksum[\/etc\/passwd] |
# 求指定文件的校验和(Checksum)(单位:字节);API中参数history需指定为3;下同。 # 求/etc/passwd的校验和(Checksum of /etc/passwd) |
|
|
Keys |
说明 |
agent.ping |
# Agent的在线状态(Agent ping);API中参数history需指定为3; |
agent.hostname |
# Zabbix Agent的hostname(Host name of zabbix_agentd running);API中参数history需指定为1;下同 |
agent.version |
# Agent的软件版本号(Version of zabbix_agent(d) running) |
|
|
以上介绍了Zabbix中与系统相关的监控参数,基本覆盖了获取系统信息、影响系统稳定的各种参数,各个参数之间的相互影响需要在使用过程中细细体会。
摘要:这本小册子,记录了这一年,继续构建连接用户、商家、达人、机构、服务商的平台生态,逐步完善生意模式;这一年,我们优化经营阵地,发布致力于长效经营的会员体系;我们开通精选联盟达人广场2.0和选品广场2.0,通过技术匹配能力,疏浚合作渠道;我们首次发布“‘抖in爆款榜’ 趋势洞察”报告,解读爆品的秘密;我们全新升级抖音电商罗盘2.0,擦亮探索的航针。这一年,我们向新而来,我们与所有的合作伙伴共绘从种下兴趣到转化收获的地图。在那片迷人的新大陆,发现新商机、创造新价值、拥抱新增长。这一年,感慨回响有声,没有..
//自定义UISlider的样式和滑块 //轨道图片 UIImage *stetchLeftTrack = [UIImageimageNamed:@"thick"]; UIImage *stetchRightTrack = [UIImageimageNamed:@"thick"]; //滑块图片
R语言——线性判别分析*线性判别分析是一种经典的线性学习方法,在二分类问题上最早由Fisher在1936年提出,亦称Fisher线性判别。线性判别的思想非常朴素:给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近,异样样例的投影点尽可能远离;在对新样本进行分类时,将其投影到同样的直线上,再根据投影点的位置来确定新样本的类别 。LDA与方差分析(ANOVA)和回归分析紧...
如果你对163邮箱的域名情有独钟,那么此时,真的不应错过。一共具有20多年历史的邮箱域名系列,即将迎来全新账号、全新视觉的享受,承载国人好运、财富、身份等寓意的专属短靓号,更是给我们带来了不小的惊喜。本次163新域名的上线,是由TOM邮箱团队倾注了很多精力完成的,力求在产品体验上优于传统邮箱,除了后缀独有的VIP身份外,该款邮箱会关注更多中小企业及个人精准群体,基于24年的产品经验,在保留原有的优质会员体验外,增加了更多新环境、新体验。TOM VIP邮箱从用户不同场景的体验出发,全新升级了无限容量存储、
创建表的三种方法Hive创建表的方式(默认路径/user/hive/warehouse,也可以location指定,主要针对external表)1、使用create命令创建一个新表,带分区CREATE TABLE `mydb.dept`( `dept_no` int, `addr` string, `tel` string)partitioned by(dat...
▌1、前言之前做活动抽奖送的几个树莓派,但是因为好几个人都没有填写地址,所以就只能把东西寄回来给我,然后手痒自己玩了下,觉得这个东西确实很香,比一般的Linux开发板都好。PICO这个开发板可以玩很多东西1 、运行pico-sdk2、玩micropython3、跑这个Fuzix系统我这个文章只说Fuzix系统相关的,因为这个系统很小,喜欢的同学都可以自尝试学习。▌ 2、硬件准备●一个树莓派pic...
很多小伙伴都认为父类的私有成员在子类中访问不到,所以误认为父类中的私有成员是不可以被继承的。今天遇到了同样的问题,特意花了点时间研究了一下。下面请看源码首先定义一个父类,父类中提供一个私有属性a和私有方法show(),再提供两个公有的方法分别获取私有变量a和访问私有方法show()。父类public class Fu {private int a;public Fu() { }public Fu(int a) { this.a = a;}private void show ()
版本号:opencv2.4.8【calib3d】 其实就是就是Calibration(校准)加3D这两个词的组合缩写。这个模块主要是相机校准和三维重建相关的内容。基本的多视角几何算法,单个立体摄像头标定,物体姿态估计,立体相似性算法,3D信息的重建等等。【contrib】 也就是Contributed/ExperimentalStuf的缩写, 该模块包含
folium是一个做地图可视化的python包,但给定的地图样式(tiles)有限,本文介绍如何使用mapbox进行地图样式自定义。folium底层用的是leaflets,一个做交互式地图的js库,OpenWhateverMap上有很多现成的各式各样的地图样式可供使用:如果这些地图样式仍然不能满足你的要求,leaflets中可以使用mapbox的自定义地图样式。mapbox是一个开源的地图...
web开发之分页功能实现的常用方式本文主要写分页功能实现的常用方式,主要讲项目开发中快速使用的方式。适合那些只想快点实现技术而不用深入研究的人群。搞后端的你,哪天让你来搞前端了呢?我主要写一些关键点和快速实现,有时候做项目要快撒。所以把一些常用的方法总结写下,后期我做起来就直接复制粘贴就好。本文是我项目开发中总结下来的,针对那种想要快速实现功能,而不是研究原理的,那你就直接复制我的东西,运行...
部署集群版的kafka(3节点),删除某些topic数据后或重启kafka,结果在kafka恢复过程中,某一节点每隔几分钟重启一次,导致该节点broker无法使用;解决方法:删除 文件目录logs /kfk/zoo/log/version-2/*删除 安装目录logs /var/lib/docker/overlay/../upper or /upper/opt/kafka_2.12-0....
本篇文章,主要面向初次接触CCS的朋友,你可以学到:如何创建工程及选择芯片如何烧录程序如何调试程序如何创建工程及选择芯片点击File->New->CCS Project创建工程在Target这一栏可以选择芯片型号,左侧展开栏选择芯片的系列,右侧展开栏选择芯片的具体型号,这里我使用的是MSP430F5529注意:这里初学者很容易就没有选择芯片就直接创建工程了,这会导致程序无法无法烧录进去。如果不慎没有选择芯片就创建工程,可以单击上方Project->Properties选择