Ceph作为OpenStack后端存储

Total PGs = (Total_number_of_OSD * 100) /max_replication_count)

1、  Create pool for OpenStack

pg=256
ceph osd pool create volumes $pg   #disk_pool
ceph osd pool create images $pg    #image_pool
ceph osd pool create vms $pg      #host_pool
ceph osd pool create backups $pg   #backup_pool

2、  setup ceph client authentication

ceph auth get-or-create client.cinder mon‘allow r‘ osd ‘allow class-read object_prefix rbd_children, allow rwxpool=volumes, allow rwx pool=vms, allow rx pool=images‘
ceph auth get-or-create client.glance mon‘allow r‘ osd ‘allow class-read object_prefix rbd_children, allow rwxpool=images‘
ceph auth get-or-createclient.cinder-backup mon ‘allow r‘ osd ‘allow class-read object_prefixrbd_children, allow rwx pool=backups‘

3、Add the keyringsfor client.cinder, client.glance, and client.cinder-backup to the appropriatenodes and change their ownership

ceph auth get-or-create client.glance | ssh{your-glance-api-server} sudo tee /etc/ceph/ceph.client.glance.keyring
ssh {your-glance-api-server} sudo chownglance:glance /etc/ceph/ceph.client.glance.keyring
ceph auth get-or-create client.cinder | ssh{your-volume-server} sudo tee /etc/ceph/ceph.client.cinder.keyring
ssh {your-cinder-volume-server} sudo chowncinder:cinder /etc/ceph/ceph.client.cinder.keyring

4、  Nodes running nova-compute need the keyring file for thenova-compute process

ceph auth get-or-create client.cinder | ssh{your-nova-compute-server} sudo tee /etc/ceph/ceph.client.cinder.keyring

5、  Create a temporary copy of the secret key on the nodes runningnova-compute:

ceph auth get-key client.cinder > client.cinder.key
ceph auth get-key client.cinder | ssh{your-compute-node} tee client.cinder.key
uuidgen
4f859b95-406e-49f6-9ff8-d6e04f7ba1ef
cat > secret.xml <<EOF
<secret ephemeral=‘no‘ private=‘no‘>
 <uuid>4f859b95-406e-49f6-9ff8-d6e04f7ba1ef</uuid>
 <usage type=‘ceph‘>
   <name>client.cinder secret</name>
 </usage>
</secret>
EOF
sudo virsh secret-define --file secret.xml
sudo virsh secret-set-value --secret4f859b95-406e-49f6-9ff8-d6e04f7ba1ef --base64 $(cat client.cinder.key)&& rm client.cinder.key secret.xml

6、  Configuring Glance

vi /etc/glance/glance-api.conf
[DEFAULT]
...
default_store=rbd
rbd_store_user=glance
rbd_store_pool=images
show_image_direct_url=True
...

7、  Configuring Cinder

vi /etc/cinder/cinder.conf
[DEFAULT]
...
volume_driver=cinder.volume.drivers.rbd.RBDDriver
rbd_pool=volumes
rbd_ceph_conf=/etc/ceph/ceph.conf
rbd_flatten_volume_from_snapshot=false
rbd_max_clone_depth=5
glance_api_version=2
rbd_user=cinder
rbd_secret_uuid=4f859b95-406e-49f6-9ff8-d6e04f7ba1ef

8、  Configuring Cinder Backup

vi /etc/cinder/cinder.conf
[DEFAULT]
...
backup_driver=cinder.backup.drivers.ceph
backup_ceph_conf=/etc/ceph/ceph.conf
backup_ceph_user=cinder-backup
backup_ceph_chunk_size=134217728
backup_ceph_pool=backups
backup_ceph_stripe_unit=0
backup_ceph_stripe_count=0
restore_discard_excess_bytes=true

9、  Configuring Nova

vi /etc/nova/nova.conf
[DEFAULT]
...
libvirt_images_type=rbd
libvirt_images_rbd_pool=vms
libvirt_images_rbd_ceph_conf=/etc/ceph/ceph.conf
rbd_user=cinder
rbd_secret_uuid=9c9ee670-dd2c-4f44-9254-7b52a63caa9a
libvirt_inject_password=false
libvirt_inject_key=false
libvirt_inject_partition=-2
libvirt_live_migration_flag="VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST"

10、  Restart OpenStack

service openstack-glance-api restart
service openstack-nova-compute restart
service openstack-cinder-volume restart

10、Test

时间: 2024-10-14 21:27:13

Ceph作为OpenStack后端存储的相关文章

GlusterFS作为OpenStack后端存储

创建3个卷images.volumes.instances分别对接openstack的glance.cinder.nova组件 images卷用于存放OpenStack镜像 volumes卷用于存放OpenStack硬盘 instances卷用于存放OpenStack云主机 1.  创建卷 gluster volume create images replica 3 controller1:/data/brick1/image  controller2:/data/brick1/image  c

ceph(5)--Ceph 与 OpenStack 集成的实现

理解 OpenStack + Ceph 系列文章: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 (5)Ceph 与 OpenStack 集成的实现 (6)QEMU-KVM 和 Ceph RBD 的 缓存机制总结 (7)Ceph 的基本操作和常见故障排除方法 (8)关于Ceph PGs 1. Glance 与 Ceph RBD 集成 1.1 代码 Kilo 版本中,glance-store 代码被从 glance 代码中分离

使用Ceph作为OpenStack的后端存储

概述 libvirt配置了librbd的QEMU接口,通过它可以在OpenStack中使用Ceph块存储.Ceph块存储是集群对象,这意味着它比独立的服务器有更好的性能. 在OpenStack中使用Ceph块设备,必须首先安装QEMU,libvirt和OpenStack,下图描述了 OpenStack和Ceph技术层次结构: http://my.oschina.net/JerryBaby/blog/376580 我翻译的官方文档,仅供参考 ^ ^. 系统规划 OpenStack集群: 控制节点:

OpenStack Cinder 与各种后端存储技术的集成叙述与实践

先说下下loop设备 loop设备及losetup命令介绍 1. loop设备介绍 在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者也可以说是仿真设备.它能使我们像块设备一样访问一个文件.在使用之前,一个 loop 设备必须要和一个文件进行连接.这种结合方式给用户提供了一个替代块特殊文件的接口.因此,如果这个文件包含有一个完整的文件系统,那么这个文件就可以像一个磁盘设备一样被 mount 起来.    上面说的文件格式,我们经常见到的是 CD 或 DVD 的

配置cinder-backup服务使用ceph作为后端存储

在ceph监视器上执行 CINDER_PASSWD='cinder1234!' controllerHost='controller' RABBIT_PASSWD='0penstackRMQ' 1.创建pool池 为cinder-backup服务创建pool池(因为我只有一个OSD节点,所以要将副本数设置为1) ceph osd pool create cinder-backup 32 ceph osd pool set cinder-backup size 1 ceph osd pool ap

openstack中nfs最为nova的后端存储

运行一个可用的nfs服务: [[email protected] ~]# showmount -e 192.168.100.10Export list for controller:/nfs *查看openstack当前nova的后端存储位置:我修改了默认云主机存储路径 [[email protected] ~]# cat /etc/nova/nova.conf | grep instances_path | grep -v "#"instances_path=/data/nova/i

创建OpenStack的存储云

OPENSTACK内部 OpenStack是一个开源的云平台项目,是由NASA发起,Rackspace在2010作为一个项目进行主导.源代码是由OpenStack基金会管理并在准许Apache许可下发布,Apache许可允许自由分发和修改,但需要保留原有的版权声明.OpenStack作为一个大规模部署应用平台而深受欢迎:它被许多服务商用来发布公有云平台,一些大型组织用它来搭建私有云基础设施.需要明确的是,OpenStack适用于大规模部署的应用,而对于像微软Exchange和oracle数据库等

【恒天云技术分享系列10】OpenStack块存储技术

原文:http://www.hengtianyun.com/download-show-id-101.html 块存储,简单来说就是提供了块设备存储的接口.用户需要把块存储卷附加到虚拟机(或者裸机)上后才可以与其交互.这些卷都是持久的,它们可以被从运行实例上解除或者重新附加而数据保持完整不变.OpenStack 中的实例是不能持久化的,需要挂载 volume,在 volume 中实现持久化.Cinder 就是提供对 volume 实际需要的存储块单元的实现管理功能. 1.单机块存储 1.1 LV

OpenStack —— 块存储服务Cinder(六)

一.Cinder介绍 Cinder(Block Storage service)提供对volume从创建到删除整个生命周期的管理,从instance的角度看,挂载的每一个volume都是一块硬盘. OpenStack早起版本使用nova-volume为云平台虚拟机提供持久性块存储.从F版本后,就把最为Nova组成部分的nova-volume分离了出来,形成了独立的Cinder组件. 二.Cinder主要组件 1.cinder-api 负责接收和处理外界的API请求,通过消息队列服务调用cinde