通过 Ceph 从 Ganeti 迁移到 OpenStack
在 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
该卷已准备好启动。