OpenStack Juno系列之结合ceph

OpenStack Juno系列之结合ceph

原文链接:http://docs.ceph.com/docs/master/rbd/rbd-openstack/  

1.创建两个池。

 ceph osd pool create volumes 128

 ceph osd pool create images 128

补充内容:
在glance节点
apt-get install python-ceph
在nova-compute节点和cinder节点
apt-get install ceph-common

2.ceph配置文件拷贝到glance节点和cinder-volumes节点

sshX.X.X.X sudo tee /etc/ceph/ceph.conf </etc/ceph/ceph.conf

3.Ceph授权用户

ceph auth get-or-create client.cinder mon 'allow r' osd 'allow class-readobject_prefix rbd_children, allow rwx pool=volumes, allow rx pool=images'

ceph auth get-or-create client.glance mon 'allow r' osd 'allow class-readobject_prefix rbd_children, allow rwx pool=images'

4.把密钥拷贝到glance节点和cinder-volumes节点、nova-compute 节点

ceph auth get-or-create client.glance | ssh X.X.X.X sudo tee /etc/ceph/ceph.client.glance.keyring

sshX.X..X.X sudo chown glance:glance /etc/ceph/ceph.client.glance.keyring

ceph auth get-or-create client.cinder | ssh X.X.X.X sudo tee/etc/ceph/ceph.client.cinder.keyring

sshX.X.X.X sudo chown cinder:cinder /etc/ceph/ceph.client.cinder.keyring

ceph auth get-key client.cinder | ssh X.X.X.X tee client.cinder.key  这里是把cinder密钥拷贝到计算节点

5.配置glance节点,在glance-api配置文件中修改以下内容

default_store= rbd

stores= glance.store.rbd.Store

rbd_store_ceph_conf= /etc/ceph/ceph.conf

rbd_store_user= glance

rbd_store_pool= images

rbd_store_chunk_size= 8

show_image_direct_url = True

配置完重启glance-api服务即可

6.配置cinder-volume节点,添加以下内容

glance_host= XXXXX

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

rbd_store_chunk_size= 4

rados_connect_timeout= -1

glance_api_version= 2

rbd_user= cinder

rbd_secret_uuid= bfe573d1-0a91-42e8-941a-49d5730c4150

 

UUID需要自己生成

uuidgen命令

7.配置nova-compute节点

cat> secret.xml <<EOF

  <secret ephemeral='no' private='no'>

 <uuid>bfe573d1-0a91-42e8-941a-49d5730c4150</uuid>

  <usage type='ceph'>

  <name>client.cinder secret</name>

  </usage>

  </secret>

  EOF

sudovirsh secret-define --file secret.xml

sudovirsh secret-set-value --secret bfe573d1-0a91-42e8-941a-49d5730c4150 --base64$(cat client.cinder.key)

编辑nova.conf文件,添加以下内容

[libvirt]

images_type= rbd

images_rbd_pool= volumes

images_rbd_ceph_conf= /etc/ceph/ceph.conf

rbd_user= cinder

rbd_secret_uuid= bfe573d1-0a91-42e8-941a-49d5730c4150

libvirt_live_migration_flag="VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST"

配置完成之后重启nova-compute服务

8.验证copy on write功能

1.)上传一个 raw 镜像到 glance

2.cinder create  --image-id <image_id>  10

3.)ceph节点查看

rbd lsvolumes -l

类似于以下这个比如出现snap字样

volume-1147d5ee-5cae-4819-b58e-9eb1723f6c1340960M volumes/e5b6d62f-2876-40e5-a4d8-27d41552a631@snap   2 

补充排错:

Cinder节点

问题类型:

RBD的时候出现类似于这种情况一般都是RBD配置有问题

解决方法:

RBD相关内容放在[DEFAULT]选项中

wKiom1TUiw_x8afSAAUq8O4lM8o902.jpg

出现以下情况可能是因为cinder-volumes节点和ceph节点通信有问题导致驱动无法初始化

wKioL1TUi_2AHsHWAAvdmJKHJBg389.jpg

Nova-compute节点

nova上配置RBD的时候遇见以下情况,一般都是RBD配置问题。

wKiom1TUixDSOTCJAAPmHaakUsA234.jpg

解决方法把RBD相关内容放在[DEFAULT]选项中

libvirt_images_type = rbd

libvirt_images_rbd_pool = volumes

libvirt_images_rbd_ceph_conf = /etc/ceph/ceph.conf

rbd_user = cinder

rbd_secret_uuid = 6badfb2f-7e11-4810-bc11-40a73373259e

libvirt_live_migration_flag="VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST"


本文转自Devin 51CTO博客,原文链接:http://blog.51cto.com/devingeng/1610676


优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/459632

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。