系统优化必装工具包
valgrind
telnet
lsof
iostat
sar
sysstat
util-linux
tcpdump.x86_64
查看cpu个数
[root@cobber-server ~]# cat /proc/cpuinfo |grep "processor" |wc -l2[root@cobber-server ~]#
vmstat
procs 列 :r 列: 表示运行和等待CPU时间片的进程数,这个值如果长期大于系统CPU核数,说明CPU不足,需要增加CPU,其中的CPU指的是逻辑CPUb 列表示在等待的资源的进程数目memory列:swpd:是内存切换到交换分区的量(单位为k),如果swpd值不为0,或者较大,只要si so 长期为0,不会影响系统性能free 表示当前空间的物理内存数量(单位为k)buff 表示buff chache 的内存数量,一般对块设备的读写才要缓冲cache 表示page cached 的内存数量,一般作为文件系统的cached,频繁访问的文件都会被放入cached中,当物理内存过小或不够使用时,其会释放swap列:si : 每秒由交换分区写入内存的大小so :每秒由内存写入交换分区的大小如果内存足够使用,则交换分区的写入和写出都为0,只有当这两个值长期大于0,则表示系统内存不够。IO 列:BI :表示从块设备读入数据的总量(即读磁盘)(块/s)BO:表示写入块设置的数据总量(即写磁盘)(块/s)system 列: 显示采集间隔内发生的中断数in 列表示在某一时间间隔内观察到每秒设备中断数cs 列表示每秒产生的上下文切换次数如果这两个值比较大,表示内核消耗CPU比较厉害CPU列: 显示了CPU的使用状态us: 用户进程消耗CPU的时间百分比,如果长期大于50%,则需要优化程序算法sy: 显示了系统(内核)进程消耗CPU的时间百分比,如果大于80%,则说明可能CPU资源不足id : 显示了CPU 处于空闲时间的百分比wa :显示了IO 等待所占用的CPU时间百分比,如果长期高于20%,则有问题扩展:参数选项 解释说明-a 显示活跃和非活跃期内存-f 显示从系统启动至今的fork 进程数量-m 显示slab信息-n 只在开始时显示一次个字段的名称-s 显示内存相关统计信息及多种系统活动数量(重点)-d 显示磁盘相关统计信息-p 显示指定磁盘分区统计信息-S 使用指定单位显示,有k,K,m,M,分别代表1000,1024,1000000,1048576字节,默认单位为k(重点)-t 统计信息带上时间戳
查看内存使用
[root@cobber-server ~]# vmstat 5 5 -S M -aprocs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----r b swpd free inact active si so bi bo in cs us sy id wa st1 0 0 1505 162 203 0 0 43 9 68 80 0 0 99 0 00 0 0 1505 162 203 0 0 0 0 27 36 0 0 100 0 00 0 0 1505 162 203 0 0 0 0 27 36 0 0 100 0 00 0 0 1505 162 203 0 0 0 0 112 120 0 0 100 0 00 0 0 1505 162 203 0 0 0 0 206 218 0 0 100 0 0[root@cobber-server ~]#
[root@cobber-server ~]# vmstat -d 1 -S Mdisk- ------------reads------------ ------------writes----------- -----IO------total merged sectors ms total merged sectors ms cur secsda 8732 11 577845 36226 1527 353 118422 83915 0 18sr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0sda 8732 11 577845 36226 1527 353 118422 83915 0 18sr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0sda 8732 11 577845 36226 1527 353 118422 83915 0 18sr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0sda 8732 11 577845 36226 1527 353 118422 83915 0 18sr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0sda 8732 11 577845 36226 1527 353 118422 83915 0 18sr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0sda 8732 11 577845 36226 1527 353 118422 83915 0 18sr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0sda 8732 11 577845 36226 1527 353 118422 83915 0 18sr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0sda 8732 11 577845 36226 1527 353 118422 83915 0 18disk- ------------reads------------ ------------writes----------- -----IO------total merged sectors ms total merged sectors ms cur secsr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0sda 8732 11 577845 36226 1527 353 118422 83915 0 18sr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0sda 8732 11 577845 36226 1527 353 118422 83915 0 18sr0 18 0 2056 334 0 0 0 0 0 0dm-0 8317 0 553798 35714 1870 0 114286 102962 0 18dm-1 88 0 4408 299 0 0 0 0 0 0
yum -y install sysstat
[root@cobber-server ~]# mpstatLinux 3.10.0-1127.19.1.el7.x86_64 (cobber-server) 10/08/2020 _x86_64_ (2 CPU)04:54:16 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle04:54:16 PM all 0.20 0.07 0.32 0.13 0.00 0.00 0.00 0.00 0.00 99.27[root@cobber-server ~]#
| CPU | 处理器编号,all表示统计信息计算为所有处理器之间的平均值 |
|---|---|
| %usr | 显示在用户级(应用程序)执行时发生的CPU利用率百分比。也叫用户态 |
| %nice | 显示以优先级较高的用户级别执行时发生的CPU利用率百分比。 |
| %sys | 显示在系统级(内核)执行时发生的CPU利用率百分比。也叫内核态 注意:这不包括维护硬件和软件的时间中断。 |
| %iowait | 显示系统具有未完成磁盘I / O请求的CPU或CPU空闲的时间百分比。 |
| %irq | 显示CPU或CPU用于服务硬件中断的时间百分比。 |
| %soft | 显示CPU或CPU用于服务软件中断的时间百分比。 |
| %steal | 显示在虚拟机管理程序服务另一个虚拟处理器时虚拟CPU或CPU无意中等待的时间百分比。 |
| %guest | 显示CPU或CPU运行虚拟处理器所花费的时间百分比。 |
| %gnice | 显示CPU或CPU运行来宾所花费的时间百分比。 |
| %idle | 显示CPU或CPU空闲且系统没有未完成的磁盘I / O请求的时间百分比。 |
[root@cobber-server ~]# mpstat -P ALLLinux 3.10.0-1127.19.1.el7.x86_64 (cobber-server) 10/08/2020 _x86_64_ (2 CPU)04:56:13 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle04:56:13 PM all 0.20 0.07 0.32 0.13 0.00 0.00 0.00 0.00 0.00 99.2804:56:13 PM 0 0.21 0.07 0.27 0.13 0.00 0.00 0.00 0.00 0.00 99.3204:56:13 PM 1 0.19 0.06 0.37 0.13 0.00 0.01 0.00 0.00 0.00 99.25[root@cobber-server ~]# mpstat 1 10Linux 3.10.0-1127.19.1.el7.x86_64 (cobber-server) 10/08/2020 _x86_64_ (2 CPU)04:56:25 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle04:56:26 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.0004:56:27 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.0004:56:28 PM all 0.00 0.00 0.50 0.00 0.00 0.00 0.00 0.00 0.00 99.5004:56:29 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.0004:56:30 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.0004:56:31 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.0004:56:32 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.0004:56:33 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.0004:56:34 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.0004:56:35 PM all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00Average: all 0.00 0.00 0.05 0.00 0.00 0.00 0.00 0.00 0.00 99.95[root@cobber-server ~]#
查看进程在哪个cpu上运行
[root@cobber-server ~]# ps axu | grep sshdroot 1108 0.0 0.2 112924 4324 ? Ss 15:34 0:00 /usr/sbin/sshd -Droot 1389 0.0 0.2 158928 5612 ? Ss 15:36 0:00 sshd: root@pts/0root 16117 0.0 0.0 112812 968 pts/0 S+ 17:00 0:00 grep --color=auto sshd[root@cobber-server ~]# taskset -cp 1108pid 1108's current affinity list: 0,1[root@cobber-server ~]#
