Cinder配置多Ceph後端步驟

2022-08-23 19:00:13 字數 3672 閱讀 4456

1. 檢查cinder當前backend配置

使用cinder service-list,檢視cinder-volume服務的host欄位格式。

舊版格式:

新版格式:

舊版中host欄位是cinder-volume服務所在節點的hostname,新版中host欄位是hostname@backend。

如果是舊版,需要先修改為新版,見步驟2。

如果是新版,不需要修改,直接執行步驟3。

2. 修改舊版backend配置為新版

[

default

]rbd_store_chunk_size = 4rbd_max_clone_depth = 5rbd_flatten_volume_from_snapshot =true

rbd_ceph_conf =/etc/ceph/ceph.conf

rbd_pool =volumes

rados_connect_timeout = -1volume_driver = cinder.volume.drivers.rbd.rbddriver

新增如下配置:

[

default

]enabled_backends =ceph

[ceph

]rbd_pool =volumes

rbd_ceph_conf =/etc/ceph/ceph.conf

rbd_flatten_volume_from_snapshot =true

rbd_max_clone_depth = 5rbd_store_chunk_size = 4rados_connect_timeout = -1glance_api_version = 2volume_backend_name=ceph

volume_driver = cinder.volume.drivers.rbd.rbddriver

重啟cinder-volume服務:

# service cinder-volume restart                    # 對於ubuntu 14.04

# systemctl restart openstack-cinder-volume # 對於centos 7

執行cinder service-list,檢視cinder-volume的host欄位是否變為新版格式。

然後更新已經建立的volume的host屬性:

# cinder-manage volume update_host --currenthost hostname --newhost hostname@backend
例如:

# cinder-manage volume update_host --currenthost node-1.domain.tld --newhost node-1.domain.tld @ceph
檢視volume 的os-vol-host-attr:host屬性已經變為hostname@backend#rbd的格式:

到此,舊版配置格式已經改成新版配置格式,進行步驟3新增另乙個ceph後端。

3. 新增乙個ceph後端

將新的ceph集群的配置檔案複製到所有openstack節點(包括控制節點和計算節點)。

注意:不同ceph集群依靠配置檔案的名字區分,如:已有ceph集群的配置檔案為/etc/ceph/ceph.conf,如果新集群全用sas盤,配置檔案可以命名為:/etc/ceph/ceph-sas.conf。

[

default

]enabled_backends = ceph,ceph-sas

[ceph

]rbd_pool =volumes

rbd_ceph_conf =/etc/ceph/ceph.conf

rbd_flatten_volume_from_snapshot =true

rbd_max_clone_depth = 5rbd_store_chunk_size = 4rados_connect_timeout = -1glance_api_version = 2volume_backend_name=ceph

volume_driver =cinder.volume.drivers.rbd.rbddriver

[ceph-sas

]rbd_pool =volumes

rbd_ceph_conf =/etc/ceph/ceph-sas.conf

rbd_flatten_volume_from_snapshot =true

rbd_max_clone_depth = 5rbd_store_chunk_size = 4rados_connect_timeout = -1glance_api_version = 2volume_backend_name=ceph-sas

volume_driver = cinder.volume.drivers.rbd.rbddriver

重啟cinder-volume服務:

# service cinder-volume restart                    # 對於ubuntu 14.04

# systemctl restart openstack-cinder-volume # 對於centos 7

執行cinder service-list命令,可以看到每個後端對應乙個cinder-volume服務:

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

然後執行cinder type-list可以看到配置的volume type:

5. 建立卷

此後建立卷時,可以指定volume type,將卷建立到指定的ceph後端:

# cinder create 10 --name vol-01 --volume-type ceph-sas
前端也可選則volume type:

注:如果不指定volume type,cinder-scheduler會忽略volume type,按預設的排程器從所有cinder-volume排程。

OpenStack Cinder 多後端配置

要啟用cinder多後端,必須配置 etc cinder cinder.conf檔案中的enable backends選項,它定義了乙個用逗號分隔的配置組列表,每個配置組與乙個後端關聯。每個配置組包含一組選項,用以配置該後端的屬性。下面是包含三個配置組的乙個例子 enable backends sa...

ceph 後端儲存的型別

ceph 後端支援多種儲存引擎,以外掛程式式的方式來進行管理使用,目前支援 filestore kvstore memstore 以及最新的 bluestore 目前預設使用的 filestore 但是因為 filestore 在寫資料前需要先寫 journal 會有一倍的寫放大,並且 filest...

openstack搭建之 cinder配置(12)

mysql u root proot create database cinder grant all privileges on cinder.to cinder localhost identified by cinder dbpass grant all privileges on cinde...