Curve 坏盘更换

  1. 适用环境:
  2. 版本号: v1.2.6+
  3. CurveAdm版本:v0.2.0+
  4. 最后更新日期: 2023/09/30
  5. 层面: 数据面
  6. 运维级别: P1
  7. 所属产品: 存储
  8. 需求明细: 节点名称
  9. 验收标准: 新盘对应的chunkserver重启成功
  10. 参考步骤:
  1. 1. 剔除坏盘:
  2. 在坏盘情况下,对应的chunkserver会退出,集群会自动做迁移,使用如下命令查看故障的chunkserverIDStatusExited状态的chunkserver
  3. $ curveadm status -v
  4. 2. SA确认盘是否进行过读写压测,排查坏盘、慢盘等异常。
  5. 3. 检查磁盘磁盘缓存是否关闭
  6. $ sudo /sbin/hdparm -W /dev/sd{number} | grep "write-caching"
  7. 确认write-caching=0
  8. 4. 检查磁盘调度策略为noop
  9. $ cat /sys/block/sd{number}/queue/scheduler
  10. 应该输出[noop] deadline cfq
  11. 5. 提交新增磁盘列表
  12. $ vim format.yaml
  13. host:
  14. - server-host3
  15. disk:
  16. - /dev/sdc:/data/chunkserver3:90 # 替换上来的磁盘
  17. 警告:format.yaml 文件中只需填写新增机器上的磁盘列表即可,切勿将已在集群中服务的磁盘列表填入其中,避免造成无法挽回的损失。
  18. 6. 格式化替换上来的磁盘
  19. $ curveadm format -f format.yaml
  20. 7. 拉起当前服务:
  21. $ curveadm start --id <ID>
  22. 这里的ID为因为坏盘而停止的chunkserver服务ID,也就是第1步看到的ID
  23. 5. 再次查看集群当前chunkserver状态是否被成功拉起状态(StatusUp状态):
  24. $ curveadm status
  1. 参考影响:
  • 时间: 无

  • 业务方: 无

  • 用户:无

  1. 参考风险:
  • 数据面: IO可能有短暂时间抖动

  • 管控面: 无

  • 恢复能力: 无需恢复

  1. 参考回滚策略: 无

  2. 需求发起方: CURVE

  3. 接收方:

  4. 评任人: SRE负责人,SA负责人,CURVE负责人

  5. 用户通知责任人: 技术支持

  6. 执行责任人: CURVE/SA

  7. 测试回归责任人: CURVE

  8. 执行审核责任人: SA/CURVE/SRE