@@ -73,6 +73,25 @@ cluster_map:
73
73
如果是多机部署,则需要把internalport和externalport都设置成0。需要注意这里zone的数量要大于等于logicalpools里面指定的zonenum。
74
74
logicalpools是逻辑池的列表,除了名字,需要指定它所属的物理池、类型、副本数量、copyset数量zone数量以及scatterwidth。目前的类型
75
75
只支持0,page file类型。
76
+ 如果需要格式化磁盘,则需要额外在group_vars/chunkservers.yml中指定磁盘的列表。比如:
77
+ disk_list:
78
+ - sda
79
+ - sdb
80
+ - sdc
81
+ group_vars/chunkservers.yml中指定的变量是所有chunkserver共用的,如果某个chunkserver上的磁盘列表跟其他的不一致,则需要在host_vars
82
+ 中额外给出。比如server.ini中chunkserver是下面三台机器:
83
+ [chunkservers]
84
+ server1 ansible_ssh_host=10.192.100.1
85
+ server2 ansible_ssh_host=10.192.100.2
86
+ server3 ansible_ssh_host=10.192.100.3
87
+ 假设server1和server2对应的都是sda,sdb,sdc, server3使用的是sda,sdb,sdd,sde这四块盘。那么server1和server2的disk_list不需要在host_vars
88
+ 额外指出,而server3的disk_list需要额外指出。具体做法是在host_vars下面新建一个server3.yml。
89
+ 里面的内容为:
90
+ disk_list:
91
+ - sda
92
+ - sdb
93
+ - sdd
94
+ - sde
76
95
77
96
1.1 部署etcd
78
97
部署命令:
@@ -204,15 +223,19 @@ curve-sdk主要给cinder,nova等服务使用,只需要更新包和配置即
204
223
│ └── wait_copysets_status_healthy.yml # 在一段时间内循环检查copyset健康状态
205
224
│ ├── wait_until_server_down.yml # 等待直到server停掉
206
225
│ └── wait_until_server_up.yml # 等待直到server起来
207
- ├── roles # roles也是用来存放可以复用的代码,一个role内的task存在关联
208
226
├── group_vars # 组变量
209
227
│ ├── all.yml # 属于所有host的变量
228
+ │ ├── chunkservers.yml # 属于chunkserver的变量
210
229
│ └── mds.yml # 属于mds的变量
230
+ ├── host_vars # 主机变量, 其中的文件名要合inventory中定义的主机名一致
231
+ │ └── localhost.yml # 属于localhost的变量,host_vars优先级高于group_vars
232
+ ├── roles # roles也是用来存放可以复用的代码,一个role内的task存在关联
211
233
│ ├── format_chunkserver # 用来格式化chunkserver的role
212
234
│ │ ├── defaults
213
235
│ │ │ └── main.yml # 存放带默认值的变量
214
236
│ │ └── tasks
215
237
│ │ ├── include
238
+ │ │ │ ├── prepare_chunkserver_with_disk_format.yml # 使用格式化磁盘的方式准备data目录
216
239
│ │ │ └── prepare_chunkserver_without_disk_format.yml # 使用非格式化磁盘的方式准备data目录
217
240
│ │ └── main.yml
218
241
│ ├── restart_service # 用来重启服务的role
@@ -241,19 +264,25 @@ curve-sdk主要给cinder,nova等服务使用,只需要更新包和配置即
241
264
│ │ │ │ ├── install_curve-mds.yml # 安装mds
242
265
│ │ │ │ ├── install_curve-nbd.yml # 安装nbd
243
266
│ │ │ │ ├── install_curve-sdk.yml # 安装curve-sdk
267
+ │ │ │ │ ├── install_curve-snapshotcloneserver-nginx.yml # 安装快照克隆使用的Nginx
268
+ │ │ │ │ ├── install_curve-snapshotcloneserver.yml # 部署快照克隆
244
269
│ │ │ │ ├── install_curve-tools.yml # 安装部署工具
270
+ │ │ │ │ ├── install_daemon.yml # 安装daemon
245
271
│ │ │ │ ├── install_deb_package.yml # 安装debian包
246
272
│ │ │ │ ├── install_etcd.yml # 安装etcd
273
+ │ │ │ │ ├── install_jemalloc.yml # 安装jemalloc
247
274
│ │ │ │ ├── install_libuuid.yml # 安装libuuid
248
- │ │ │ │ ├── install_lib_with_source_code.yml # 从源码安装库
275
+ │ │ │ │ └── install_with_yum_apt.yml # 用apt或yum的方式安装
276
+ │ │ │ │ ├── install_with_source_code.yml # 从源码安装
249
277
│ │ │ │ └── install_nebd.yml # 安装nebd
250
278
│ │ │ └── main.yml
251
279
│ │ ├── templates # 存放模板
252
280
│ │ │ ├── chunkserver_ctl.sh.j2 # chunkserver启动脚本的模板
253
281
│ │ │ ├── chunkserver_deploy.sh.j2 # chunkserver格式化脚本的模板
254
282
│ │ │ ├── etcd-daemon.sh.j2 # etcd启动脚本的模板
255
283
│ │ │ ├── mds-daemon.sh.j2 # mds启动脚本的模板
256
- │ │ │ └── nebd-daemon.j2 # nebd-server启动脚本的模板
284
+ │ │ │ ├── nebd-daemon.j2 # nebd-server启动脚本的模板
285
+ │ │ │ └── snapshot-daemon.sh.j2 # 快照克隆启动脚本模板
257
286
│ │ └── vars
258
287
│ │ └── main.yml
259
288
│ ├── set_leader_and_follower_list # 设置leader和follower列表
@@ -292,7 +321,9 @@ curve-sdk主要给cinder,nova等服务使用,只需要更新包和配置即
292
321
│ │ │ ├── start_chunkserver.yml # 启动chunkserver
293
322
│ │ │ ├── start_etcd.yml # 启动etcd
294
323
│ │ │ ├── start_mds.yml # 启动mds
295
- │ │ │ └── start_nebd.yml # 启动nebd
324
+ │ │ │ ├── start_nebd.yml # 启动nebd
325
+ │ │ │ ├── start_snapshotcloneserver_nginx.yml # 启动Nginx
326
+ │ │ │ └── start_snapshotcloneserver.yml # 启动快照克隆
296
327
│ │ └── main.yml
297
328
│ └── vars
298
329
│ └── main.yml
@@ -312,6 +343,8 @@ curve-sdk主要给cinder,nova等服务使用,只需要更新包和配置即
312
343
├── deploy_mds.yml # 部署mds
313
344
├── deploy_nbd.yml # 部署nbd
314
345
├── deploy_nebd.yml # 部署nebd
346
+ ├── deploy_snapshotcloneserver_nginx.yml # 部署快照克隆所用Nginx
347
+ ├── deploy_snapshotcloneserver.yml # 部署快照克隆
315
348
├── README # 本帮助文档
316
349
├── client.ini # client的inventory文件
317
350
└── server.ini # server的列表,包括mds,快照克隆,etcd,chunkserver
0 commit comments