性能测试--系统资源配置篇

wget这个工具没有的话就需要安装

yum install wget -y

硬盘信息查看

df -lh              查看磁盘剩余空间
du -sh [目录名]      返回该目录的总大小,单位是G
du -sm [文件夹]      返回该文件夹(目录)总大小,单位是M
du -h [目录名]       查看指定文件夹下的所有文件的大小(包含该目录和子文件夹以及所有的文件,详细列出)
df -a   全部的文件系统的使用情况         df -i      显示inode信息
常用磁盘类型有机械盘:FC, SAS, SATA磁盘,固态硬盘有:SSD固态盘
lsscsi      可以看到Raid卡信息和所有虚拟磁盘以及光驱的信息

1、进入根目录:cd /
2、使用命令 : du -sh * 查看根目录下每个文件夹的大小

一、普通模式(该机硬盘没有做磁盘阵列)

1、fdisk -l 查看你的硬盘编号,如sda,sdb 等(查看分区大小情况)
2、smartctl --all /dev/sda
或者hdparm -i /dev/sda查看
说明:
Device Model:磁盘型号
user capacity:磁盘容量

二、磁盘阵列 RAID模式

1、fdisk -l 查看你的硬盘编号,如sda,sdb 等

法一:Dell服务器自带的包srvadmin命令查看

a. 启动srvadmin服务
/opt/dell/srvadmin/sbin/srvadmin-services.sh start
b.停用srvadmin服务
srvadmin-services.sh stop

显示系统摘要信息

omreport chassis info
说明:
Chassis Model #服务器型号
Express Service Code #快速服务代码(可在在官网查询服务器保修时间)
Chassis Service Tag #服务标签

查看物理磁盘信息

omreport storage pdisk controller=0
说明:
Vendor ID #供应商ID
Product ID #磁盘ID (磁盘型号)
Serial No. #序列号
Part Number #部件号
Revision #修订
Manufacture Day #磁盘制造日期(日)
Manufacture Week #磁盘制造日期(周)
Manufacture Year #磁盘制造日期(年份)
Capacity #磁盘容量
Used RAID Disk Space #已用 RAID 磁盘空间
Available RAID Disk Space #可用 RAID 磁盘空间
Sector Size #扇区大小
Hot Spare #是否热备份
Bus Protocol #总线协议
Media #介质
Negotiated Speed #协商速度
Capable Speed #支持速度

查看虚拟硬盘的状态(阵列信息)

omreport storage vdisk controller=0
说明:
Status #阵列状态
Layout #阵列卡类型
Size #阵列空间大小
Bus Protocol #总线协议
Media #介质

显示内存信息(内存插槽信息)

omreport chassis memory
说明:
Installed Capacity #安装容量
Maximum Capacity #最大容量
Total Installed Capacity Available to the OS #操作系统可用的总安装容量
Slots Available #可用的插槽
Slots Used #已用插槽
Connector Name #连接器上的内存设备
Type #内存类型(型号)
Size #单条内存大小

CPU处理器信息

omreport chassis processors
说明:
Processor Brand #处理器品牌 (型号)
Processor Version #处理器版本
Current Speed #当前速度
Core Count #核心数

CPU处理器详细信息

omreport chassis processors index=0
说明:
64-bit Support #64 位支持
HyperThreading(HT) #超线程 (HT)  (enable为yes表启用)
Virtualization Technology(VT) #虚拟化技术 (VT)
Demand Based Switching(DBS) #按需切换技术 (DBS)	

显示系统主要组件的温度

omreport chassis temps
说明:
Reading #当前温度
Minimum Warning Threshold #警告阈值最小温度
Maximum Warning Threshold #警告阈值最大温度
Minimum Failure Threshold #故障阈值最小温度
Maximum Failure Threshold #故障阈值最大温度

风扇探测器信息

omreport chassis fans
说明:
Reading #当前风扇转速(转/分)
Minimum Failure Threshold #故障阈值最小(转/分)

电源管理

omreport chassis pwrmonitoring
说明:
Reading #当前功耗
Warning Threshold #警告阈值功耗
Failure Threshold #故障阈值功耗
Power Headroom #电源净空
System Instantaneous Headroom #系统瞬时净空
System Peak Headroom #系统峰值净空
电源设备信息
omreport chassis pwrsupplies
说明:
Rated Input Wattage #额定输入瓦特
Maximum Output Wattage #最大输出瓦特

omreport storage adisk controller=0 # 查看磁盘陈列中的硬盘状态

omreport storage controller # 查看控制器(即RAID卡)的属性

omreport chassis # 显示所有主要组件的常规状态

需要先安装OMSA才能用omreport命令(戴尔系统默认已安装)

wget -q -O - http://linux.dell.com/repo/hardware/latest/bootstrap.cgi | bash
yum install -y net-snmp net-snmp-devel net-snmp-utils wget perl OpenIPMI
yum  -y install srvadmin-all                           #安装路径:/opt/dell/srvadmin/
/opt/dell/srvadmin/sbin/srvadmin-services.sh start     #启动OMSA
ln -s /opt/dell/srvadmin/bin/omreport /usr/local/bin/

法二:MegaCli命令查看

MegaCli安装(在线安装)

wget ftp://download2.boulder.ibm.com/ecc/sar/CMA/XSA/ibm_utl_sraidmr_megacli-8.00.48_linux_32-64.zip
chmod 744 ibm_utl_sraidmr_megacli-8.00.48_linux_32-64.zip
unzip ibm_utl_sraidmr_megacli-8.00.48_linux_32-64.zip        解压
cd linux/        切换到安装包目录
rpm -ivh Lib_Utils-1.00-09.noarch.rpm MegaCli-8.00.48-1.i386.rpm       使用rpm安装
rpm -ql MegaCli-8.00.48-1.i386       查看文件安装在哪
ln -s /opt/MegaRAID/MegaCli/MegaCli64 /bin/MegaCli64        做个软链接
ln -s /opt/MegaRAID/MegaCli/MegaCli64 /sbin/MegaCli64

若系统中存在srvadmin,则安装时会报“Lib_Utils和Dell服务器自带的包srvadmin冲突”

查看RAID控制器的数量

MegaCli64 -adpCount 

查看所有raid卡详细信息

MegaCli64 -AdpAllInfo -aALL
说明:Adapter #0  表示第一个raid卡
Product Name    表示raid卡的型号

查看硬盘信息

MegaCli64 -PDList -aALL
说明:
Adapter#0   -----raid卡控制器编号
EnclosureDevice ID: 252   -----外壳设备ID,也就是raid卡的ID号
SlotNumber: 4    ------槽号
Enclosureposition: 0   ------外壳位置
DeviceId: 49  -----设备ID
SequenceNumber: 2   -----序号
Media Error Count: 0  -----介质错误计数
Other Error Count: 0  -----其它错误计数
Predictive Failure Count: 0 -----预测故障计数
PD Type:SATA   -----磁盘接口类型
Raw Size:3.638 TB [0x1d1c0beb0 Sectors]   -----磁盘原始大小
NonCoerced Size: 3.637 TB [0x1d1b0beb0 Sectors]  -----磁盘标准大小
CoercedSize: 3.637 TB [0x1d1b00000 Sectors]  ------磁盘最大可用大小
Firmware state: Unconfigured(good),Spun down   -----固件状态:未配置(好的),未连接
ConnectedPort Number: 3(path0)   ------连接端口号
InquiryData:     Z1ZBBJWW     ST4000NM0033-9ZM170     SN06    -----硬盘的序列号、型号、固件版本
DriveTemperature : N/A   ----设备温度

需要特别关注这几个指标:Media Error / Other Error / Predictive Failure Count / LastPredictive Failure Event Seq Number

信息过滤:-E参数是使用扩展正则表达式来过滤       -i参数是不区分大小写来过滤

MegaCli64 -PDList -aALL|grep -Ei "(EnclosureDevice|Slot Number|PD Type|Raw Size|Inquiry Data|Firmware state|ForeignState)"          ----精过滤
说明:
Enclosure Device过滤出raid卡的ID;Slot Number过滤出磁盘的槽号;Raw Size过滤出磁盘的大小;Inquiry Data 过滤出磁盘的序列号、型号固件版本;Firmware state过滤出磁盘的状态;

测试硬盘读写速度

hdparm -Tt /dev/sda
说明:
  -t   评估硬盘的读取效率。
  -T  评估硬盘快取的读取效率。

CPU信息查看

显示cup的型号和线程情况(线程总数)

grep "model name" /proc/cpuinfo |awk -F ':' '{print $NF}'

查看CPU型号

grep name /proc/cpuinfo
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

查看物理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个数*核数=逻辑cpu个数(不支持超线程技术的情况下)
总核数 = 物理CPU个数 X 每颗物理CPU的核数 
总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
逻辑CPU数即线程数,超线程即每个核心不止一个线程,超线程数即每核拥有的线程数
若物理CPU个数是2,core个数是4,逻辑CPU数为16,则即为2个CPU四核16线程,每核为2线程

显示CPU总概况

lscpu
说明:
  Architecture: #架构 
  CPU(s): #逻辑cpu颗数 
  Thread(s) per core: #每个核心线程数 
  Core(s) per socket: #每个cpu插槽核数/每颗物理cpu的核数 
  socket(s): #cpu插槽数 (物理CPU的个数)
  Vendor ID: #cpu厂商ID 
  CPU family: #cpu系列 
  Model name: #CPU型号 
  Stepping: #步进 
  CPU MHz: #cpu主频 
  Virtualization: #cpu支持的虚拟化技术 
  L1d cache: #一级缓存(google了下,这具体表示表示cpu的L1数据缓存) 
  L1i cache: #一级缓存(具体为L1指令缓存) 
  L2 cache: #二级缓存

查看cpu详细信息

cat /proc/cpuinfo 
说明:
processor :系统中逻辑处理核的编号。对于单核处理器,则课认为是其CPU编号,对于多核处理器则可以是物理核、或者使用超线程技术虚拟的逻辑核
vendor_id :CPU制造商     
cpu family :CPU产品系列代号
model   :CPU属于其系列中的哪一代的代号
model name:CPU属于的名字及其编号、标称主频
stepping   :CPU属于制作更新版本
cpu MHz   :CPU的实际使用主频
cache size   :CPU二级缓存大小
physical id   :单个CPU的标号
siblings       :单个CPU逻辑物理核数
core id        :当前物理核在其所处CPU中的编号,这个编号不一定连续
cpu cores    :该逻辑核所处CPU的物理核数
apicid          :用来区分不同逻辑核的编号,系统中每个逻辑核的此编号必然不同,此编号不一定连续
fpu             :是否具有浮点运算单元(Floating Point Unit)
fpu_exception  :是否支持浮点计算异常
cpuid level   :执行cpuid指令前,eax寄存器中的值,根据不同的值cpuid指令会返回不同的内容
wp             :表明当前CPU是否在内核态支持对用户空间的写保护(Write Protection)
flags          :当前CPU支持的功能
bogomips   :在系统内核启动时粗略测算的CPU速度(Million Instructions Per Second)
clflush size  :每次刷新缓存的大小单位
cache_alignment :缓存地址对齐单位
address sizes     :可访问地址空间位数

内存信息查看

命令安装

yum install -y dmidecode

查看内存卡槽总数及内存条详细信息(含内存型号Type、频率Speed、大小Size)

dmidecode -t memory

查看内存的插槽数,已经使用多少插槽(有多少内存条).每条内存条是多大

dmidecode -t memory | grep Size

查看内存总大小和使用情况

free -m
说明:
total used free shared buffers cached
Mem: 1002 769 232 0 62 421
-/+ buffers/cache: 286 715
Swap: 1153 0 1153

第一部分Mem(物理内存)行:
total 内存总数: 1002M
used 已经使用的内存数: 769M
free 空闲的内存数: 232M
shared 当前已经废弃不用,总是0
buffers Buffer 缓冲缓存内存数: 62M
cached Page 页面缓存内存数:421M

关系:total(1002M) = used(769M) + free(232M)
第二部分(-/+ buffers/cache):
(-buffers/cache) used内存数:286M (指的第一部分Mem行中的used – buffers – cached)
(+buffers/cache) free内存数: 715M (指的第一部分Mem行中的free + buffers + cached)

可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数.
第三部分是指交换分区,虚拟内存,用于扩充物理内存不足而用来存储临时数据存在的
总共1153M,已用0,空闲1153M

经验公式:

应用程序可用内存/系统物理内存>70%,表示系统内存资源非常充足,不影响系统性能;
应用程序可用内存/系统物理内存<20%,表示系统内存资源紧缺,需要增加系统内存;
20%<应用程序可用内存/系统物理内存<70%,表示系统内存资源基本能满足应用需求,暂时不影响系统性能

对操作系统来讲是Mem的参数.buffers/cached 都是属于被使用,所以它认为free只有232.
对应用程序来讲是(-/+ buffers/cach).buffers/cached 是等同可用的,因为buffer/cached是为了提高程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用

Buffer Cache和Page Cache.前者针对磁盘块的读写,后者针对文件inode的读写.这些Cache能有效缩短了 I/O系统调用(比如read,write,getdents)的时间.也就是说:buffers是用来存储接受的数据,而cached是用来保存我们处理完毕的数据

只要不用swap的交换空间,就不用担心自己的内存太少.如果常常swap用很多,可能你就要考虑加物理内存了.这也是linux看内存是否够用的标准

$ free -g   是以G为单位计算内存
$ free -hs 3    每3秒统计一次内存利用率并且适于人类可读

查看内存信息

cat /proc/meminfo

查看当前操作系统内核信息

uname -a

查看主板的序列号

dmidecode |grep -i 'serial number' |grep CN

查看内核版本

cat /proc/version

查看网卡型号

lspci | grep Ethernet

查看网卡信息

dmesg | grep -i eth

查看服务器品牌、型号、序列号

dmidecode | grep "System Information" -A9 | egrep "Manufacturer|Product|Serial"

查看系统启动信息

dmesg |grep sda

查看各个设备中断请求(IRQ)

cat /proc/interrupts

监测工具

我们只需要简单的工具就可以对 Linux 的性能进行监测,以下是 VPSee 常用的工具:
工具    简单介绍
top    查看进程活动状态以及一些系统状况
vmstat    查看系统状态、硬件和系统信息等
iostat    查看CPU 负载,硬盘状况
sar    综合工具,查看系统状况
mpstat    查看多处理器状况
netstat    查看网络状况
iptraf    实时网络状况监测
tcpdump    抓取网络数据包,详细分析
tcptrace    数据包分析工具
netperf    网络带宽工具
dstat    综合工具,综合了 vmstat, iostat, ifstat, netstat 等多个信息
posted @ 2019-12-31 10:24  军子~  阅读(1292)  评论(0编辑  收藏  举报