Ceph + OpenStack :: Part-3
测试 OpenStack Cinder + RBD
¶
- 创建由 Ceph 后端提供的 cinder 卷
[root@rdo /]#
[root@rdo /]# cinder create --display-name cinder-ceph-vol1 --display-description "first cinder volume on ceph backend" 10
+---------------------+--------------------------------------+
| 属性 | 值 |
+---------------------+--------------------------------------+
| 附件 | [] |
| 可用区 | nova |
| 可启动 | false |
| 创建时间 | 2013-11-27T19:35:39.481075 |
| 显示描述 | first cinder volume on ceph backend |
| 显示名称 | cinder-ceph-vol1 |
| ID | 10cc0855-652a-4a9b-baa1-80bc86dc12ac |
| 元数据 | {} |
| 大小 | 10 |
| 快照 ID | None |
| 来源卷 ID | None |
| 状态 | creating |
| 卷类型 | None |
+---------------------+--------------------------------------+
[root@rdo /]#
[root@rdo /]#
[root@rdo /(keystone_admin)]# cinder list
+--------------------------------------+-----------+------------------+------+--------------+----------+-------------+
| ID | 状态 | 显示名称 | 大小 | 卷类型 | 可启动 | 附加到 |
+--------------------------------------+-----------+------------------+------+--------------+----------+-------------+
| 10cc0855-652a-4a9b-baa1-80bc86dc12ac | available | cinder-ceph-vol1 | 5 | ceph-storage | false | |
| 9671edaa-62c8-4f98-a36c-d6e59612141b | available | boot_from_volume | 20 | None | false | |
+--------------------------------------+-----------+------------------+------+--------------+----------+-------------+
[root@rdo /(keystone_admin)]#
[root@rdo /]#
[root@rdo /]# rados lspools
data
metadata
rbd
ceph-images
ceph-volumes
[root@rdo /]#
[root@rdo /]#
[root@rdo /]# rbd -p ceph-volumes ls
volume-10cc0855-652a-4a9b-baa1-80bc86dc12ac
[root@rdo /]#
- 将 cinder 卷附加到实例
[root@rdo /(keystone_admin)]# nova list
+--------------------------------------+------------------+---------+--------------+-------------+---------------------+
| ID | 名称 | 状态 | 任务状态 | 电源状态 | 网络 |
+--------------------------------------+------------------+---------+--------------+-------------+---------------------+
| 0043a8be-60d1-43ed-ba43-1ccd0bba7559 | instance2 | SHUTOFF | None | 关闭 | public=172.24.4.228 |
| 9d3c327f-1893-40ff-8a82-16fad9ce6d91 | small-ubuntu | ACTIVE | None | 运行 | public=172.24.4.230 |
| 10d1c49f-9fbc-455f-b72d-f731338b2dd5 | small-ubuntu-pwd | ACTIVE | powering-off | 关闭 | public=172.24.4.231 |
+--------------------------------------+------------------+---------+--------------+-------------+---------------------+
[root@rdo /(keystone_admin)]#
[root@rdo /(keystone_admin)]# nova show 9d3c327f-1893-40ff-8a82-16fad9ce6d91
+--------------------------------------+--------------------------------------------------------------------+
| 属性 | 值 |
+--------------------------------------+--------------------------------------------------------------------+
| 状态 | ACTIVE |
| 更新时间 | 2013-12-03T15:58:31Z |
| OS-EXT-STS:task_state | None |
| OS-EXT-SRV-ATTR:host | rdo |
| 密钥名称 | RDO-admin |
| 镜像 | Ubuntu 12.04 cloudimg amd64 (f61edc8d-c9a1-4ff4-b4fc-c8128bd1a10b) |
| hostId | 4a74aa79a23a084f73f49a4fedba7447c132ab45c4701ed7fbbb2286 |
| OS-EXT-STS:vm_state | active |
| OS-EXT-SRV-ATTR:instance_name | instance-00000018 |
| 公共网络 | 172.24.4.230 |
| OS-SRV-USG:launched_at | 2013-12-03T08:55:46.000000 |
| OS-EXT-SRV-ATTR:hypervisor_hostname | rdo |
| flavor | m1.small (2) |
| ID | 9d3c327f-1893-40ff-8a82-16fad9ce6d91 |
| 安全组 | [{u'name': u'default'}] |
| OS-SRV-USG:terminated_at | None |
| 用户 ID | 99f8019ba2694d78a680a5de46aa1afd |
| 名称 | small-ubuntu |
| 创建时间 | 2013-12-03T08:55:39Z |
| 租户 ID | 0dafe42cfde242ddbb67b681f59bdb00 |
| OS-DCF:diskConfig | MANUAL |
| 元数据 | {} |
| os-extended-volumes:volumes_attached | [] |
| accessIPv4 | |
| accessIPv6 | |
| 进度 | 0 |
| OS-EXT-STS:power_state | 1 |
| OS-EXT-AZ:availability_zone | nova |
| config_drive | |
+--------------------------------------+--------------------------------------------------------------------+
[root@rdo /(keystone_admin)]#
[root@rdo /(keystone_admin)]# virsh list
Id Name State
---------------------------------------------------- 2 instance-00000018 running
[root@rdo /(keystone_admin)]# cat disk.xml
您应该了解关于此文件的内容
- source name=<ceph_pool_name/volume_name> ## 我们上面创建的 ceph 存储池及其 cinder 卷
- host name=<您的监控节点>
- auth username=<您在 Ceph 中创建的用户,具有将与 OS 一起使用的存储池的权限> ## 我们为 ceph 创建了 2 个用户 client.volumes 和 client.images,它们将具有访问 openstack 存储池的权限
- secret uuid=<由 virsh secrec define 命令生成的密钥> ## 参考上面我们生成的密钥。
将磁盘设备附加到实例
[root@rdo /(keystone_admin)]# virsh attach-device instance-00000018 disk.xml
设备成功附加
[root@rdo /(keystone_admin)]#
- 现在 ceph 卷已附加到您的 openstack 实例,您可以将其用作常规块磁盘。
使集成更加无缝
¶
- 为了允许 openstack 使用 nova / cinder CLI 以及 horizon 仪表板创建和附加 ceph 卷,我们需要在 /etc/nova/nova.conf 中添加以下值
rbd_user=volumes
rbd_secret_uuid=801a42ec-aec1-3ea8-d869-823c2de56b83
- 更新 nova.conf 后,尝试从 nova cli 创建卷并附加到实例
[root@rdo nova(keystone_admin)]#
[root@rdo nova(keystone_admin)]# nova volume-create --display_name=nova-vol_1 2
+---------------------+--------------------------------------+
| 属性 | 值 |
+---------------------+--------------------------------------+
| 状态 | creating |
| 显示名称 | nova-vol_1 |
| 附件 | [] |
| 可用区 | nova |
| 可启动 | false |
| 创建时间 | 2013-12-04T14:13:07.265831 |
| 显示描述 | None |
| 卷类型 | None |
| 快照 ID | None |
| 来源卷 ID | None |
| 大小 | 2 |
| ID | 0e2bfced-be6a-44ec-a3ca-22c771c66cdc |
| 元数据 | {} |
+---------------------+--------------------------------------+
[root@rdo nova(keystone_admin)]#
[root@rdo nova(keystone_admin)]# nova volume-list
+--------------------------------------+-----------+------------------+------+--------------+-------------+
| ID | 状态 | 显示名称 | 大小 | 卷类型 | 附加到 |
+--------------------------------------+-----------+------------------+------+--------------+-------------+
| 0e2bfced-be6a-44ec-a3ca-22c771c66cdc | available | nova-vol_1 | 2 | None | |
| 9671edaa-62c8-4f98-a36c-d6e59612141b | available | boot_from_volume | 20 | None | |
| 10cc0855-652a-4a9b-baa1-80bc86dc12ac | available | ceph-vol1 | 5 | ceph-storage | |
+--------------------------------------+-----------+------------------+------+--------------+-------------+
[root@rdo nova(keystone_admin)]#
[root@rdo nova(keystone_admin)]# nova list
+--------------------------------------+------------------+---------+--------------+-------------+---------------------+
| ID | 名称 | 状态 | 任务状态 | 电源状态 | 网络 |
+--------------------------------------+------------------+---------+--------------+-------------+---------------------+
| 0043a8be-60d1-43ed-ba43-1ccd0bba7559 | instance2 | SHUTOFF | None | 关闭 | public=172.24.4.228 |
| 9d3c327f-1893-40ff-8a82-16fad9ce6d91 | small-ubuntu | ACTIVE | None | 运行 | public=172.24.4.230 |
| 10d1c49f-9fbc-455f-b72d-f731338b2dd5 | small-ubuntu-pwd | ACTIVE | powering-off | 关闭 | public=172.24.4.231 |
+--------------------------------------+------------------+---------+--------------+-------------+---------------------+
[root@rdo nova(keystone_admin)]#
[root@rdo nova(keystone_admin)]# nova volume-attach 9d3c327f-1893-40ff-8a82-16fad9ce6d91 0e2bfced-be6a-44ec-a3ca-22c771c66cdc /dev/vdi
+----------+--------------------------------------+
| 属性 | 值 |
+----------+--------------------------------------+
| 设备 | /dev/vdi |
| serverId | 9d3c327f-1893-40ff-8a82-16fad9ce6d91 |
| ID | 0e2bfced-be6a-44ec-a3ca-22c771c66cdc |
| volumeId | 0e2bfced-be6a-44ec-a3ca-22c771c66cdc |
+----------+--------------------------------------+
[root@rdo nova(keystone_admin)]#
[root@rdo nova(keystone_admin)]#
[root@rdo nova(keystone_admin)]# nova volume-list
+--------------------------------------+-----------+------------------+------+--------------+--------------------------------------+
| ID | 状态 | 显示名称 | 大小 | 卷类型 | 附加到 |
+--------------------------------------+-----------+------------------+------+--------------+--------------------------------------+
| 0e2bfced-be6a-44ec-a3ca-22c771c66cdc | in-use | nova-vol_1 | 2 | None | 9d3c327f-1893-40ff-8a82-16fad9ce6d91 |
| 9671edaa-62c8-4f98-a36c-d6e59612141b | available | boot_from_volume | 20 | None | |
| 10cc0855-652a-4a9b-baa1-80bc86dc12ac | available | ceph-vol1 | 5 | ceph-storage | |
+--------------------------------------+-----------+------------------+------+--------------+--------------------------------------+
[root@rdo nova(keystone_admin)]#