系统和应用监控指标
系统指标网络指标磁盘指标容器指标系统指标系统是否实例和主机是否存在负载问题之前说过系统负载不超过3,我这里接近5的时候直接应用停顿了,所有的连接都断了2019-03-15 19:35:03.322 WARN 108710 — [LI-WORKER-5-T-6] c.j.j.g.t.AbstractTCPClientTransport : [JSF-22114]No...
- 系统指标
- 网络指标
- 磁盘指标
- 容器指标
- 硬件指标
系统指标
CPU负载和CPU使用率区别:
CPU利用率:显示的是程序在运行期间实时占用的CPU百分比
CPU负载:显示的是一段时间内正在使用和等待使用CPU的平均任务数。CPU利用率高,并不意味着负载就一定大。
举例说明:
某公用电话亭,有一个人在打电话,四个人在等待,每人限定使用电话一分钟,若有人一分钟之内没有打完电话,只能挂掉电话去排队,等待下一轮。电话在这里就相当于CPU,而正在或等待打电话的人就相当于任务数。
在电话亭使用过程中,肯定会有人打完电话走掉,有人没有打完电话而选择重新排队,更会有新增的人在这儿排队,这个人数的变化就相当于任务数的增减。为了统计平均负载情况,我们5秒钟统计一次人数,并在第1、5、15分钟的时候对统计情况取平均值,从而形成第1、5、15分钟的平均负载。有的人拿起电话就打,一直打完1分钟,而有的人可能前三十秒在找电话号码,或者在犹豫要不要打,后三十秒才真正在打电话。如果把电话看作CPU,人数看作任务,我们就说前一个人(任务)的CPU利用率高,后一个人(任务)的CPU利用率低。
当然, CPU并不会在前三十秒工作,后三十秒歇着,只是说,有的程序涉及到大量的计算,所以CPU利用率就高,而有的程序牵涉到计算的部分很少,CPU利用率自然就低。但无论CPU的利用率是高是低,跟后面有多少任务在排队没有必然关系。
内存使用率:
指标含义:内存使用率百分比(%)。
指标解释:容器的内存使用率是读取物理机cgroup下面的文件的,获取的是整个容器的内存使用率并不是针对某个程序。物理机内存使用率和使用free命令计算结果是一致的。物理机和容器两者内存计算数据是独立的。
容器内存占用查看方式:使用top命令查看重点查看RES一列,top命令详解请参考文档:
系统是否实例和主机是否存在> 指标含义:连通性(0 or 1),0为存活,1未不存活。
指标解释:系统每次检测时会ping4次,计算得到丢包率。目前不是100%丢包的都算作是存活就(即0),只有100%丢包才会算作不存活(即1)。
负载问题之前说过系统负载不超过3,我这里接近5的时候直接应用停顿了,所有的连接都断了
系统负载
指标含义:系统负载(1分钟粒度平均值)。
指标解释:在Linux系统中,使用uptime或这top命令可以查看当前系统的负载(top可以看到的信息更加详尽一些)。
“load average”,它的意思是"系统的平均负载",里面有三个数字,我们可以从中判断系统负载是大还是小。这三个数字分别表示最近1分钟、5分钟、15分钟内系统的负载平均值。详情参考
2019-03-15 19:35:03.322 WARN 108710 — [LI-WORKER-5-T-6] c.j.j.g.t.AbstractTCPClientTransport : [JSF-22114]Not found future which msgId is 36 when receive response. May be this future have been removed because of timeout
2019-03-15 19:35:03.323 WARN 108710 — [LI-WORKER-5-T-6] c.j.j.g.t.AbstractTCPClientTransport : [JSF-22114]Not found future which msgId is 37 when receive response. May be this future have been removed because of timeout
指标含义:swap使用率百分比(%)。
指标解释:Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。
swap space 是磁盘上的一块区域,可以是一个分区,也可以是一个文件。所以具体的实现可以是 swap 分区也可以是 swap 文件。当系统物理内存吃紧时,Linux 会将内存中不常访问的数据保存到 swap 上,这样系统就有更多的物理内存为各个进程服务,而当系统需要访问 swap 上存储的内容时,再将 swap 上的数据加载到内存中,这就是常说的换出和换入。交换空间可以在一定程度上缓解内存不足的情况,但是它需要读写磁盘数据,所以性能不是很高。
现在的机器一般都不太缺内存,如果系统默认还是使用了 swap 是不是会拖累系统的性能?理论上是的,但实际上可能性并不是很大。并且内核提供了一个叫做 swappiness 的参数,用于配置需要将内存中不常用的数据移到 swap 中去的紧迫程度。这个参数的取值范围是 0~100,0 告诉内核尽可能的不要将内存数据移到 swap 中,也即只有在迫不得已的情况下才这么做,而 100 告诉内核只要有可能,尽量的将内存中不常访问的数据移到 swap 中。在 ubuntu 系统中,swappiness 的默认值是 60。如果我们觉着内存充足,可以在 /etc/sysctl.conf 文件中设置 swappiness:
网络指标:
指标含义:网络入向流量(MB/s)(1分钟粒度平均值);网络向内接收的流量。
指标含义:网络出向流量(MB/s)(1分钟粒度平均值);网络向外发送的流量。
指标含义:网络入向包速率(packet/s)(1分钟粒度平均值);网络向内接收包的个数。
指标解释: 数据包:包(Packet)是TCP/IP协议通信传输中的数据单位,一般也称“数据包”。
TCP/IP协议是工作在OSI模型第三层(网络层)、第四层(传输层)上的。
指标含义:网络出向包速率(packet/s)(1分钟粒度平均值);网络向外发送包的个数。
指标含义:当前处于“ESTABLISHED (正在连接)”状态的tcp连接数。
取值方式:cat /proc/net/snmp,参数含义请参考:
指标解释:
一、ESTABLISHED (正在连接) 即有一个TCP 连接正在进行
二、TCP 关闭四步
1、Client发送了FIN给server,2、server发送ACK给Client,而Server 程序处于CLOSE_WAIT状态 3、server发送FIN给Client,Server 就置为LAST_ACK(主动关闭)状态 4、Client发送了ACK给server TCP 连接才会关闭
如果第三步没有进行则server会保持CLOSE-WAIT (被动关闭)状态,通常会保持2个小时
TCP Active opens
指标含义:主动建立tcp连接频率,既主动发送SYN,进入“SYN-SENT”状态的频率(次/s)(1分钟粒度平均值)。
取值方式:cat /proc/net/snmp,参数含义请参考:TCP SNMP counters
指标解释:SYN_SENT表示请求连接,当你要访问其它的计算机的服务时首先要发个同步信号给该端口,此时状态为SYN_SENT,如果连接成功了就变为ESTABLISHED,此时SYN_SENT状态非常短暂。但如果发现SYN_SENT非常多且在向不同的机器发出,那你的机器可能中了冲击波或震荡波之类的病毒了。这类病毒为了感染别的计算机,它就要扫描别的计算机,在扫描的过程中对每个要扫描的计算机都要发出了同步请求,这也是出现许多SYN_SENT的原因。
指标含义:入向IP报文速率(packet/s)(1分钟粒度平均值)
取值方式:cat /proc/net/snmp,参数含义请参考:TCP SNMP counters
指标解释:TCP/IP协议定义了一个在因特网上传输的包,称为IP数据包,而IP数据报(IP Datagram)是个比较抽象的内容,是对数据包的结构进行分析。 由首部和数据两部分组成,其格式如图所示。首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的。首部中的源地址和目的地址都是IP协议地址。
丢弃IP包(IP发送包数)
指标含义:入向的ip包中,没有错误但是被丢弃的。
取值方式:cat /proc/net/snmp,参数含义请参考:TCP SNMP counters
指标解释:丢弃的原因可能有buffer满了。
TCP接收包数
指标含义:入向TCP包速率(packet/s)(1分钟粒度平均值)。。
取值方式:cat /proc/net/snmp
TCP发送包数
指标含义:出向TCP包速率(packet/s)(1分钟粒度平均值)。
取值方式:cat /proc/net/snmp,
TCP包传输错误数
指标含义:入向TCP错误包频率(packet/s)(1分钟粒度平均值)。
取值方式:cat /proc/net/snmp,参数含义请参考:TCP SNMP counters
指标解释:TCP是一个可靠的协议,TCP包的头部带有标识,通过校验发现接收的包是错误的,然后将该包进行丢弃后返回一个值要求重新进行传送。
TCP包重传数
指标含义:TCP重传包频率(packet/s)(1分钟粒度平均值)。
取值方式:cat /proc/net/snmp,参数含义请参考:TCP SNMP counters
磁盘指标:
磁盘使用率:
指标含义:磁盘使用率百分比(%)
指标解释:目前是按照每个分区来进行统计。
磁盘繁忙率
指标含义:磁盘负载百分比(%)(1分钟粒度平均值)
查看磁盘负载:
iostat -x 1 10 查看 %util
#如果没有iostat 需要yum install sysstat安装;
#如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。
指标含义:磁盘每秒读取的数据量(KB/s)(1分钟粒度平均值)
指标含义:磁盘每秒写入的数据量(KB/s)(1分钟粒度平均值)
指标含义:磁盘每秒读取次数(次/s)(1分钟粒度平均值)。
指标含义:磁盘每秒写入次数(次/s)(1分钟粒度平均值)。
容器指标
线程数
指标含义:平均到每个核的线程数
进程数
指标含义:当前容器内进程总数
内存分配失败次数
指标含义:申请内存/swap失败次数(1分钟粒度)
句柄数
指标含义:当前容器内打开的文件句柄数
指标解释:在文件I/O中,要从一个文件读取数据,应用程序首先要调用操作系统函数并传送文件名,并选一个到该文件的路径来打开文件。该函数取回一个顺序号,即文件句柄(file handle),该文件句柄对于打开的文件是唯一的识别依据。要从文件中读取一块数据,应用程序需要调用函数ReadFile,并将文件句柄在内存中的地址和要拷贝的字节数传送给操作系统。当完成任务后,再通过调用系统函数来关闭该文件。
memory_swap使用量(MB)
指标含义:容器的swap使用量(MB)
硬件指标
CPU温度
指标含义:CPU温度(℃)
服务器功率
指标含义:服务器功率(W)
CPU风扇
指标含义:CPU风扇转速(RPM)
指标解释:RPM =round per minute,即每分钟多少转。
更多推荐
所有评论(0)