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. 安装 Win7 的系统的时候如何分区

    解决方案 在安装Win7的系统的时候,可以使用下面方法进行分区: 1. 在出现同意许可条款,勾选“我接受许可条款(A)”后,点击下一步,然后继续下面操作: 2. 进入分区界面,点击“驱动器选项(高级) ...

  2. 01_10_SERVLET如何连接Mysql数据库

    01_10_SERVLET如何连接Mysql数据库 1. 实现类 public void doGet(HttpServletRequest request, HttpServletResponse r ...

  3. 01_7_cookies

    01_7_cookies 1. cookies 1.1服务器可以向客户端写内容 1.2只能是文本内容 1.3客户端可以阻止服务器写入 1.4只能拿到自己webapp写入的东西 1.5Cookie分为两 ...

  4. centos安装并配置MySQL

    一.卸载掉原有mysql [root@xiaoluo ~]# rpm -qa | grep mysql // 这个命令就会查看该操作系统上是否已经安装了mysql数据库 [root@xiaoluo ~ ...

  5. Linux安装OpenCV

    sudo apt-get update sudo apt-get install git git clone https://github.com/jayrambhia/Install-OpenCV ...

  6. Applied Nonparametric Statistics-lec1

    参考网址: https://onlinecourses.science.psu.edu/stat464/node/2 Binomial Distribution Normal Distribution ...

  7. LeetCode(215) Kth Largest Element in an Array

    题目 Find the kth largest element in an unsorted array. Note that it is the kth largest element in the ...

  8. LeetCode(189) Rotate Array

    题目 Rotate an array of n elements to the right by k steps. For example, with n = 7 and k = 3, the arr ...

  9. 线段树:POJ3468-A Simple Problem with Integers(线段树注意事项)

    A Simple Problem with Integers Time Limit: 10000MS Memory Limit: 65536K Description You have N integ ...

  10. django中的objects.get和objects.filter方法的区别

    为了说明它们两者的区别定义2个models class Student(models.Model): name = models.CharField('姓名', max_length=20, defa ...