前言:怎麼為 VM 匯出 qcow2 檔案? 備份或是其他理由都好。
在新版的 Prism Central 裡面,已經可以直接匯出/匯入 Image 了。如果覺得累,就不要下指令、跑 script
GUI 裡面提供嗎? 沒有 GUI 用 CLI 更快呀。
可以有效率的方式完成嗎? 目前來看,scripting 自動化是最佳的方式,這是一個重覆動作。
只要適當的運用 qemu-img cli 就可以了,以下的例子是把輸出丟到某個 NFS Server 上,並且還支援多 vdisk 喔 (但要修改 script 配合要求)。
#!/bin/bash
#
#
# setup NFS path 把 NFS Server 與 Path 設定正確
# exports file 我是全開都可讀寫 (rw,sync,all_squash)
#
nfs="10.42.93.231/var/nfsshare"
#
#
#
# you can change here to export all disks 這邊二行的意思是只處理 disk 0 還是全部都處理
for((i=0;i<${#diskuuid[@]};i++));
#for((i=0;i<1;i++));
do
qemu-img convert -f raw -O qcow2 -c nfs://127.0.0.1/$cntr/.acropolis/vmdisk/${diskuuid[$i]} -O qcow2 nfs://${nfs}/${vmname}-${i}-`date +%Y%m%d%H%M`.qcow2 &
done
我把原始 script 放在這裡下載
https://drive.google.com/open?id=173Jg7VFr4F6EaxZd9RakT3QnHN3TfJfX
這支 script 不收費,給有緣人。套句某名人說的:source code is your friend.
此版本加了不少防呆。
一方面檢查 VM 是不是存在,還有 VM 名字裡有空白字元也處理了 (@@請不要用空白字元呀)
放到任何一台 CVM 就可以執行。要改成 Web Service 也不是難事,靠你自己囉。