Curve核心组件之chunkserver
ChunkServer架构 ChunkServer核心模块 新版本ChunkServer性能优化Curve ChunkServer是数据节点, 对外提供数据读写和节点管理功 能,底层基于ext4文件系统,操 作实际的磁盘。 ChunkServer架构ChunkServer通过RPC网络层与client, MDS,其他ChunkServer通信。RPC 网络层是由brpc框架去完成的。包 括读写socket,rpc协议解析等。 CliService。成员变更相关操作 • CopySetService。创建copyset等操 作 • RaftService。Braft内置的service, 完成raft成员之间的选举,日志复制, 安装快照等操作。 ChunkServer架构CopysetNode封装了braft的Node,并 实现了braft的状态机,完成与raft的交 互。详细交互流程后面展开。 CopysetNodeManager负责管理 克隆chunk的管理等等。 ChunkServer架构LocalFileSystermAdaptor是对底层文件 系统的一层抽象,目前适配封装了ext4 文件系统的接口。 之所以要做这层抽 象,目的是隔离了底层文件系统的实 际读写请求,如果将来curve要适配裸 盘或者采用其他文件系统,可以在这 层进行适配。 ChunkServer架构CURVE基本架构 01 02 03 040 码力 | 29 页 | 1.61 MB | 5 月前3Curve质量监控与运维 - 网易数帆
Curve使用开源的监控工具Prometheus采集监控指标,大致 流程为: 1. 部署监控时,Curve根据集群信息生成配置文件, 指定了 Prometheus的监控目标(包括Client、MDS、 ChunkServer、Etcd、物理节点等)。 2. Prometheus依据上述配置文件,发现相应服务。 3. Prometheus server以pull的方式,定期从Curve集群中 MDS、C 精确的流量控制,对io影响很小 Kill一个节点所有ChunkServer进程 31/33快照克隆工具snaptool Curve_ops_tool 查询Curve状态 管理Curve文件 管理copyset 运维工具 Ansible 一键部署: ansible-playbook -i server.ini deploy_curve.yml 一键升级:ansible-playbook0 码力 | 33 页 | 2.64 MB | 5 月前3
共 2 条
- 1