Volume 除了可以用作 instance 的資料盤,也可以作為啟動盤(Bootable Volume),那麼如何使 volume 成為 bootable 呢?
現在我們打開 instance 的 launch 操作界面。
這裡有一個下拉菜單“Instance Boot Source”。以前我們 launch instance 要麼直接從 image launch(Boot from image),要麼從 instance 的 snapshot launch(Boot from snapshot)。
這兩種 launch 方式下,instance 的啟動盤 vda 均為鏡像檔案,存放路徑為計算節點 /opt/stack/data/nova/instances/<Instance ID>/disk,例如:
下拉清單的後三項則可以将 volume 作為 instance 的啟動盤 vda,分别為:
Boot from volume
直接從現有的 bootable volume launch
Boot from image (create a new volume)
建立一個新的 volume,将 image 的資料 copy 到 volume,然後從該 volume launch
Boot from volume snapshot (create a new volume)
通過指定的 volume snapshot 建立 volume,然後從該 volume launch,當然前提是該snapshot 對應的源 volume 是 bootable 的。
下面我們以 Boot from image (create a new volume)為例,看如何從 volume 啟動。
選擇 cirros 作為 image,instance 命名為“c3”
如果希望 terminate instant 的時候同時删除 volume,可以勾選“Delete on Terminate”
c3 成功 Launch 後,volume 清單中可以看到一個新 bootable volume,以 volume ID 命名,并且已經 attach 到 c3。
該 volume 已經配置為 c3 的啟動盤 vda。
如果用該 volume 建立 snapshot,之後就可以通過 Boot from volume snapshot (create a new volume) 部署新的 instance,這個操作留給大家練習。
這裡再給大家留個練習:boot from volume 的 instance 也可以執行 live miagrate,請大家思考一下 volume 是如何 migrate 到目标節點的,并通過日志驗證。
到這裡,cinder 的主要操作就講解完了。
前面的實驗使用的是 LVM provider,cinder 當然也支援其他的provider。
為了讓大家對這點有感性認識,下一節我們将接入 NFS volume provider。
本文轉自CloudMan6 51CTO部落格,原文連結:
http://blog.51cto.com/cloudman/1827272