1. 程式人生 > 實用技巧 >第九步:使用nfs作為cinder-controller後端儲存

第九步:使用nfs作為cinder-controller後端儲存

簡介

無論是分散式儲存還是商業儲存,都支援nfs協議;

之前是lvm作為cinder-controller後端儲存,現在把cinder-controller後端儲存換成nfs,則也不需要安裝openstack-cinder服務

NFS伺服器

1、yum install nfs-utils -y

2、mkdir /data/cinder -p   #用於存放cinder-controller建立的卷

3、vim /etc/exports
/data/cinder *(rw,no_root_squash)

4、systemctl restart nfs

cinder-controller節點

配置cinder-controller節點使用nfs

1、vim /etc/cinder/cinder.conf
[DEFAULT]
enabled_backends = nfs   #告訴cinder-controller,使用nfs作為後端儲存

#state_path = /var/lib/cinder  #$state_path 這個變數定義了NFS的掛載路徑

[nfs]  #如果想使用nfs作為後端儲存,必須在/usr/lib/python2.7/site-packages/cinder/下,有nfs驅動才可
volume_backend_name = openstack-NFS                   #指定後端儲存名稱,用以區分不同的後端儲存,如使用lvm或者nfs   
volume_driver = cinder.volume.drivers.nfs.NfsDriver   #指定NFS驅動;通過NFS驅動程式,實現卷的建立、管理、刪除,包括卷的拉伸
nfs_shares_config = /etc/cinder/nfs_shares            #定義NFS掛載的配置檔案路徑,cinder服務需要有許可權讀取檔案
nfs_mount_point_base = $state_path/mnt                #$state_path為cinder的變數,定義NFS掛載點

2、vim /etc/cinder/nfs_shares   #編輯nfs掛載的配置檔案
172.31.7.105:/data/cinder   #指定NFS地址及共享目錄

3、chown root.cinder /etc/cinder/nfs_shares  #修改檔案的許可權

4、systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service

5、tail -f /var/log/cinder/*.log                       #日誌不能有報錯

6、systemctl restart openstack-cinder-volume.service   #controller節點上必須開啟此服務,將controller也變為一個儲存節點

7、systemctl enable openstack-cinder-volume.service  

8、df -TH                #檢視是否自動掛載NFS

9、cinder service-list   #列出cinder的後端儲存服務

controller-建立型別

當有LVM及NFS兩個後端儲存,建立卷的時候需要通過型別來指定是基於哪個後端儲存建立卷

1、cinder type-create lvm   #建立個型別名為lvm

2、cinder type-create nfs   #建立個型別名為nfs

3、cinder type-key lvm set volume_backend_name=Openstack-lvm
#將lvm型別與lvm後端儲存進行關聯;Openstack-lvm這個後端儲存名稱為cinder儲存節點配置檔案中給lvm模組所設定的名稱

4、cinder type-key lvm set volume_backend_name=openstack-NFS
#將nfs型別與NFS後端儲存進行關聯;openstack-NFS這個後端儲存名稱為cinder控制節點配置檔案中給nfs模組所設定的名稱

5、這樣在建立卷的時候,就可以根據型別選擇所關聯的後端儲存服務(46)
6、ll /data/cinder   #在nfs伺服器的此目錄下,會有一個以卷的ID為命名的塊裝置(data)檔案

7、剩下的步驟與lvm後端儲存操作一樣,將卷與虛擬機器關聯,然後格式化檔案系統、掛載磁碟就可以使用

8、雖然後端儲存使用的是NFS(基於網路的檔案系統),但cinder使用的是iscsi協議,他會把裝置以塊兒裝置的方式共享給伺服器使用;塊兒裝置需要先格式化檔案系統才可以使用


##
注意:
1、通過iscsi協議在nfs檔案系統上模擬出塊裝置,所以只要是塊兒裝置都可以進行空間拉伸,塊兒裝置有獨立的儲存,獨立的檔案系統;但是檔案系統不能進行拉伸,共享出來的如果只是個目錄,則無法進行拉伸

2、當有cinder後端儲存後,之後建立的所有虛擬機器的系統盤都會放到cinder的後端儲存上,這樣在虛擬機器遷移的時候,只需要把一個node節點上的計算資源(cpu、記憶體)拷貝到另一個node節點上,系統盤就不需要進行拷貝了,提高了虛擬機器的遷移速度