前奏:因为虚拟机的资源是动态添加,虚拟机的容量可能会随着数据量的增大而须要备份。因此须要动态的为vm添加存储卷。当volume再也不须要时再卸载便可。
能够从dashboard和命令行下,如下都是从命令行下实现:
扩容步骤:
1.新建volume
执行:nova volume-create --display-name $your_name $capacity_num
2.把新建的volume添加到VM中
执行:nova volume-attach $VM_ID $volume_ID $device_name
3.把添加volume的虚拟机重启,而后进入系统,切换到root用户。
4.检查磁盘:fdisk -l 找到刚添加的磁盘,好比/dev/vdb。
5.为磁盘分区:
执行:fdisk /dev/vdb
6.把磁盘格式化为ext4文件系统:
以vdb1为例,执行:mkfs -t ext4 /dev/vdb1
7.新建目录,作为磁盘挂载地址:
执行:mkdir /home/vdb1
8.挂载:
执行:mount /dev/vbd1 /home/vdb1
ok!!!
卸载volume步骤:
1.中止磁盘使用后
执行:umount /dev/vdb1
若是出错,可执行:lsof | grep vdb1,找到进程号后,杀掉进程,以后推出。再次卸载便可。
2.把磁盘从依附的VM中移除:
执行:nova volume-detach $VM_ID $volume_ID
volume被卸载后,它里面的数据仍是存在的,被卸载的volume仍是能够被重复利用的,步骤和扩容同样,只是不须要格式化磁盘。