Curve质量监控与运维 - 网易数帆io/ • github代码仓库: https://github.com/opencurve/curve Curve 3/33为用户服务 作为一个复杂的大型分布式存储系统,Curve 需要利用科学的方法论和专业的工具,在整个 软件生命周期内更好地为用户服务: 质量——向用户交付稳定可靠的软件; 监控——直观地展示Curve运行状态; 运维——保障Curve始终稳定高效运行。 单个模块的误差积累是否会放大,从而 达到不可接受的程度。 功能测试 站在使用者的角度,对模块提供的功能进行完备 的测试。 异常测试 制造或模拟系统异常(磁盘错误、网络错误、资源 冲突等)、依赖服务异常、应用本身异常等非正常 情况,测试软件的性能和稳定性是否符合预期。 规模测试 测试模块在一定规模下是否能够正常工作,是否 会出现异常或者崩溃, 14/33系统测试 系统测试是对整 Curve使用brpc内置的bvar计数器类库,来生成监控指标,其特点是: thread local存储,减少了cache bouncing,性能开销极小; 支持在 brpc server 服务的端口上以web portal的方式导出和查询监控指标: 常用的bvar数据类型: bvar::Adder: 计数器,默认0, varname << N相当于varname += N 0 码力 | 33 页 | 2.64 MB | 6 月前3
Curve核心组件之chunkserver• 感知集群状态,合理调度 • 数据节点 Chunkserver • 数据存储 • 副本一致性,raft • 客户端 Client • 对元数据增删改查 • 对数据增删改查 • 快照克隆服务器CURVE基本架构 01 02 03 04 ChunkServer架构 ChunkServer核心模块 新版本ChunkServer性能优化Curve ChunkServer是数据节点, MDS,其他ChunkServer通信。RPC 网络层是由brpc框架去完成的。包 括读写socket,rpc协议解析等。 ChunkServer架构RPC Service层是对外提供的一些RPC服 务的接口。包含的RPC服务有: • ChunkService。IO相关操作 • CliService。成员变更相关操作 • CopySetService。创建copyset等操 作 • RaftService。Braft内置的service,0 码力 | 29 页 | 1.61 MB | 6 月前3
共 2 条
- 1













