H3C CAS主机性能缓慢问题排查

H3C CAS主机性能缓慢问题排查

2023年7月3日发(作者:)

H3C CAS主机性能缓慢问题排查一、H3C CAS虚拟机暂停问题排查

在虚拟化环境中出现“性能”问题时,一般需要从“应用”、“虚拟机”和“虚拟化平台”三个方面来分析。“应用”方面有可能是用户编写的代码问题导致程序运行缓慢,也有可能是“中间件”的配置问题导致WEB页面响应时间过长,还有可能是数据库的查询版权所有:杭州华三通信技术有限公司脚本未优化导致查询超时,因此,“应用”方面导致的性能缓慢问题主要由用户来主导定位。而“虚拟机”和“虚拟化平台”方面主要是由于系统资源不足导致的。

系统资源主要包括了CPU、内存以及磁盘,它们是系统稳定运行的基础。过度使用这些资源的任何一种都会使系统陷入困境,严重的话还会出现系统崩溃的风险。

图1:top命令输出信息

在这三个系统资源中最核心的是CPU资源,它是主机的大脑。CPU资源的使用情况可以通过top工具来查看。在主机的后台命令行输入top命令后,马上可以看到大量的系统信息。第三行显示了CPU资源运行状况的信息。

最能体现主机当前性能的指标是“us”、“sy”、“id”和“wa”。

图2:CPU指标 1)“us”是用户CPU时间:表示用户进程所占CPU时间的百分比;

2)“sy”是系统CPU时间:表示运行内核所占CPU时间的百分比;

3)“id”是CPU的空闲时间百分比;

4)“wa”是I/O等待时间:表示CPU时间用在等待执行I/O操作所占的百分比。

当CPU资源、内存资源或者磁盘资源不足导致性能缓慢时都会体现到CPU的指标项中。

本文对此类问题的排查方法给出详细的说明,供现场工程师参考1、CPU资源是否异常

在top命令输出的信息中会看到较高的用户CPU时间百分比,如下面显示的用户CPU时间百分比已经高达99.6%,说明CPU资源被用户进程大量占用。

版权所有:杭州华三通信技术有限公司图3:CPU异常信息2、检查CPU资源

我们需要分析是哪些进程占用了这么多的CPU资源,查看方法也比较简单,因为top命令的输出信息中还包括了进程占用CPU资源信息统计,并且默认是以CPU来进行排序的,因此只需要查看排在前面的是哪些进程,就可以确定是哪些进程占用了大量的CPU资源。

如图所示,“kvm进程”占用了199%,两个“sfewfesfs进程”分别占用了100%和99%。在这里大家可能会有一个疑问,为什么进程占CPU的百分比怎么会超过100%呢?原因是CPU百分比是以单个CPU来计算的,如果一个进程占用2个CPU,其中一个CPU被该进程占用了100%,另一个CPU被该进程占用了50%,那么在top命令输出信息该进程就会显示占用CPU为100% 50%=150%。

图4:CPU异常信息

当然我们还需要判断这些占用大量CPU资源的进程是否属于正常的进程。如果是正常进程,则说明CPU资源不足,此时需要将虚拟机迁移到其他主机,或者扩展虚拟机的CPU资源,比如虚拟机进程“kvm”。 如果是异常进程则需要通过命令“kill -9

进程号”强制关闭,比如病毒程序;那么如何判断一个进程是异常的病毒进程呢?推荐两种方法,一种是求教无所不知的度娘,该例子中的随机的字符的进程“sfewfesfs”,一般正常进程不会如此命名,怀疑有可能是病毒程序,那么可以请度娘来验明正身。度娘一出手,立马发现是病毒程序,同时可以根据度娘提供的方法进行杀毒。

版权所有:杭州华三通信技术有限公司图5:网上病毒信息 一种是根据《H3C CAS案例集》中收集的中毒案例进行排查。

图6:CAS案例集3、内存资源是否异常

当系统的内存耗尽,开始大量使用交换空间时,由于磁盘的速度远远低于内存的速度,因此会导致系统运行缓慢。此时也可以通过top命令查看内存使用情况。

版权所有:杭州华三通信技术有限公司图7:内存信息

其中的第四行和第五行即显示了内存和交换分区的占用信息,第四行信息的各个字段分别表示共有多少内存可用、占用了多少内存、空闲多少内存以及缓存了多少内存。第五行信息的各个字段分别表示共有多少交换分区可用,占用了多少交换分区、空闲多少交换分区以及文件缓存占用了多少内存。

我们也可以使用free命令查看内存的使用情况,比如在该信息中空闲内存仅为952M,并且已有5304M的数据转移到了交换分区,从而导致系统运行缓慢。

图8:free显示内存信息

这里需要说明一下空闲内存的计算方法,它不是看“Mem行”的空闲内存,而应该看“-/

buffers/cache”行的空间内存,即在该显示信息中空闲内存不是880M,而是952M。4、检查内存资源

当发现内存资源不足时需要确定是哪些进程大量占用了内存资源,查看方法也同样需要使用top命令输出的进程信息。因为默认是以CPU来进行排序的,所以需要按“M”键,将进程以内存占用百分比进行排序。如本例子所示,两个“kvm进程”分别占用了36.9%和32.6%。

图9:内存信息

同样我们需要检查这些进程是否属于异常的病毒进程,那么如何判断一个进程是异常的病毒进程呢?推荐两种方法,一种是求教无所不知的度娘,该例子中的随机的字符的进程“sfewfesfs”,一般正常进程不会如此命名,怀疑有可能是病毒程序,那么版权所有:杭州华三通信技术有限公司可以请度娘来验明正身。度娘一出手,立马发现是病毒程序,同时可以根据度娘提供的方法进行杀毒:

图10:网上病毒信息 一种是根据《H3C CAS案例集》中收集的中毒案例进行排查。

图11:CAS案例集

该例子的中“kvm进程”属于正常的虚拟机进程,此时可以对虚拟机所在的CVK主机扩容物理内存资源,或者将虚拟机迁移到其他具备空闲内存资源的CVK主机。5、磁版权所有:杭州华三通信技术有限公司盘资源是否异常

在top命令输出CPU信息中将会有较大的I/O等待时间百分比,比如该例子中I/O等待时间百分比达到了58%。

图12:磁盘等待信息 然后可以使用“iostat -m 1

10”iostat命令查看哪个磁盘设备有大量的读写操作,其中参数“-m”表示磁盘读写速度单位为MB,参数“1”表示数据显示每隔1秒刷新一次,可以根据现场实际需要调整,参数“10”表示数据显示的总次数。比如如下例子中sda设备有大量的读操作,达到了288M/s。

图13:iostat命令输出信息6、检查磁盘资源

我们需要确定是哪些进程占用了大量的磁盘资源,可以通过iotop命令进行查看,比如如下iotop命令的输出信息中,三个“kvm进程”分别占用了14.32M/s、64.43M/s和33.74M/s的读操作,而第三个“kvm进程”还占用99.08M/s的写操作。

图13:iotop命令输出信息

同样我们也还需要判断这些占用大量磁盘资源的进程是否属于正常的进程,如果是异常进程则需要杀掉。当然该例子中的“kvm进程”属于正常虚拟机进程,此时可以将部分虚拟机的镜像文件迁移到其他正常的存储池以减轻磁盘的IO压力。10、收集信息

如果以上步骤检查完之后还是不能解决问题,可以收集以下信息联系H3C技术支持热线处理。 (1)记录您所使用的H3C CAS版本 (2)记录具体的故障现象、故障时间

(3)收集主机或虚拟机的性能监控截图信息(4)收集故障诊断信息,收集方法为:登录CAS的虚拟化管理平台,单击导航树中【系统管理->操作日志->日志文件收集】菜单项,进入日志文件收集页面,选择对应的CVK主机。单击【收集日志文件】按钮,下载系统生成的日志。请拨打热线400-810-0504版权所有:杭州华三通信技术有限公司

发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1688330074a121229.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信