适用场景
- 产品:
ZCF - 组件:
ZStone - 版本:
4.2.x - 触发条件:缓存盘数据过高,导致云盘写入速率受到影响,需要执行刷盘落盘。
问题现象
- 当前
ZStone 4.2.x环境缓存盘数据积压较高。 - 云盘写入速率受到影响。
- 需要在存储物理机上执行刷盘,促使缓存数据刷新落盘。
判断方法
- 先检查当前存储版本和
zstone服务状态。 - 刷盘过程中持续观察
ceph -s。 - 重点确认
dirty值是否逐渐下降。
原因说明
问题的核心不是平台主控异常,而是缓存盘数据过高导致写入性能受限,因此需要通过 cas_policy_manager.sh 触发缓存刷新,把积压数据尽快落盘。
解决方案
- 执行前准备
- 风险等级:中风险
- 先停止所有云主机业务。
- 先将主存储置为维护模式。
- 先完成数据库和安装目录备份。
- 健康检查与备份
- 检查当前存储版本:
/opt/zstone/bin/zstone-master version
- 预期结果:确认当前版本为
4.2.x。
- 备份
zstone数据库:
mysqldump -uroot -p<数据库密码> zstone > /var/lib/zstack/mysql-backup/zstone-preupgrade-backup.sql
- 预期结果:具备数据库回退基础。
- 备份安装目录:
cp -r /opt/zstone-installer/ /root/zstone-installer-bk/
- 预期结果:保留升级/回退辅助目录快照。
- 检查业务和管控资源状态:
- 确认当前业务运行正常。
- 访问
4000端口,确认各存储资源信息与工作状态符合预期。 - 预期结果:存储管控面健康。
- 检查管理服务状态:
systemctl status zstone-master.service
systemctl status zstone-ui.service
systemctl status zstone-alertmanager.service
systemctl status zstone-prometheus.service
systemctl status zstone-pushgateway.service
systemctl status keepalived.service
- 预期结果:相关服务为
active/running。
- 检查无正在执行的异步任务。
- 预期结果:刷盘期间不会与其他管控任务冲突。
- 执行刷盘
- 在每个存储节点上传脚本:
/root/cas_policy_manager.sh
- 预期结果:刷盘脚本可执行。
- 开始刷盘:
/root/cas_policy_manager.sh start_acp
- 预期结果:缓存刷新过程启动。
- 持续观察:
ceph -s
- 重点观察
dirty值是否逐渐降低。 - 预期结果:缓存数据逐步落盘。
- 刷盘结束后停止:
/root/cas_policy_manager.sh stop_acp
- 预期结果:刷盘任务收口完成。
验证方法
- 检查
ceph -s输出正常。 - 检查
dirty值逐步下降并达到预期。 - 检查云盘写入速率恢复正常。
风险与回滚
- 风险:若业务未停或主存储未维护,刷盘过程可能放大业务抖动。
- 风险:若刷盘中状态与预期不一致,应立即停止当前操作。
- 风险等级:中。
- 防范措施:一旦出现与变更方案反馈不一致情况,立即停止并进入问题分析。
