欢迎光临
我们一直在努力
广告
广告
广告
广告
广告
广告
广告
广告
广告
广告

云服务器性能问题解决指南:使用基准测试诊断并解决虚拟化性能问题 (云服务器性能测试)

在虚拟化环境中,云服务器的性能问题可能是一个常见的烦恼。这些问题可能导致各种影响,从应用程序响应缓慢到停机,从而对业务运营产生重大影响。为了有效地解决这些问题,至关重要的是采用一种系统化的方法来识别和解决性能瓶颈。

使用基准测试诊断性能问题

基准测试是识别和诊断云服务器性能问题的宝贵工具。通过使用基准测试工具,您可以衡量服务器的硬件和软件组件的性能,并将其与已知标准或其他系统进行比较。

执行基准测试时,应考虑以下最佳实践:

  • 使用代表生产环境的工作负载的基准测试脚本。
  • 在不同的时间段运行基准测试,以捕获性能随时间推移的变化。
  • 比较基准测试结果以确定性能瓶颈。

常见的性能瓶颈

云服务器性能问题可能由各种因素引起,包括:

  • CPU利用率过高:当虚拟机过度使用 CPU 时,会发生这种情况,从而导致应用程序响应缓慢。
  • 内存不足:当虚拟机没有足够的内存来满足工作负载需求时,会发生这种情况,从而导致分页和其他性能问题。
  • 存储 I/O 延迟:当虚拟机无法及时访问存储设备时,会发生这种情况,从而导致应用程序响应缓慢。
  • 网络带宽不足:当虚拟机没有足够的网络带宽来处理工作负载需求时,会发生这种情况,从而导致数据传输缓慢。

解决性能问题

一旦识别

  • 增加 CPU 资源:将虚拟机的 CPU 配额增加到更高的级别。
  • 添加更多内存:增加虚拟机的内存容量以满足工作负载需求。
  • 优化存储 I/O:使用固态硬盘 (SSD) 或启用 RAID 以提高存储性能。
  • 升级网络连接:将虚拟机连接到更高的网络带宽以提高数据传输速度。

持续监控和优化

解决性能问题后,持续监控服务器性能并根据需要进行优化非常重要。这将有助于防止未来出现性能问题,并确保云服务器始终以最佳性能运行。

优化策略可能包括:

  • 定期运行基准测试以监控性能。
  • 根据工作负载调整虚拟机的资源配置。
  • 实施自动扩展机制以在负载高峰时自动增加资源。

结论

通过使用基准测试诊断性能问题并采取适当的措施来解决问题,您可以有效地优化云服务器的性能。通过遵循这些最佳实践,您可以确保应用程序始终以最佳性能运行,并防止性能问题对业务运营产生负面影响。


cpu性能测试工具

cpu性能测试工具(CPU性能测试工具)方法论CPU分析的一般步骤:性能监控指标+工具:通过已有指标或者现成的工具进行初步分析和判断使用USE方法进行进一步分析:U:CPU使用率,S:满载率:E:错误测量分析微基准测试静态性能优化本文侧重对工具的使用介绍。

基础分析工具基础分析主要包含以下工具的使用:uptime、vmstat、mpstat、sar、ps、top、pidstat,time/ptime1. uptime通常uptime可以用来查看系统负载信息$ uptime 19:10:52 up 1135 电脑days,7:37,1 user,load average: 87.87, 77.49, 66.99最后三列分别是1分钟、5分钟和15分钟系统的平均负载。

如果数字是依次减小的,说明现在系统负载在升高,如果是依次增大的,则说明系统负载在降低。

在Linux系统中load值的计算包含系统中正在运行的进行(RUNNING)、可以运行的进程(RUNABLE)和处于不可中断的进程。

2. vmstat虚拟内存分析工具第一列输出的是可运行进程数,最后几列输出的是cpu相关指标,可以用来分析cpu相关的问题,该工具可显示CPU正式使用率。

$ vmstat 1procs ———–memory———- —swap– —–io—- -system– ——cpu—–rb swpd free buffcache si sobibo in cs us sy id wa s 618 62 11 55 18 240 0 64 13 电脑 120 0 56 14 140 51 16 24 110 56 12 509 3370跟CPU相关的列分析:r:对于Linux系统该字段表示所有的Runnable+Running进程,不包含处于D状态的进程,如下图所示us:用户态(用户)CPU使用率sy:内核态(系统)CPU使用率id:CPU空闲率wa:CPU等待I/O使用率,当进程阻塞在磁盘IO上时可以用来衡量CPU idlest:在虚拟化环境显示被其它租户占用的CPU使用率3. mpstat多CPU统计工具,可以统计每个CPU的使用情况~# mpstat -P ALL 1Linux 5.4.0-99-generic () 02/26/22 _x86_64_(8 CPU)15:11:56 CPU%usr %nice%sys %iowait%irq %soft%steal%guest%gnice %idle15:11:57 all0.000.000.000.000.000.000.000.000..0015:11:57 00.000.000.000.000.000.000.000.000..0015:11:57 10.000.000.000.000.000.000.000.000..0015:11:57 20.000.000.000.000.000.000.000.000..0015:11:57 30.000.000.000.000.000.000.000.000..0015:11:57 40.000.000.000.000.000.000.000.000..0015:11:57 50.000.000.000.000.000.000.000.000..0015:11:57 60.000.000.000.000.000.000.000.000..0015:11:57 70.000.000.000.000.000.000.000.000..00命令输出列说明:CPU:逻辑CPU序号,或者是all%usr:用户态(用户)CPU使用率,不包含%nice%nice:带有nice进程的用户态CPU使用率%sys:内核态(系统)CPU使用率%iowait:I/O wait%irq:硬中断CPU使用率%soft:软中断CPU使用率%steal:虚拟化环境其它租户CPU使用率%guest:客户端虚拟机使用使用率%gnice:客户端虚拟机带有nice标记的进程CPU使用率%idle:CPU剩余率需要关注的列是 %usr,%sys和%idle,注意查看每个CPU的使用率,看是否存在CPU使用不均衡或者热点。

mpstat默认只显示CPU的整体使用情况,如下图所示:~# mpstat 1Linux 5.4.0-99-generic () 02/26/22 _x86_64_(8 CPU)15:14:04 CPU%usr %nice%sys %iowait%irq %soft%steal%guest%gnice %idle15:14:05 all0.000.000.120.000.000.000.000.000.00 99.8815:14:06 all0.000.000.000.000.000.000.000.000..0015:14:07 all0.000.000.000.000.000.000.000.000..004. sarsar工具可以用来观测多项系统指标,针对CPU的参数有:-P ALL:效果与mpstat -P ALL一样,只是输出的列稍微少一些-u:与mpstat默认输出结果一样,系统平均指标-q:输出run-queue大小,RUNNABLE+RUNNING与vmstat的r列内容一致初次使用sar工具可能会报错,如果没有sar工具则需要安装,安装后可能还会遇到以下错误~# sar -P ALLCannot open /var/log/sysstat/sa26: No such file or directoryPlease check if data collecting is enabled解决方法:~# sar-o 2 3~# sar -P ALL 1 -u -qLinux 5.4.0-99-generic () 02/26/22 _x86_64_(8 CPU)15:27:19CPU %user %nice %system %iowait%steal %idle15:27:20all0.000.000.000.000..0015:27:2000.000.000.000.000..0015:27:2010.000.000.000.000..0015:27:2020.000.000.000.000..0015:27:2030.000.000.000.000..0015:27:2040.000.000.000.000..0015:27:2050.000.000.000.000..0015:27:2060.000.000.000.000..0015:27:2070.000.000.000.000..005. psps方法是非常常用的工具,可以列出所有进程的相关信息,命令格式有两种:BSD格式,参数不带-字符SVR4测试,参数带-字符BSD格式命令输出如下所示:~# ps auxUSER PID %CPU %MEMVSZ RSS TTYSTAT START TIME COMMANDroot 10.00.1 ?Ss Feb15 0:27 /sbin/initroot 20.00.00 0 ?SFeb15 0:00 [kthreadd]root 30.00.00 0 ?I< Feb15 0:00 [rcu_gp]root 40.00.00 0 ?I< Feb15 0:00 [rcu_par_gp]root 60.00.00 0 ?I< Feb15 0:00 [kworker/0:0H-kblockd]root 90.00.00 0 ?I< Feb15 0:00 [mm_percpu_wq]root100.00.00 0 ?SFeb15 0:00 [ksoftirqd/0]root110.00.00 0 ?IFeb15 8:49 [rcu_sched]SVR4格式命令输出如下所示:~# ps -efUIDPIDPPIDC STIME TTYTIME CMDroot 1 00 Feb15 ?00:00:27 /sbin/initroot 2 00 Feb15 ?00:00:00 [kthreadd]root 3 20 Feb15 ?00:00:00 [rcu_gp]root 4 20 Feb15 ?00:00:00 [rcu_par_gp]root 6 20 Feb15 ?00:00:00 [kworker/0:0H-kblockd]root 9 20 Feb15 ?00:00:00 [mm_percpu_wq]root10 20 Feb15 ?00:00:00 [ksoftirqd/0]root11 20 Feb15 ?00:08:49 [rcu_sched]root12 20 Feb15 ?00:00:06 [migration/0]从命令的输出结果上面,看起来BSD格式的输出信息更全一些,但是ps命令可以通过-o参数定制输出列。

针对CPU的使用情况,我们按照BSD格式的输出来说,需要关注的是%CPU和TIME列:%CPU:进程从启动以来的平均CPU使用率TIME:进程启动以来总消耗的CPU时间用户态+内核态(usr+sys)6. toptop命令可以以指定的时间间隔实时展示进程的CPU使用情况。

~# toptop – 23:46:46 up 1135 days, 12:13,1 user,load average: 46.75, 60.82, 66.77Tasks: 1660 total, 2 running, 1657 sleeping, 0 stopped, 1 zombie%Cpu(s): 28.5 us,2.3 sy,0.0 ni, 63.9 id,4.7 wa,0.0 hi,0.5 si,0.0 stKiB Mem : +total, free, used, +buff/cacheKiB Swap:0 total,0 free,0 used. +avail MemPID USERPRNIVIRTRESSHR S%CPU %MEM TIME+ COMMAND yarn20 0 3.459g S 428.91.8 7:49.67 java yarn20 0 2.257g S 412.51.2 2:12.97 java6608 yarn20 0 3.615g S 404.91.917:39.61 java8852 yarn20 0 1.796g S 104.91.0 4:58.38 java7359 hdfs20 0 5.152g 3900 S90.12.7 :32 java yarn20 0 10.562g 7.527g S66.14.0 1:09.90 java yarn20 0 1.766g S59.90.9 3:20.35 java8030 yarn20 0 1.656g S52.00.9 5:33.91 java yarn20 0 14.877g 0.010t S33.25.:55 javatop命令的输出结果中包含了系统整体CPU使用情况(第3行),和每个进程的CPU使用情况。

对于每个进程CPU使用情况我们需要关注的是%CPU和TIME列:%CPU:两次屏幕刷新期间进程的CPU使用率TIME:进程启动以来的总CPU使用时间,单位为秒,比如上面输出的7359号进程已经消耗的CPU时间是分32秒虽然top是一个非常基础的分析工具,但是它对性能的损耗不可小觑,在负载重的机器上表现尤为明显,需要谨慎使用。

top对系统性能有较大的影响主要是因为要读取/proc下面所有进程的信息。

因为top是对/proc做快照,所以很容易漏掉执行时间比较短的进程。

7. pidstatpidstat可以用来分析单个进程或线程的CPU使用情况,默认情况下会滚动输出。

# pidstat 1Linux 7.x86_64 () 02/27/2022 _x86_64_(56 CPU)12:00:34 AM UID PID%usr %system%guest%CPU CPUCommand12:00:35 AM.004.590..0051java12:00:35 AM.003.670..0038java12:00:35 AM.002.750..0045java12:00:35 AM1107 .920.000.000.9238java12:00:35 AM.00 26.610..0040java12:00:35 AM.00 17.430..0040java12:00:35 AM1107 27.522.750.00 30.2829java12:00:35 AM1107 ..000..0045javaCPU分析常用参数:-p ALL:显示所有进程或线程CPU使用情况-t:显示线程粒度统计8. timetime有两个版本,一个是shell内建的,另外一个是/usr/bin/下的,这两个有不同的使用效果shell内建time命令:两次对同一个文件求MD5值# time md5sum ambari-agent-2.6.2.0-0.x86_06e883c97bb0cc71a763fa2a99eambari-agent-2.6.2.0-0.x86_0m0.417suser0m0.175ssys0m0.056s# time md5sum ambari-agent-2.6.2.0-0.x86_06e883c97bb0cc71a763fa2a99eambari-agent-2.6.2.0-0.x86_0m0.242suser0m0.177ssys0m0.027s从结果上可以看出第一次使用了0.417秒,用户态使用了0.175秒,内核态使用了0.056秒,其中有0.186(0.417-0.175-0.056)秒的差距,猜测可能是花等磁盘io上了,第二次计算后时间差值缩小到了0.038秒,估计是这个文件已经通过文件系统缓存到了内存中。

/usr/bin/time使用# /usr/bin/time -v md5sum ambari-agent-2.6.2.0-0.x86_06e883c97bb0cc71a763fa2a99eambari-agent-2.6.2.0-0.x86_ being timed: md5sum ambari-agent-2.6.2.0-0.x86_ time (seconds): 0.16System time (seconds): 0.03Percent of CPU this job got: 98%Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.2电脑 0Average shared text size (kbytes): 0Average unshared data size (kbytes): 0Average stack size (kbytes): 0Average total size (kbytes): 0Maximum resident set size (kbytes): 724Average resident set size (kbytes): 0Major (requiring I/O) page faults: 0Minor (reclaiming a frame) page faults: 227Voluntary context switches: 0Involuntary context switches: 22Swaps: 0File system inputs: 0File system outputs: 0Socket messages sent: 0Socket messages received: 0Signals delivered: 0Page size (bytes): 4096Exit status: 0电脑

服务器的知识

服务器是高性能计算机,用于网络中提供各种服务,存储和处理数据信息。

它依据体系架构分为非x86服务器和x86服务器。

非x86服务器包括大型机、小型机和UNIX服务器,使用RISC或EPIC架构,通常采用UNIX和其他专用操作系统。

x86服务器则采用x86架构,常用操作系统如Windows和Linux等。

服务器含有多种关键组件,例如主板、CPU、内存、硬盘和网卡,它们协同工作,确保服务器的高效运行。

除了这些硬件外,服务器还应用了如RAID、网络协议和虚拟化技术等技术。

服务器的架构对其性能和可靠性有着决定性影响。

常见的架构有单机架构、集群架构和分布式架构。

单机架构适用于简单应用场景,提供稳定性能;集群架构则适用于高可用性需求,可以实现负载均衡;分布式架构适合大规模数据处理和扩展性需求。

为了准确评估服务器性能和稳定性,基准测试变得至关重要。

通过模拟实际工作负载,基准测试能够全面测试服务器性能并进行评估。

服务器还须通过ISO9001和ISO等认证标准,以确保其质量和安全性。

ISO9001强调持续改进和质量管理体系,ISO则关注信息安全管理体系,通过这些认证有助于保障服务器的可靠性和安全性。

了解服务器知识对于IT领域的专业人士至关重要。

如果你对特定服务器技术或架构有疑问,欢迎提出更具体的问题,我可以为你提供详细解答。

lenovo服务器联想ThinkSystemSN850服务器评测

今年7月,随着英特尔至强可扩展处理器家族的发布,联想在第一时间发布了10款全新的ThinkSystem服务器产品,产品类型覆盖塔式、机架、刀片、高密度服务器等,能够为不同需求的客户提供丰富的产品选择。

ThinkSystem建立的全球基准逾30项,可在各个高科技领域通过便捷集成,可提供I/O可扩展性、能高效部署解决方案及重新配置基础设施,充分满足客户快速服务的交付需求,从容应对各类工作负载。

此外,其海量存储拥有媲美公有云的灵活性,同时可运行由传统架构迁移而来的应用,最大限度节省客户预算,降低企业运营成本,进一步增加客户业务收入,通过自身实力为客户业务提供金牌保证。

本次送测的是联想ThinkSystem SN850,作为ThinkSystem系列产品家族中化繁为简的代表,SN850兼具高度灵活性与庞大容量,能够适应最为严苛的内存密集型工作负载,为客户提供无与伦比的性能保证,充分满足了客户对基础设施架构日益提升的各种需求,是理想的服务器首选。

下面为大家详细解读。

联想ThinkSystem SN850外形介绍▲ 联想ThinkSystem SN850服务器(正面)在外形规格上,SN850宽度435毫米,高度55毫米,深度493毫米,最高配置12.3千克。

从服务器正面可以看到,SN850前面板上配有USB端口、状态指示灯、启用USB端口管理的按钮以及控制台分支电缆端口。

分支电缆提供了连接本地控制台的串行、视频和USB端口。

当然,分支电缆上的 USB 端口支持键盘和鼠标,不支持存储设备。

SN850 服务器具有四个可从刀片服务器正面打开的 2.5 英寸热插拔驱动器托架。

另外,SN850 采用六角形通风孔,与圆形通风孔相比,六角形通风孔可以排列得更加紧密,便于气流更高效地通过系统。

▲ 联想ThinkSystem SN850服务器(背面)由于刀片服务器由机箱中安装的电源供电,SN850不单独提供有关电源的服务器选件。

SN850 的系统板上内置了一个4端口10Gb英特尔适配器。

每种使用嵌入式英特尔适配器的SN850机型还在I/O连接器3中安装了架构连接器,用于连接 Flex system 机箱中面板。

而单个Flex System企业级机箱最多可容纳7个SN850刀片和4个集成式交换机,与2U4处理器机架式服务器和1U交换机相比,密度要高出80%。

联想ThinkSystem SN850服务器内部介绍为了方便用户对内部的查看,SN850服务器采用免工具拆卸设计,在机箱顶盖右侧有一个锁扣,通过锁扣即可快速打开机器。

▲ 联想ThinkSystem SN850服务器内部结构从内部结构上可以看出,SN850显著提高了内存容量和带宽,支持更多处理器内核,速度更快,内存容量更大。

因此,SN850的四CPU、48 DIMM插槽设计可提供足够强大的功能,处理要求最严苛的内存密集型工作负载。

例如,内存中数据库、批处理和实时分析、虚拟化、大型传统数据库、分布式计算或在单一刀片上整个多台前代服务器。

此外,SN850还可兼容用户当前的Flex System企业级机箱,保护用户在机箱基础架构上的投资。

▲ 散热器下面就是英特尔至强可扩展处理器很遗憾小编没有找到拆解CPU散热器的工具,没能一睹Intel可扩展处理的风采。

好在英特尔至强可扩展处理器的特点已经不用赘述,14纳米加工技术,6个DDR4内存通道,1MB二级缓存等特点,赋予了SN850更强悍的新能。

并且受益于英特尔睿频加速技术,提供智能、适应性的系统性能, 允许CPU内核在峰值负载期间以最高速度运行,可暂时超出处理器 TDP。

另外,采用的英特尔超线程技术可在每个处理器内核中支持同步多线程,从而提高多线程应用的性能。

SN850最多支持四个处理器,可最大限度地提高多线程应用的并行执行性能,并且每个处理器具有6条内存通道,每条通道最多安装2个DIMM,运行速度高达2666MHz,进而提高生产效率。

在内存选件上,SN850 使用联想 TruDDR4 内存,其运行速度高达 2666 MHz。

TruDDR4 内存采用一级 DRAM 供应商提供的最高品质组件,并且我们仅选用满足联想规定的严格要求的内 存。

它在每一款 ThinkSystem 服务器上进行了兼容性测试和微调,可最大限度地提高性能和可靠性 TruDDR4 内存以编程方式在 DIMM 中嵌入了一个独特的签名,以便 ThinkSystem 服务器验证所安装的内 存是否合格并受联想支持。

从维修与支持的角度看,联想 TruDDR4 内存会自动享受系统保修,并且联想在全球范围内提供维修与支持。

双M.2启动适配器和128GB M.2驱动器SN850采用双 M.2 启动适配器的特性如下:PCIe 2.0 x2 主机接口(连接到 PCH)基于 Marvell 88SE9230 6 Gbps SATA 控制器支持两个 6 Gbps SATA M.2 驱动器(不支持只安装一个驱动器)支持 3 种物理大小各不相同的 M.2 驱动器:42毫米、60毫米和80毫米RAID 功能(由 M.2 适配器提供)默认支持 RAID 1;也支持 RAID 0和JBOD 1通过基于 UEFI 的设置启用/禁用 RAID 模式以及查看库存使用联想固件工具更新适配器和驱动器固件通过 I2C 界面进行管理前面已经说过,每个SN850具有四个可从刀片服务器正面打开的 2.5 英寸热插拔驱动器托架。

根据服务器配置和安装的背板,这些托架连接到集成式 6 Gbps SATA 控制器、Lenovo RAID 控制器(可选),或直接连接 到 PCIe 通道(NVMe 驱动器)。

▲ 联想ThinkSystem RAID此外,使用独立适配器时,SN850最多支持两个M.2外形的SSD驱动器,默认情况下会将这些驱动器配置为RAID-1镜像对,以帮助实现冗余。

每台SN850 最高具有四个用于连接 I/O 适配器卡的 I/O 扩展连接器。

I/O 扩展连接器采用高密度216针PCIe连接,并且所有I/O适配器均采用相同的外形。

另外,安装两个适配器意味着启用适配器的所有端口,这样做可以提高性能和网络可用性。

通过安装 I/O 适配器卡,服务器可以与机箱中的 I/O 模块建立连接。

每个插槽都有一个 PCI Express 3.0 x16 主机接口,所有插槽支持相同外形的适配器。

如何做到化繁为简?自2012年始,Flex System企业级机箱一直致力于简化客户基础架构。

Flex System通过大幅降低能源和地板/机架空间的成本并简化管理,来节省时间和财力,降低基础架构的复杂性会让其变成功能强大的工具,可适应未来需要,而不会造成资源流失。

当借助Lenovo XClarity Administrator软件为面向未来的数据中心提供简化、灵活的快速部署和管理时,或将四台集成式网络交换机,提高吞吐量并减少线缆数量时,或使用分区自适应散热或节能组件时,均可为机箱设计提高效率。

另外,基于UEFI的新型 Lenovo XClarity Provisioning Manager可在启动时通过F1键访问,提供了系统库存信息、图形化 UEFI 设置、平台更新功能、RAID 设置向导、操作系统安装功能以及诊断功能。

同时,集成式可信平台模块(TPM)2.0 支持高级加密功能,如数字签名和远程认证。

并支持安全启动(Secure Boot)模式,确保仅使用具有数字签名的操作系统。

SN850在简化基础架构的能力上还远不止这些,剩下的就留给你亲身体验更多的惊讶之处。

联想ThinkSystem SN850服务器总结联想ThinkSystem SN850作为一款高性能服务器, 拥有更多处理器内核,更快更大的存储容量以及增强的RAS和安全功能,其4CPU、48个DIMM插槽设计可适应要求最为严苛的内存密集型工作负载,如内存数据库、批处理和实时分析、虚拟化、大型传统数据库、分散式计算,或将多个之前版本的服务器整合到一个刀片上。

不夸张的说,联想ThinkSystem SN850可以从容适应“面向未来的”数据中心不断发展的需求,无论是大型数据分析应用、高性能计算,还是超大规模应用或人工智能,都能将帮助客户解决最复杂的挑战,特别是大型数据库、虚拟化、企业应用、HPC 和云应用的应用场景。

赞(0)
未经允许不得转载:优乐评测网 » 云服务器性能问题解决指南:使用基准测试诊断并解决虚拟化性能问题 (云服务器性能测试)

优乐评测网 找服务器 更专业 更方便 更快捷!

专注IDC行业资源共享发布,给大家带来方便快捷的资源查找平台!

联系我们