发表于 2019-2-1 14:02:47

OpenStack集成Ceph

  OpenStack有3个组件可以使用Ceph:
1.      Glance:Glance可以把镜像存储在Ceph上;
2.      Cinder:Cinder负责管理volume,把volume挂载给instance使用或者直接从volume启动instance。集成Ceph后可以让Cinder在Ceph上创建volume;
3.      Nova:在OpenStack Havana版本开始,Nova可以直接把instance的disk存放在Ceph上。
下面记录了如何把这些组件改造为使用Ceph。
  环境介绍:
  OpenStack Queens版本,1台控制节点controller,1台计算节点compute;
  操作系统:CentOS 7.5
  Ceph版本12.2.4,luminous
第一步,创建存储池
  在Ceph集群上总共创建3个存储池,分别给Glance,Cinder和Nova使用,
# ceph osd pool create images 192 #Glance的存储池
# ceph osd pool create volumes 192 #Cinder的存储池
# ceph osd pool create vms 192 #Nova的存储池
第二步,配置OpenStack的Ceph客户端
1.      拷贝ceph.conf
把Ceph的配置文件/etc/ceph/ceph.conf拷贝到2台OpenStack节点上,控制节点和计算节点都需要,因为他们都要跟Ceph通信。
2.      安装软件包
在控制节点安装python-rbd和ceph软件包:
# yum install -y python-rbd ceph
  在计算节点安装ceph:
# yum install -y ceph
  如果不安装ceph,OpenStack在使用Ceph时会报找不到ceph命令。
3.      配置cephx认证
#创建client.cinder用户给Cinder和Nova使用,cinder用户有存储池volumes、vms和images的所有权限
# ceph auth get-or-create client.cinder mon 'allow   r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=volumes,   allow rwx pool=vms, allow rx pool=images'
#创建client.glance用户给Glance使用,glance用户有存储池images的所有权限
# ceph auth get-or-create client.glance mon 'allow   r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=images'
生成2个用户的密钥文件,
# ceph auth   get-or-create client.cinder > /etc/ceph/ceph.client.cinder.keyring
# ceph auth   get-or-create client.glance > /etc/ceph/ceph.client.glance.keyring
然后把/etc/ceph/ceph.client.cinder.keyring和/etc/ceph/ceph.client.glance.keyring拷到controller的/etc/ceph下,并且修改文件权限:
# chown cinder:cinder   /etc/ceph/ceph.client.cinder.keyring
# chown   glance:glance /etc/ceph/ceph.client.glance.keyring
把/etc/ceph/ceph.client.cinder.keyring拷到compute的/etc/ceph下,并且修改文件权限:
# chown nova:nova   /etc/ceph/ceph.client.cinder.keyring
4.      配置compute节点的libvirt
在ceph上获取client.cinder的key
# ceph auth get-key   client.cinder > client.cinder.key
把client.cinder.key拷到compute节点的/etc/ceph下,在compute节点上执行以下步骤:
# cat > secret.xml
页: [1]
查看完整版本: OpenStack集成Ceph