天天看點

OpenStack之部署塊存儲服務cinder

塊存儲服務

    • 簡介
    • 部署環境
    • 在控制節點上安裝和配置塊裝置存儲服務(cinder)
    • 安裝并配置一個存儲節點
    • 圖形化界面通路

簡介

OpenStack塊存儲服務(cinder)為虛拟機添加持久的存儲,塊存儲提供一個基礎設施為了管理卷,以及和OpenStack計算服務互動,為執行個體提供卷。此服務也會激活管理卷的快照和卷類型的功能。

塊存儲服務(cinder)為執行個體提供塊存儲。存儲的配置設定和消耗是由塊存儲驅動器,或者多後端配置的驅動器決定的。還有很多驅動程式可用:NAS/SAN,NFS,ISCSI,Ceph等。

典型情況下,塊服務API和排程器服務運作在控制節點上。取決于使用的驅動,卷伺服器可以運作在控制節點、計算節點或單獨的存儲節點。

更多内容參考官網:https://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/cinder.html

部署環境

我已經部署好了OpenStack平台并且裝了可視化工具。可參照我之前的文章

OpenStack平台的搭建:https://blog.csdn.net/m0_55005311/article/details/119750200?spm=1001.2014.3001.5501
OpenStack可視化:https://blog.csdn.net/m0_55005311/article/details/119773544?spm=1001.2014.3001.5501

三台虛拟機:
controller控制節點		192.168.122.11		
compute1計算節點			192.168.122.12
block1塊節點				192.168.122.13		本次部署建立的虛拟機,需要兩塊硬碟,openstack源已配好,已時間同步,已更新軟體包
!!!三台主機的域名解析都已做好
           

在控制節點上安裝和配置塊裝置存儲服務(cinder)

配置步驟參考官網:https://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/cinder-controller-install.html

安裝和配置塊存儲服務之前,必須建立資料庫、建立服務證書和API端點

建立 cinder 資料庫:
CREATE DATABASE cinder;

允許 cinder 資料庫合适的通路權限:
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \
  IDENTIFIED BY 'cinder';
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' \
  IDENTIFIED BY 'cinder';
           

要建立服務證書,完成這些步驟

[[email protected] ~]# openstack user create --domain default --password cinder cinder
[[email protected] ~]# openstack role add --project service --user cinder admin
           

建立 cinder 和 cinderv2 服務實體

[[email protected] ~]# openstack service create --name cinder \
>   --description "OpenStack Block Storage" volume
[[email protected] ~]# openstack service create --name cinderv2 \
>   --description "OpenStack Block Storage" volumev2
           

建立塊裝置存儲服務的 API 入口點

[[email protected] ~]# openstack endpoint create --region RegionOne \
>   volume public http://controller:8776/v1/%\(tenant_id\)s
[[email protected] ~]# openstack endpoint create --region RegionOne \
>   volume internal http://controller:8776/v1/%\(tenant_id\)s
[[email protected] ~]#  openstack endpoint create --region RegionOne \
>   volume admin http://controller:8776/v1/%\(tenant_id\)s
[[email protected] ~]# openstack endpoint create --region RegionOne \
>   volumev2 public http://controller:8776/v2/%\(tenant_id\)s
[[email protected] ~]# openstack endpoint create --region RegionOne \
>   volumev2 internal http://controller:8776/v2/%\(tenant_id\)s
[[email protected] ~]# openstack endpoint create --region RegionOne \
>   volumev2 admin http://controller:8776/v2/%\(tenant_id\)s
           

安裝軟體包并修改配置檔案

[[email protected] ~]# yum install openstack-cinder -y
[[email protected] ~]# vim /etc/cinder/cinder.conf
#按照連結進行修改https://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/cinder-controller-install.html
#密碼要記得修改
           
OpenStack之部署塊存儲服務cinder

初始化塊裝置服務的資料庫

配置計算節點以使用塊裝置存儲

OpenStack之部署塊存儲服務cinder

重新開機計算API 服務

啟動塊裝置存儲服務,并将其配置為開機自啟

安裝并配置一個存儲節點

安裝 LVM 包,啟動LVM的metadata服務并且設定該服務随系統啟動(系統一般預設包含)

[[email protected] ~]# yum install lvm2 -y
[[email protected] ~]# systemctl enable --now lvm2-lvmetad.service
           

建立LVM 實體卷,建立 LVM 卷組 cinder-volumes

[[email protected] ~]# pvcreate /dev/vdb		#要檢視自己的磁盤是不是vdb
[[email protected] ~]# vgcreate cinder-volumes /dev/vdb
           
OpenStack之部署塊存儲服務cinder
隻有執行個體可以通路塊存儲卷組。不過,底層的作業系統管理這些裝置并将其與卷關聯。預設情況下,LVM卷掃描工具會掃描

/dev

目錄,查找包含卷的塊儲存設備。如果項目在他們的卷上使用LVM,掃描工具檢測到這些卷時會嘗試緩存它們,可能會在底層作業系統和項目卷上産生各種問題。必須重新配置LVM,讓它隻掃描包含

cinder-volume

卷組的裝置。

如果存儲節點在作業系統磁盤上使用了 LVM,還必需添加相關的裝置到過濾器中。

OpenStack之部署塊存儲服務cinder
[[email protected] ~]# vim /etc/lvm/lvm.conf
[[email protected] ~]# vim /etc/lvm/lvm.conf
filter = [ "a/vda/", "a/vdb/", "r/.*/"]
           
OpenStack之部署塊存儲服務cinder

安裝軟體包

[[email protected] ~]# yum install openstack-cinder targetcli python-keystone -y
[[email protected] ~]# vim /etc/cinder/cinder.conf
#參考連結修改https://docs.openstack.org/mitaka/zh_CN/install-guide-rdo/cinder-storage-install.html
#注意修改密碼
           

lvm子產品沒有,在最後加上。用iscsi協定把lvm從本地的邏輯卷組裡分出去

OpenStack之部署塊存儲服務cinder

啟動塊存儲卷服務及其依賴的服務,并将其配置為随系統啟動。因為用到了iscsi協定,是以要啟動target

在控制節點列出服務元件以驗證是否每個程序都成功啟動

OpenStack之部署塊存儲服務cinder

圖形化界面通路

在dashborad用demo使用者身份登入,可以看到多了一個功能是卷

OpenStack之部署塊存儲服務cinder

建立一個雲硬碟

OpenStack之部署塊存儲服務cinder

有很多功能,可以擴充雲硬碟,建立快照等

OpenStack之部署塊存儲服務cinder

選擇管理連接配接加到之前建立的雲主機裡,這時進入雲主機

fdisk -l

就可以看到這個1G的硬碟,

mkfs.xfs /dev/vdb

就可以格式化硬碟挂載使用了

OpenStack之部署塊存儲服務cinder

這個硬碟其實是在block1節點上的,是使用iscsi協定連接配接到雲主機上

OpenStack之部署塊存儲服務cinder

注意如果對雲盤進行擴容,隻是邏輯方面進行了擴容,檔案系統已經格式化過了,是以實體空間還是原來的大小。這個時候想變大就對檔案系統進行拉伸

xfs_growfs /dev/vdb

繼續閱讀