OpenStack Train版-15.創建並掛載存儲卷


1.創建並掛載存儲卷

創建一個1GB的卷

source ~/demo-openrc
openstack volume create --size 1 volume1

很短的時間后,卷狀態應該從creating 到available

[root@controller ~]# openstack volume list
+--------------------------------------+---------+-----------+------+-------------+
| ID | Name | Status | Size | Attached to |
+--------------------------------------+---------+-----------+------+-------------+
| 5e89f544-e204-436c-8d9c-25a77039796f | volume1 | available | 10 | |
+--------------------------------------+---------+-----------+------+-------------+ 

將卷附加到provider-vm1實例,可以在dashboard界面操作

openstack server add volume provider-vm1 volume1

查看卷清單

[root@controller ~]# openstack volume list

+--------------------------------------+---------+--------+------+------------------------------------------+
| ID | Name | Status | Size | Attached to |
+--------------------------------------+---------+--------+------+------------------------------------------+
| 75011e60-33fc-4061-98dc-7028e477efc9 | volume1 | in-use | 1 | Attached to selfservice-vm1 on /dev/vdb |
+--------------------------------------+---------+--------+------+------------------------------------------+

使用SSH訪問實例

使用fdisk命令驗證該卷是否作為/dev/vdb塊存儲設備

[root@controller ~]# ssh cirros@192.168.0.198
$ sudo fdisk -l

分區並格式化新添加的/dev/vdb

$ sudo fdisk /dev/vdb
Command (m for help): n #創建一個新分區
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p #創建一個主分區
Partition number (1-4, default 1): #分區默認編號為1
First sector (2048-2097151, default 2048): #磁盤分區中第一個扇區(從哪里開始) 默認的
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-2097151, default 2097151): #磁盤分區中最后1個扇區的位置 默認全部
Command (m for help): w #保存

查看創建的主分區

$ ls /dev/vdb*
/dev/vdb /dev/vdb1

格式化 創建文件系統

$ sudo mkfs.ext4 /dev/vdb1

臨時掛載

$ sudo mount /dev/vdb1 /mnt/
$ df -h|tail -1
/dev/vdb1 990.9M 2.5M 921.2M 0% /mnt

永久掛載

$ sudo su -
# echo '/dev/vdb1 /mnt/ xfs defaults 0 0' >>/etc/fstab

2.使用卷創建實例報錯的故障
從實例中分離cinder虛擬磁盤

umount卸載

openstack server remove volume provider-vm1 volume1
openstack volume delete volume1

刪除無法刪除的卷,用命令改變卷的狀態,然后刪除

cinder reset-state <volume> --state available
cinder delete <volume>

OpenStack創建實例提示失敗的具體原因如下:

did not finish being created even after we waited 241 seconds or 61 attempts. A its status is downloading.

即使等待了241秒或61次嘗試,仍無法完成創建。 其狀態為下載中。 

解決辦法

在計算節點上的nova.conf中有一個控制卷設備重試的參數:block_device_allocate_retries,可以通過修改此參數延長等待時間。
該參數默認值為60,這個對應了之前實例創建失敗消息里的61 attempts。我們可以將此參數設置的大一點,例如:180。這樣Nova組件就不會等待卷創建超時,也即解決了此問題。
然后重啟計算節點服務

openstack-config --set /etc/nova/nova.conf DEFAULT block_device_allocate_retries 180

systemctl restart libvirtd.service openstack-nova-compute.service


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM