在ceph监视器上执行

CINDER_PASSWD='cinder1234!'

controllerHost='controller'

RABBIT_PASSWD='0penstackRMQ'

1.创建pool池

为cinder-volume服务创建pool池(因为我只有一个OSD节点,所以要将副本数设置为1)

ceph osd pool create cinder-volumes 32

ceph osd pool set cinder-volumes size 1

ceph osd pool application enable  cinder-volumes rbd

ceph osd lspools

2.查看pool池的使用情况

ceph df

3.创建账号

ceph auth get-or-create client.cinder-volumes mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=cinder-volumes, allow rwx pool=glance-images' -o /etc/ceph/ceph.client.cinder-volumes.keyring

#查看

ceph auth ls | grep -EA3 'client.(cinder-volumes)'

4.修改ceph.conf配置文件并同步到所有的监视器节点(这步一定要操作)

su - cephd

cd ~/ceph-cluster/

cat <> ceph.conf

[client.cinder-volumes]

keyring = /etc/ceph/ceph.client.cinder-volumes.keyring

EOF

ceph-deploy --overwrite-conf admin ceph-mon01

exit

5.安装cinder-volume组件和ceph客户端(如果ceph监视器是在控制节点上不需要执行这一步)

yum -y install openstack-cinder python-keystone ceph-common

6.使用uuidgen生成一个uuid(确保cinder和libvirt中的UUID一致)

uuidgen

运行uuidgen命令可以得到下面的UUID值:

086037e4-ad59-4c61-82c9-86edc31b0bc0

7.配置cinder-volume服务与cinder-api服务进行交互

openstack-config --set  /etc/cinder/cinder.conf DEFAULT transport_url rabbit://openstack:${RABBIT_PASSWD}@${controllerHost}:5672

openstack-config --set /etc/cinder/cinder.conf cache backend  oslo_cache.memcache_pool

openstack-config --set /etc/cinder/cinder.conf cache enabled  true

openstack-config --set /etc/cinder/cinder.conf cache memcache_servers  ${controllerHost}:11211

openstack-config --set  /etc/cinder/cinder.conf DEFAULT auth_strategy  keystone

openstack-config --set  /etc/cinder/cinder.conf keystone_authtoken  auth_uri  http://${controllerHost}:5000

openstack-config --set  /etc/cinder/cinder.conf keystone_authtoken  auth_url  http://${controllerHost}:5000

openstack-config --set  /etc/cinder/cinder.conf keystone_authtoken  auth_type password

openstack-config --set  /etc/cinder/cinder.conf keystone_authtoken  project_domain_id  default

openstack-config --set  /etc/cinder/cinder.conf keystone_authtoken  user_domain_id  default

openstack-config --set  /etc/cinder/cinder.conf keystone_authtoken  project_name  service

openstack-config --set  /etc/cinder/cinder.conf keystone_authtoken  username  cinder

openstack-config --set  /etc/cinder/cinder.conf keystone_authtoken  password  ${CINDER_PASSWD}

openstack-config --set  /etc/cinder/cinder.conf oslo_concurrency lock_path  /var/lib/cinder/tmp

8.配置cinder-volume服务使用的后端存储为ceph

openstack-config --set /etc/cinder/cinder.conf  DEFAULT  enabled_backends  ceph

9.配置cinder-volume服务驱动ceph

openstack-config --set /etc/cinder/cinder.conf  ceph volume_driver  cinder.volume.drivers.rbd.RBDDriver

openstack-config --set /etc/cinder/cinder.conf  ceph rbd_pool  cinder-volumes

openstack-config --set /etc/cinder/cinder.conf  ceph rbd_user cinder-volumes

openstack-config --set /etc/cinder/cinder.conf  ceph rbd_ceph_conf  /etc/ceph/ceph.conf

openstack-config --set /etc/cinder/cinder.conf  ceph rbd_flatten_volume_from_snapshot  false

openstack-config --set /etc/cinder/cinder.conf  ceph bd_max_clone_depth  5

openstack-config --set /etc/cinder/cinder.conf  ceph rbd_store_chunk_size  4

openstack-config --set /etc/cinder/cinder.conf  ceph rados_connect_timeout  -1

openstack-config --set /etc/cinder/cinder.conf  ceph glance_api_version 2

openstack-config --set /etc/cinder/cinder.conf  ceph rbd_secret_uuid  086037e4-ad59-4c61-82c9-86edc31b0bc0

10.启动cinder-volume服务

systemctl enable openstack-cinder-volume.service

systemctl start openstack-cinder-volume.service

systemctl status openstack-cinder-volume.service

在需要挂载ceph卷的所有计算节点上执行

1.创建secret文件(UUID需要与cinder服务中一致)

cat << EOF > ~/secret.xml

086037e4-ad59-4c61-82c9-86edc31b0bc0

client.cinder-volumes secret

EOF

2.从ceph监视器上获取cinder-volumes账户的密钥环

ceph auth get-key client.cinder-volumes

得到如下的结果:

AQCxfDFdgp2qKRAAUY/vep29N39Qv7xWKYqMUw==

3.在libvirt中注册UUID

virsh secret-define --file ~/secret.xml

4.在libvirt中添加UUID和cinder-volumes密钥环

virsh secret-set-value --secret 086037e4-ad59-4c61-82c9-86edc31b0bc0 --base64 AQCxfDFdgp2qKRAAUY/vep29N39Qv7xWKYqMUw==

5.查看libvirt中添加的UUID

virsh secret-list

6.重启libvirt

systemctl restart libvirtd.service

systemctl status libvirtd.service

出错回滚的方案

1.删除pool池

先在所有的监视器节点上开启删除pool的权限,然后才可以删除。

删除pool时ceph要求必须输入两次pool名称,同时加上--yes-i-really-really-mean-it选项。

echo '

mon_allow_pool_delete = true

[mon]

mon allow pool delete = true

' >> /etc/ceph/ceph.conf

systemctl restart ceph-mon.target

ceph osd pool delete cinder-volumes cinder-volumes  --yes-i-really-really-mean-it

2.删除账号

ceph auth del client.cinder-volumes

3.删除libvirt中注册的UUID和cinder-volumes密钥环

查看:

virsh secret-list

删除(secret-undefine后跟uuid值):

virsh secret-undefine  086037e4-ad59-4c61-82c9-86edc31b0bc0

cinder与ceph的区别_配置cinder-volume服务使用ceph作为后端存储相关推荐

  1. 前后端分离和微服务_为什么说微服务,要从前后端分离开始?一文带你揭秘深入微服务...

    前言 既要低头赶路,又要抬头望天,科技是为人服务的,任何技术背后都有更深层次的考量. 之前的文章中咱们聊了很多微服务的相关内容,简而言之,微服务的本质,就是一种可以加速分工.促进合作的新协作机制.知其 ...

  2. palapaweb怎样开启服务_为什么说微服务,要从前后端分离开始?一文带你揭秘深入微服务...

    前言 既要低头赶路,又要抬头望天,科技是为人服务的,任何技术背后都有更深层次的考量. 之前的文章中咱们聊了很多微服务的相关内容,简而言之,微服务的本质,就是一种可以加速分工.促进合作的新协作机制.知其 ...

  3. cinder与ceph的区别_分布式存储基础、Ceph、cinder及华为软件定义的存储方案 -

    块存储与分布式存储 块存储,简单来说就是提供了块设备存储的接口.通过向内核注册块设备信息,在Linux中通过lsblk可以得到当前主机上块设备信息列表. 本文包括了单机块存储介绍.分布式存储技术Cep ...

  4. oppoa5系统服务器是什么,OPPO A5一共有几个版本有什么区别_配置参数介绍哪个最值得买...

    7月7日,OPPO A5正式上市,13日开启预售,下面一起来看一下这款手机. 该机主打高颜值,官方介绍,OPPO A5采用纳米级微晶工艺,精密计算每一条切线的角度,使机身呈现出跟随光变化的空间纹路,就 ...

  5. linux 后端存储,配置NFS网络存储作为cinder的后端存储

    安装cinder和nfs yum install -y openstack-cinder yum install cifs-utils 在controller节点配置nfs [[email prote ...

  6. Ceph学习笔记2-在Kolla-Ansible中使用Ceph后端存储

    环境说明 使用 Kolla-Ansible 请参考<使用 Kolla-Ansible 在 CentOS 7 单节点上部署 OpenStack Pike >: 部署 Ceph 服务请参考&l ...

  7. OpenStack配置Cinder出现“You must set cylinders.You can do this from the extra functions menu.”解决办法

    ** OpenStack配置Cinder出现"You must set cylinders.You can do this from the extra functions menu.&qu ...

  8. 各类分布式文件系统的区别和概述 | HDFS、GFS、Ceph、TFS、Moosefs、IPFS等

    文章目录 参考 分布式文件系统定义 各类系统对比图 各类文件系统简介 shepdog shepdog基本架构 Ceph FastDFS fastDFS介绍 Tracker server 追踪服务器 S ...

  9. 【ceph】什么是Ceph?------(MinIO和ceph的区别|GFS(GlusterFS)、MFS、Ceph、Lustre|文档)...

    目录 什么是Ceph? 简介 什么是块存储.文件存储和对象存储以及区别? Ceph存储架构 Ceph数据的存储 Ceph开发如何入门 部署实例 MinIO和ceph ceph和GFS(GlusterF ...

最新文章

  1. xp系统蓝屏代码7b_电脑蓝屏重启不求人!学会这个方法,自己就能轻松解决!...
  2. mysql mybatis 主键id_MyBatis+MySQL 返回插入的主键ID-Go语言中文社区
  3. 破解RSA的一些技术
  4. 梁云 北大 计算机,北京大学信息技术高等研究院
  5. P1450 [HAOI2008]硬币购物
  6. h5画布动画_如何使用CCapture保存画布动画
  7. Bing Maps进阶系列八:在Bing Maps中集成OpenStreetMap地图
  8. Xml的编码和Bom
  9. Get value from agent failed: cannot connect to [[192.168.121.128]:10050]:[4]Interrupted systemctl ca
  10. python提取列表中文本_Python正则表达式:从文本文件中提取关键字后的元组列表...
  11. matlab小波变换学习入门
  12. 51nod1521 一维战舰
  13. threejs中引入draco压缩后的模型
  14. python 爬取链家北京租房信息
  15. 【学习笔记】投资理财,基金基础知识科普入门学习,凭运气赚回来的钱,会凭实力亏掉_20210115
  16. discuz手机版帖子页面支持表格添加边框及边框颜色
  17. C# 待用户确认对话框(确定/取消)
  18. IT职场老油条亲传:教你如何在公司汇报工作时表现更亮眼
  19. 麒麟950,麒麟960,麒麟970芯片处理器参数比较分析
  20. 用python基础知识绘制任意格数的棋盘进行五子棋游戏

热门文章

  1. ReentrantLock实现原理
  2. Python调用seek(pos,mode)方法报错Can‘t do nonzero cur-relative seeks
  3. java利用穿透_Java本地的項目,怎么可以讓別人通過外網訪問-內網穿透
  4. java button随机颜色_Javascript点击按钮随机改变数字与其颜色
  5. quartz的负载均衡
  6. 如何在mysql中创建过程_如何在MySQL 中创建存储过程?
  7. 一次SpringBoot AutoWired 注入服务为null的事件
  8. 在JAVA中把JSON数据格式化输出到控制台
  9. fatal: Could not read from remote repository.
  10. MYSQL5.6创建表报错 [ERR] 1273 - Unknown collation: ‘utf8mb4_0900_ai_ci‘