zl程序教程

您现在的位置是:首页 >  硬件

当前栏目

cpu、内存、磁盘、网络等问题排查

内存网络CPU 磁盘 排查 问题
2023-09-27 14:21:15 时间
 

#一般情况下使用root或者oracle用户查都可以。 # 总核数
= 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 --查看物理CPU个数 [oracle@enmo ~]$ cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l 0 --查看每个物理CPU中core的个数(即核数) cat /proc/cpuinfo| grep "cpu cores"| uniq --查看逻辑CPU的个数 [oracle@enmo ~]$ cat /proc/cpuinfo| grep "processor"| wc -l 1 [oracle@enmo ~]$ --查看CPU信息(型号) [oracle@enmo ~]$ cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 1 Intel(R) Core(TM) i5-5200U CPU @ 2.20GHz [oracle@enmo ~]$ --查看内 存信息 [oracle@enmo ~]$ cat /proc/meminfo MemTotal: 2035908 kB MemFree: 1544564 kB Buffers: 31728 kB Cached: 299544 kB SwapCached: 0 kB Active: 89152 kB Inactive: 293792 kB Active(anon): 54944 kB Inactive(anon): 396 kB Active(file): 34208 kB Inactive(file): 293396 kB Unevictable: 4444 kB Mlocked: 4444 kB SwapTotal: 4192956 kB SwapFree: 4192956 kB Dirty: 0 kB Writeback: 0 kB AnonPages: 56116 kB Mapped: 30028 kB Shmem: 528 kB Slab: 75504 kB SReclaimable: 29204 kB SUnreclaim: 46300 kB KernelStack: 992 kB PageTables: 6800 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 5210908 kB Committed_AS: 180624 kB VmallocTotal: 34359738367 kB VmallocUsed: 157976 kB VmallocChunk: 34359574176 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 8192 kB DirectMap2M: 2088960 kB DirectMap1G: 0 kB [oracle@enmo ~]$

 

 

 

1.物理cpu数:主板上实际插入的cpu数量,可以数不重复的 physical id 有几个(physical id)

2.cpu核数:单块CPU上面能处理数据的芯片组的数量,如双核、四核等 (cpu cores)

3.逻辑cpu数:简单来说,它可使处理器中的1颗内核,如2颗内核那样在操作系统中发挥作用。

这样一来,操作系统可使用的执行资源扩大了一倍,大幅提高了系统的整体性能,此时逻辑cpu=物理CPU个数×每颗核数x2。

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

所以这算双核的。

 

CPU排查


ps aux|sort -nr -k3|head -10   

 


排查哪个进程占的CPU多。【这个比例应该是 单核的】

 

多核CPU的资源是否分配平衡。有没有某个核打满的情况。

mpstat -P ALL 1 

 

查看所有CPU的,情况。 【%dile即为空闲CPU比例】 【%iowait  即为%wa】




内存排查

free -m 看整体内存使用情况。【udp机器的tcpup比较占用内存】

ps aux|sort -nr -k4|head -10

 




磁盘 / IO 排查

iotop 【root 权限】

查看具体进程的IO。

iostat  -dm 1 

 

查看各个磁盘的IO情况。

  kB_read/s:每秒从设备(drive expressed)读取的数据量;
    kB_wrtn/s:每秒向设备(drive expressed)写入的数据量;
    kB_read:  读取的总数据量;
    kB_wrtn:  写入的总数量数据量;这些单位都为Kilobytes。

 

iostat -dx 1|awk '{print $1"\t"$10"\t"$11"\t"$12}'   

 

查看各个磁盘的await 和  util。



网络排查

iftop  看网络负载







 ###################################################