linux---系统性能监控

背景

Linux的系统性能监控 system performance monitor
性能 performance
性能指标:
操作系统里最核心的4大指标

		cpu
		内存
		磁盘
		网络
		服务(业务): nginx,MySQL,flask等应用程序

监控:monitor monitoring
目的:获取信息(cpu,内存,磁盘,网络带宽流量,服务,进程等资源),判断是否有问题,有问题就及时处理
监控工具:

1.linux系统本身的工具
2.3方开发的工具: netdata,zabbix,prometheus
3.自研--》自己研发  ---》运维开发

为什么需要监控?
计算机系统和应用会出现问题,人又不能7*24小时一直盯着,软件–》取代去完成

使用工具--》软件:zabbix,prometheus
操作系统里本身就有很多软件(命令):top,ps ,dstat等

监控的意义:
1.提前预知,可以告警–》防范事故与未然,提前采取措施
2.如果出现事故,也可以马上告诉运维人员,及时处理,将损失减少到最小

Linux系统性能我们主要看哪些指标

cpu,磁盘,内存,网络、服务,进程等

常用的系统监控命令

top

动态显示系统性能参数

top常见选项

top命令默认在一个特定间隔(3)后刷新显示。要手动刷新,用户可以输入回车或者空格。

top 运行中可以通过 top 的内部命令对进程的显示方式进行控制。内部命令如下:

l – 关闭或开启第一部分第一行 top 信息的表示
t – 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示
m – 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示
N – 以 PID 的大小的顺序排列表示进程列表
P – 以 CPU 占用率大小的顺序排列进程列表
M – 以内存占用率大小的顺序排列进程列表
h – 显示帮助
n – 设置在进程列表所显示进程的数量
q – 退出 top

在这里插入图片描述

top显示内容详解

请添加图片描述

top :程序名

- 16:47:01 :当前时间
- up 6 days, 18:43, :运行时间
-  1 user,:登入用户数
- load average: 0.00, 0.04, 0.05:平均负载均衡
Tasks:  80 total,:进程总数
  1 running, :运行个数
  79 sleeping,:睡眠个数
  0 stopped,:停止个数
  0 zombie:僵尸进程个数
%Cpu(s):  0.3 us, :us, user--》 运行(未调整优先级的) 用户进程的CPU时间
 0.3 sy, :sy,system: 运行内核进程的CPU时间
 0.0 ni, :ni,niced:运行已调整优先级的用户进程的CPU时间
 99.3 id, :空闲cpu
 0.0 wa,:wa,IO wait: 用于等待IO完成的CPU时间
 0.0 hi, :hi:处理硬件中断的CPU时间
 0.0 si,  :si: 处理软件中断的CPU时间
 0.0 st:st:这个虚拟机被hypervisor偷去的CPU时间(译注:如果当前处于一个hypervisor下的vm,实际上hypervisor也是要消耗一部分CPU处理时间的)。
KiB Mem :  1882008 total,:总内存空间
    93104 free, :空闲内存空间
      243468 used,  :使用空间
      1545436 buff/cache:缓冲区内存
交换分区:同上
KiB Swap: 
       0 total,    
       0 free,   
       0 used.  1466444 avail Mem 
PID:进程ID,进程的唯一标识符

USER:进程所有者的实际用户名。

PR:进程的调度优先级。这个字段的一些值是'rt'。这意味这这些进程运行在实时态。

NI:进程的nice值(优先级)。越小的值意味着越高的优先级。负值表示高优先级,正值表示低优先级

VIRT:进程使用的虚拟内存。进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

RES:驻留内存大小。驻留内存是任务使用的非交换物理内存大小。进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

SHR:SHR是进程使用的共享内存。共享内存大小,单位kb

S:这个是进程的状态。它有以下不同的值:

D - 不可中断的睡眠态。
R – 运行态
S – 睡眠态
T – 被跟踪或已停止
Z – 僵尸态

%CPU:自从上一次更新时到现在任务所使用的CPU时间百分比。

%MEM:进程使用的可用物理内存百分比。

TIME+:任务启动后到现在所使用的全部CPU时间,精确到百分之一秒。

COMMAND:运行进程所使用的命令。进程名称(命令名/命令行)
VIRT:virtual memory usage 虚拟内存

1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等
2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量

RES:resident memory usage 常驻内存

1、进程当前使用的内存大小,但不包括swap out
2、包含其他进程的共享
3、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反
4、关于库占用内存的情况,它只统计加载的库文件所占内存大小

SHR:shared memory 共享内存

1、除了自身进程的共享内存,也包括其他进程的共享内存
2、虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小
3、计算某个进程所占的物理内存大小公式:RES – SHR
4、swap out后,它将会降下来

DATA

1、数据占用的内存。如果top没有显示,按f键可以显示出来。
2、真正的该程序要求的数据空间,是真正在运行中要使用的。

free

显示内存的使用情况

free命令 可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。

选项

选项

-b # 以Byte为单位显示内存使用情况;
-k # 以KB为单位显示内存使用情况;
-m # 以MB为单位显示内存使用情况;
-g # 以GB为单位显示内存使用情况。 
-o # 不显示缓冲区调节列;
-s<间隔秒数> # 持续观察内存使用状况;
-t # 显示内存总和列;
-V # 显示版本信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值