元数据节点

元数据节点是由多个元数据分片(meta partition)和基于multiRaft的对应个数的raft实例组成; 每个元数据分片(meta partition)都是一个inode范围,且包含两个内存BTrees: inode BTree 和dentry BTree。注意:MetaNode的实例最少需要3个

Properties
配置项类型描述是否必需
role字符串进程角色: MetaNode
listen字符串监听和接受请求的端口
prof字符串调试和管理员API接口
logLevel字符串日志级别,默认: error
metadataDir字符串元数据快照存储目录
logDir字符串日志存储目录
raftDir字符串raft wal日志目录
raftHeartbeatPort字符串raft心跳通信端口
raftReplicaPort字符串raft数据传输端口
consulAddr字符串prometheus注册接口
exporterPort字符串prometheus获取监控数据端口
masterAddr字符串master服务地址
totalMem字符串最大可用内存,此值需高于master配置中metaNodeReservedMem的值,单位:字节
localIP字符串本机ip地址否,如果不填写该选项,则使用和master通信的ip地址
zoneName字符串指定区域否,默认分配至default区域
deleteBatchCountint64一次性批量删除多少inode节点,默认500

样例:

  1. {
  2. "role": "metanode",
  3. "listen": "17210",
  4. "prof": "17220",
  5. "logLevel": "debug",
  6. "localIP":"10.196.59.202",
  7. "metadataDir": "/cfs/metanode/data/meta",
  8. "logDir": "/cfs/metanode/log",
  9. "raftDir": "/cfs/metanode/data/raft",
  10. "raftHeartbeatPort": "17230",
  11. "raftReplicaPort": "17240",
  12. "consulAddr": "http://consul.prometheus-cfs.local",
  13. "exporterPort": 9501,
  14. "totalMem": "8589934592",
  15. "masterAddr": [
  16. "10.196.59.198:17010",
  17. "10.196.59.199:17010",
  18. "10.196.59.200:17010"
  19. ]
  20. }

启动服务

  1. nohup ./cfs-server -c metanode.json > nohup.out &

注意事项

  • listen、raftHeartbeatPort、raftReplicaPort这三个配置选项在程序首次配置启动后,不能修改;
  • 相关的配置信息被记录在metadataDir目录下的constcfg文件中,如果需要强制修改,需要手动删除该文件;
  • 上述三个配置选项和MetaNode在master的注册信息有关。如果修改,将导致master无法定位到修改前的metanode信息;