通过 Ceph 从 Ganeti 迁移到 OpenStack

loic

ganeti 上,关闭实例并激活其磁盘

z2-8:~# gnt-instance shutdown nerrant 等待 nerrant 的作业 1089813... z2-8:~# gnt-instance activate-disks nerrant z2-8.host.gnt:disk/0:/dev/drbd10

在安装了 OpenStack Havana 且使用 Ceph cinder 后端的系统上,创建一个大小相同的卷

# cinder create --volume-type ovh --display-name nerrant 10 +---------------------+--------------------------------------+ | 属性 | 值 | +---------------------+--------------------------------------+ | 附件 | [] | | 可用区 | nova | | 可启动 | false | | 创建时间 | 2013-11-12T13:00:39.614541 | | 显示描述 | None | | 显示名称 | nerrant | | ID | 3ec2035e-ff76-43a9-bbb3-6c003c1c0e16 | | 元数据 | {} | | 大小 | 10 | | 快照 ID | None | | 来源卷 ID | None | | 状态 | creating | | 卷类型 | ovh | +---------------------+--------------------------------------+

rbd --pool ovh info volume-3ec2035e-ff76-43a9-bbb3-6c003c1c0e16

rbd image 'volume-3ec2035e-ff76-43a9-bbb3-6c003c1c0e16': size 10240 MB in 2560 objects order 22 (4096 KB objects) block_name_prefix: rbd_data.90f0417089fa 格式: 2 features: layering

在连接到 Ceph 集群且运行 linux-kernel > 3.8 (因为上述 格式: 2) 的主机上,映射到块设备:

# rbd map --pool ovh volume-3ec2035e-ff76-43a9-bbb3-6c003c1c0e16

rbd showmapped

id pool image snap device 1 ovh volume-3ec2035e-ff76-43a9-bbb3-6c003c1c0e16 - /dev/rbd1

使用以下命令复制 Ganeti 卷:

z2-8:~# pv < /dev/drbd10 | ssh bm0014 dd of=/dev/rbd1 2,29GB 0:09:14 [4,23MB/s] [==========================> ] 22% ETA 0:31:09

并在完成时取消映射该设备。

rbd unmap /dev/rbd1

该卷已准备好启动。