找回密码
 注册
查看: 3866|回复: 0

Cinder配置多Ceph后端步骤

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2018-12-2 17:56:36 | 显示全部楼层 |阅读模式
1. 检查cinder当前backend配置
使用cinder service-list,查看cinder-volume服务的Host字段格式。
旧版格式:
) N! n+ |$ T, ?1 F- A/ k7 q# N
新版格式:
+ a2 I. O& u  d3 g& C3 J
旧版中Host字段是cinder-volume服务所在节点的HOSTNAME,新版中Host字段是HOSTNAME@BACKEND。
如果是旧版,需要先修改为新版,见步骤2。
如果是新版,不需要修改,直接执行步骤3。

/ q# j( {% u1 O: d2 B
2. 修改旧版backend配置为新版
编辑/etc/cinder/cinder.conf文件,删除其中原有的ceph backend相关配置:
[backcolor=rgb(245, 245, 245) !important][url=][/url]+ f2 ~. r6 g8 \! M8 J( W, V
[DEFAULTrbd_store_chunk_size = 4rbd_max_clone_depth = 5rbd_flatten_volume_from_snapshot = truerbd_ceph_conf = /etc/ceph/ceph.confrbd_pool = volumesrados_connect_timeout = -1volume_driver = cinder.volume.drivers.rbd.RBDDriver[backcolor=rgb(245, 245, 245) !important][url=][/url]
$ D3 `% y, ?/ S* [7 C7 k( P1 b. T% k1 w
添加如下配置:
[backcolor=rgb(245, 245, 245) !important][url=][/url]
, }, T+ {1 g* x+ E[DEFAULTenabled_backends = ceph[cephrbd_pool = volumesrbd_ceph_conf = /etc/ceph/ceph.confrbd_flatten_volume_from_snapshot = truerbd_max_clone_depth = 5rbd_store_chunk_size = 4rados_connect_timeout = -1glance_api_version = 2volume_backend_name=cephvolume_driver = cinder.volume.drivers.rbd.RBDDriver[backcolor=rgb(245, 245, 245) !important][url=][/url]
+ w6 [, T' o- r7 k* E$ Z) n% C# l! ]; z+ |
重启cinder-volume服务:
# service cinder-volume restart                    # 对于Ubuntu 14.04# systemctl restart openstack-cinder-volume        # 对于CentOS 7
  _" c" a; x! [- y8 S
执行cinder service-list,查看cinder-volume的Host字段是否变为新版格式。
然后更新已经创建的volume的host属性:
# cinder-manage volume update_host --currenthost HOSTNAME --newhost HOSTNAME@BACKEND
: `3 \8 s0 F0 r7 M0 {. w
例如:
# cinder-manage volume update_host --currenthost node-1.domain.tld --newhost node-1.domain.tld @ceph& E; H$ s1 e5 q, J
查看volume 的os-vol-host-attr:host属性已经变为HOSTNAME@BACKEND#RBD的格式:

  F# l1 x% @4 i6 m
到此,旧版配置格式已经改成新版配置格式,进行步骤3添加另一个ceph后端。
5 k4 y$ r. o! S% {0 A% f5 A
3. 添加一个ceph后端
将新的ceph集群的配置文件复制到所有openstack节点(包括控制节点和计算节点)。
注意:不同ceph集群依靠配置文件的名字区分,如:已有ceph集群的配置文件为/etc/ceph/ceph.conf,如果新集群全用SAS盘,配置文件可以命名为:/etc/ceph/ceph-sas.conf。
然后编辑/etc/cinder/cinder.conf,添加新的ceph backend,编辑完后的相关配置如下:
[backcolor=rgb(245, 245, 245) !important][url=][/url]
( I, y* z) L( K7 d* T5 K* I% [9 q2 D% u# R[DEFAULTenabled_backends = ceph,ceph-sas[cephrbd_pool = volumesrbd_ceph_conf = /etc/ceph/ceph.confrbd_flatten_volume_from_snapshot = truerbd_max_clone_depth = 5rbd_store_chunk_size = 4rados_connect_timeout = -1glance_api_version = 2volume_backend_name=cephvolume_driver = cinder.volume.drivers.rbd.RBDDriver[ceph-sasrbd_pool = volumesrbd_ceph_conf = /etc/ceph/ceph-sas.confrbd_flatten_volume_from_snapshot = truerbd_max_clone_depth = 5rbd_store_chunk_size = 4rados_connect_timeout = -1glance_api_version = 2volume_backend_name=ceph-sasvolume_driver = cinder.volume.drivers.rbd.RBDDriver[backcolor=rgb(245, 245, 245) !important][url=][/url]/ ]% B# f; g2 Y( d; i& a+ F! o

; r5 R3 J! g/ k: h
重启cinder-volume服务:
# service cinder-volume restart                    # 对于Ubuntu 14.04# systemctl restart openstack-cinder-volume        # 对于CentOS 7( g; ]. t) R2 I1 {# }% V: I
执行cinder service-list命令,可以看到每个后端对应一个cinder-volume服务:
- }6 s+ D9 s- Z; P, ]3 i
3 z1 I% d( U! M3 Z7 n
4. 配置volume-type
对于每个ceph后端,创建一个volume type,并将volume type关联配置文件中的volume_backend_name:
# cinder type-create ceph# cinder type-key ceph set volume_backend_name=ceph# cinder type-create ceph-sas# cinder type-key ceph-sas set volume_backend_name=ceph-sas
7 b( r- K) H! \/ Y
然后执行cinder type-list可以看到配置的volume type:

: E1 D8 q7 a- P2 E
* Z+ S1 J/ k$ i3 Q7 g
5. 创建卷
此后创建卷时,可以指定volume type,将卷创建到指定的ceph后端:
# cinder create 10 --name vol-01 --volume-type ceph-sas
5 I0 n  m2 p% ]1 |
前端也可选则volume type:
% u5 O0 k+ d) Y: }& r" V$ \
注:如果不指定volume type,cinder-scheduler会忽略volume type,按默认的调度器从所有cinder-volume调度。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 04:05 , Processed in 0.016987 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表