linux监控平台搭建-cpu

目前服务器的主流CPU是intel或者AMD。到底主频是什么。多核、多线程、并发、并行、超频、一级缓存、二级缓存、三级缓存。i386、x86

cpu:含有算术逻辑、控制、记忆等单元

频率:就是CPU每秒钟可以进行的工作次数。3.0GHz 这个CPU在一秒内进行3.0*10(9)

外频:CPU与外部组件进行数据传输、运算是的速度。最好与内存相匹配。

总核数 = 物理CPU个数 X 每颗物理CPU的核数

总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数

查看物理CPU个数:cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

查看每个物理CPU中core的个数(即核数):cat /proc/cpuinfo| grep "cpu cores"| uniq

查看逻辑CPU的个数:cat /proc/cpuinfo| grep "processor"| wc -l

查看CPU信息(型号):cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

查看CPU的主频:cat /proc/cpuinfo |grep MHz|uniq

1.监控相关的CPU计算方法:通过采集/proc/stat来得到,大家可以参考sar命令的统计输出来理解。

cpu.idle:CPU或CPUs空闲并且系统没有未完成的磁盘I / O请求的时间百分比。

cpu.busy:与cpu.idle相对,他的值等于100减去cpu.idle。

cpu.guest:CPU或CPUS用于运行虚拟处理器的时间百分比。

cpu.iowait:CPU或CPUS用于维护硬件中断所花费的时间百分比。

cpu.irq:CPU或CPUS用于维护硬件中断所花费的时间百分比。

cpu.softirq:CPU或CPUS用于服务软件中断所花费的时间百分比。

cpu.nice:在优先级高的用户级别执行时CPU占用率的百分比。

cpu.steal:当虚拟机管理程序为另一个虚拟处理器服务时,虚拟CPU或CPUS在非自愿等待中花费的时间百分比。

cpu.system:在系统级别(内核)上执行时CPU占用率的百分比。

cpu.user:在用户级别(应用程序)执行时CPU占用率的百分比。

cpu.cnt:cpu核数。

cpu.switches:cpu上下文切换次数,计数器类型。在stat里面是这个  ctxt 30516916343

CPU时间=user+system+nice+idle+iowait+irq+softirq

例如:查看cpu核0

%usr    %nice   %sys     %iowait     %irq    %soft   %steal   %guest   %idle

cpu0    3143580   88     2678777   3863810314   2442     0     5461    0      0

btime:这行展示从系统启动到现在为止的时间(以Epoch时间开始计算, 1970-01-01 00:00:00 +0000 (UTC)),单位为秒。

processes:(total_forks) 自系统启动以来所创建的任务的个数目。

procs_running:当前运行队列的任务的数目。

procs_blocked:当前被阻塞的任务的数目。

softirq:从系统启动开始累计到当前时刻,软中断时间(单位:jiffies)

intr:这行给出中断的信息,第一个为自系统启动以来,发生的所有的中断的次数;然后每个数对应一个特定的中断自系统启动以来所发生的次数。

2.监控相关的CPU-load计算方法:读取/proc/loadavg,都是原始值类型的:

load.1min:表示最近1分钟的平均负载(取决于机器的核数)

load.5min:表示最近5分钟的平均负(取决于机器的核数)

load.15min:表示最近15分钟的平均负载(取决于机器的核数)

常用的命令:sar、mpstat、top、iostat、vmstat、w...

mpstat [-P {cpu|ALL}] [internal [count]]

3.获取进程cmd的方式

ps  -e   o user,pid,cmd | grep ssh

ps  w  -p  $pid

4.计算进程启动的时间

ps -p  $pid  -o lstart

或者脚本

#!/bin/bash

pid=$1

elt=$( ps w -p $pid o pid=,cmd=,etime= | awk  '{print $NF}' )

case $( echo $elt | sed -e 's/:/:\n/g' | grep ":" -c ) in

"1")

elt=$( echo $elt | sed -e 's/:/ minutes ago /' )

;;

*)

elt=$( echo $elt | sed -e 's/-/ days ago /' -e 's/:/ hours ago /' -e 's/:/ minutes ago /' )

;;

esac

date -d "$elt seconds ago"

5.查看单个进程的状态

cat  /proc/$pid/stat

参考:

http://blog.51cto.com/asinego/1949715

linux监控平台搭建-cpu的更多相关文章

  1. linux监控平台搭建-内存

    linux监控平台搭建-内存 上一篇文章说的硬盘.就写一下.更加重要的东西.在手机上面是RAM.机器是memory.内存是按照字节编址.每个地址的存储单元可以存放8bit的数据.cpu 通过内存地址获 ...

  2. linux监控平台搭建-磁盘

    linux监控平台搭建-磁盘 磁盘:随着大数据快速发展.人工智能.自动化.云平台.数据量指数的增长.磁盘的使用量也在增长.目前的机器基本上采用SSD或者SATA盘,一直有人比较那个好.会不会使用时间短 ...

  3. Linux监控平台搭建

    Linux监控平台介绍 zabbix监控介绍 zabbix监控流程图 安装zabbix 准备两台主机: zabbix服务端:192.168.133.88 zabbix客户端:192.168.133.6 ...

  4. inux监控平台搭建-监控项

    linux监控平台搭建-监控项 本人运维某生态互联网监控平台服务.过程中遇见了很多问题.目前互联网有很多的开源监控工具:nagios.zabbix.falcon.cacti...各有优点.这里不讲解监 ...

  5. Linux监控平台、安装zabbix、修改zabbix的admin密码

    1.Linux监控平台 2. zabbix监控 3.zabbix的安装下载:wget -c https://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbi ...

  6. Linux监控平台介绍、zabbix监控介绍、安装zabbix、忘记Admin密码如何做

    7月6日任务 19.1 Linux监控平台介绍19.2 zabbix监控介绍19.3/19.4/19.5 安装zabbix19.6 忘记Admin密码如何做 19.1 Linux监控平台介绍 一般大公 ...

  7. 轻量级监控平台之cpu监控

    轻量级监控平台之cpu监控脚本 #!/bin/bash #进程监控脚本 #功能需求: 上报机器的硬件层面-cpu负载数据 . /etc/profile . ~/.bash_profile pushur ...

  8. Linux centosVMware Linux监控平台介绍、zabbix监控介绍、安装zabbix、忘记Admin密码如何做

    一.Linux监控平台介绍 cacti.nagios.zabbix.smokeping.open-falcon等等 cacti.smokeping偏向于基础监控,成图非常漂亮 cacti.nagios ...

  9. Docker系列——InfluxDB+Grafana+Jmeter性能监控平台搭建(三)

    在之前系列博文中,已经介绍完了数据采集和数据存储,那数据如何展示呢?所以今天就专门来讲下数据如何展示的问题. 以前博文参考: Docker系列--InfluxDB+Grafana+Jmeter性能监控 ...

随机推荐

  1. 响应者链和Hit-Test 机制

    概念: 响应者 : 对用户交互动作事件进行响应的对象.响应者链:成为处理事件的响应者的先后顺序链. 1.Hit-Test 机制 当用户触摸(Touch)屏幕进行交互时,系统首先要找到响应者(Respo ...

  2. d3.js--02(data和datum原理)

    原文链接: http://d3.decembercafe.org/pages/lessons/3.html 解析一下data和datum原理: datum():绑定一个数据到选择集上 data():绑 ...

  3. 洛谷 1571 眼红的Medusa

    洛谷 1571 眼红的Medusa 虽说这道题标签里写明了二分,然而我还是首先想到了map......毕竟map真的是简单好写. map做法 #include<bits/stdc++.h> ...

  4. http客户端与浏览器的区别

    两者区别:浏览器对http响应头会进行特定处理(如自动读取本地缓存.设置cookie等),而http客户端(如crul)可能没有像浏览器那样的处理,某些封装程度高的http客户端,可能会有. 同一个文 ...

  5. thinkcmf5更新模板代码分析,解决模板配置json出错导致数据库保存的配置项内容丢失问题

    private function updateThemeFiles($theme, $suffix = 'html') { $dir = 'themes/' . $theme; $themeDir = ...

  6. destoon模块自定义字段的添加并让其支持搜索的方法

    今天看了看模块设置里的自定义字段功能的用法,试着加了个新字段glry,设置了值,然后去数据库moduleid的article表看,字段成功加上了. 于是去template下article文件夹的lis ...

  7. python2和python3,字典和json

    Python2的标准数据类型有: Numbers (数字) String (字符串) List (列表) Tuple (元组) Dictionary (字典) Python3的标准数据类型有: Num ...

  8. 字符串:HDU5371-Hotaru's problem(manacher 的应用)

    Hotaru's problem Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Pr ...

  9. German Collegiate Programming Contest 2018​

    // Coolest Ski Route #include <iostream> #include <cstdio> #include <cstring> #inc ...

  10. HBase0.94.2-cdh4.2.0需求评估测试报告1.0之一

    hbase是bigtable的开源山寨版本.是建立的hdfs之上,提供高可靠性.高性能.列存储.可伸缩.实时读写的数据库系统.它介于nosql和RDBMS之间,仅能通过主键(row key)和主键的r ...