 Curve质量监控与运维 - 网易数帆软件质量的定义是:软件与明确地和隐含地定义的需求相一致的程度。 为了确保最终交付的软件满足需求,必须将质量控制贯穿于设计、开发到测试的整个流程中。 设计  设计流程  文档规范 开发  编码规范与提交流程  版本管理 测试  测试方法论  CI与异常测试 6/33设计流程 Curve团队采用敏捷开发模式,负责人在制定迭代计划时,确认哪些任务需要设计 文档:  小 Case通用性(兼顾curve、ceph等)  Tag规范(优先级、版本、运行时间)  最大化覆盖率(打乱操作顺序、随机 sleep)  精确性(checkpoint)  稳定性(避免环境因素、其他模块干扰) Curve使用Robotframework框架进行异常自动化测试, 相关代码见curve/robot at opencurve/curve (github.com) 17/33CI测试与异常测试报表 27/33易部署 准备安装 包 配置用户 配置SSH 免密 安装 ansible 配置Ansible 执行 ansible 确认集群 状态 28/33易升级  Client易升级 为避免Curve client升级影响QEMU,Curve Client采用了Client- Server架构,以支持热升级。 升级Curve Client只需重启NEBD Server,业务IO中断时间一般在50 码力 | 33 页 | 2.64 MB | 6 月前3 Curve质量监控与运维 - 网易数帆软件质量的定义是:软件与明确地和隐含地定义的需求相一致的程度。 为了确保最终交付的软件满足需求,必须将质量控制贯穿于设计、开发到测试的整个流程中。 设计  设计流程  文档规范 开发  编码规范与提交流程  版本管理 测试  测试方法论  CI与异常测试 6/33设计流程 Curve团队采用敏捷开发模式,负责人在制定迭代计划时,确认哪些任务需要设计 文档:  小 Case通用性(兼顾curve、ceph等)  Tag规范(优先级、版本、运行时间)  最大化覆盖率(打乱操作顺序、随机 sleep)  精确性(checkpoint)  稳定性(避免环境因素、其他模块干扰) Curve使用Robotframework框架进行异常自动化测试, 相关代码见curve/robot at opencurve/curve (github.com) 17/33CI测试与异常测试报表 27/33易部署 准备安装 包 配置用户 配置SSH 免密 安装 ansible 配置Ansible 执行 ansible 确认集群 状态 28/33易升级  Client易升级 为避免Curve client升级影响QEMU,Curve Client采用了Client- Server架构,以支持热升级。 升级Curve Client只需重启NEBD Server,业务IO中断时间一般在50 码力 | 33 页 | 2.64 MB | 6 月前3
 Curve核心组件之chunkserver因此ChunkServer性能优化主要是braft日志落盘优化,包括三个方面: 1. 追加写改为覆盖写(避免每次写的时候改变元数据,减少IO放大) 2. 写入时4KB对齐(4KB不对齐的情况下,每次写入都会有读请求,从而影响效率) 3. 改为O_DIRECT模式(改为Direct模式可以避免显式调用sync)欢 迎 大 家 参 与 C U R V E 项 目 ! • github主页: https://opencurve0 码力 | 29 页 | 1.61 MB | 6 月前3 Curve核心组件之chunkserver因此ChunkServer性能优化主要是braft日志落盘优化,包括三个方面: 1. 追加写改为覆盖写(避免每次写的时候改变元数据,减少IO放大) 2. 写入时4KB对齐(4KB不对齐的情况下,每次写入都会有读请求,从而影响效率) 3. 改为O_DIRECT模式(改为Direct模式可以避免显式调用sync)欢 迎 大 家 参 与 C U R V E 项 目 ! • github主页: https://opencurve0 码力 | 29 页 | 1.61 MB | 6 月前3
共 2 条
- 1













