curveadm工具简介
curveadm工具用于部署和管理curvebs/curvefs集群,是官方发布的curvebs/curvefs集群部署和管理工具
curveadm工作目录
curveadm默认安装在/$HOME/.curveadm目录下,其工作目录也在该目录下,因此用户只能通过curveadm命令查看通过本用户部署的集群,下面是一些工作目录的介绍:
- /$HOME/.curveadm/data: 数据目录,存放sqlite文件
- /$HOME/.curveadm/logs: 日志文件,存放curveadm日志
- /$HOME/.curveadm/curveadm.cfg: curveadm配置文件
curveadm部署curvebs/curvefs集群流程
整体流程分为四步:导入节点 -> 格式化硬盘 -> 添加集群 -> 部署集群,需要执行四条命令
以下是整体流程图:
- 导入集群节点中将需要部署curve存储的节点信息保持到数据库,后续的操作可直接使用保持的节点
- 格式化存储通过远程命令格式化节点上的磁盘,并将磁盘信息保存到数据库,部署集群时可直接使用保存的磁盘
- 添加集群将集群拓扑信息保存到数据库,此时可以引用第一步的节点信息和第二步的磁盘信息
- 部署集群使用第三步的集群拓扑部署集群,通过远程命令运行curve存储相关容器
curveadm命令执行流程
从上一章节可以看到,四个步骤都创建了playBook,以playBook执行具体任务,其他命令行也大同小异
- curveadm的操作都是以playBook的方式执行的,在执行playBook过程中创建多任务,并发执行多任务
- 一个playBook的多个step是同步执行的,一个step内的多个任务是并发执行的
- playBook step内的任务以host为依据创建,例如要格式化磁盘,有节点node1、node2,磁盘sda、sdb,则会创建任务如下:
- node1的sda格式化
- node1的sdb格式化
- node2的sda格式化
- node2的sdb格式化
- 任务内部也有step,任务内的step同步执行