TECS OpenStack资源池虚机写磁盘时延高告警的问题处理

描述

故障现象

某运营商TECS资源池,在当前告警中显示“虚机写磁盘时延高告警”,如下图所示。告警统计总体平均10分钟左右自动恢复。

命令

故障分析

结合现场环境和资源情况,分析问题产生的可能原因如下:

1. 虚拟机系统异常,操作系统只读不可写。

2. 计算节点访问后端存储异常。

3. 虚拟机读写性能不足,或者平台QoS配置限定。

4. 虚拟机配置问题,或者虚机被攻击,导致大量写操作。

具体问题分析过程如下:

1. 登录异常虚拟机操作系统,检查虚拟机内部业务是否正常读写,以及操作系统状态。

2. 虚机写磁盘延时告警上报后,底层平台和业务网元双向检查。

平台检查虚机运行正常,无其它异常告警。

业务网元检查虚机正常,网元无异常告警。

确认虚机写磁盘时延高告警仅触发告警,无业务影响,如下图所示。

3. 在TECS上通过告警找到对应虚机的节点,确定该节点只有一个虚机是NFV-P-***。再检查虚机读写速率和虚机所在节点读写速率。

4. 执行iostat -x 3命令,检查服务器节点。持续续观察1小时,节点检查正常,如下图所示。

命令

5. 在CloveStorage分布式存储上使用告警信息中虚机名称检查,确认虚机对应卷。

a. 在TECS平台检查虚机对应的云盘,获取云盘对应卷的ID,从告警确定虚机名,如下图所示。

命令

b. 测试TECS平台使用sftp方式访问第三方存储正常,能够正常访问,也能正常发送问题。

c. 在CloveStorage分布式存储上检查每个对应卷和集群的性能,如下图所示。

命令

IOPS:I/O per second,即每秒钟可以处理的I/O个数,用来衡量存储系统的I/O处理能力,如下图所示。

命令

读写速率:每秒钟可以处理的数据量,常以MB/s或GB/s为单位,用于衡量存储系统的吞吐量。

I/O:输入(input)、输出(output)。

IO时延:发起一次I/O请求到I/O处理完成的时间间隔。

容量:可用的存储空间大小。

6. 根据上图可以看出IOPS值在告警时间段超出200。

7. 在TECS平台检查存储QoS设置值,为200,如下图所示。

命令

8. 检查对应卷的IOPS值,超过 200;而卷的QoS设置IOPS最大上限为200,经确认出现时延冲高的卷QoS均超过了设定的最大值,因此存在QoS设置不合理影响卷性能的问题。

9. 同时和业务网元确认,存在卷的QoS设置小于实际运行的预期值。

10. QoS(Quality of Service)即服务质量。在有限的资源下,QoS为各种业务分配固定的资源预留,为业务提供端到端的服务质量保证。

卷的QoS设置IOPS和带宽上限,当卷的实际性能超过QoS设置的最大值时,会由于QoS的限制出现IO队列排队拥塞的情况,反映到上层,即对应的云盘IO时延增高并上报告警。

11. 通过以上检查,发现存储侧在异常时间段没有异常告警,确认底层存储集群运行正常。

故障处理

1. 虚拟化平台和业务网元联合检查确认是因为业务网元侧针对QoS设置IOPS值小于卷实际运行的IOPS值,导致卷时延冲高,最终产生告警。

2. 修改存储QoS值后,未再上报该告警。

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分