XEN的clone和copy那点事
一、XEN API
?VDI clone (session session_id, VDI vdi, Map[string,string] driver_params)? Take an exact copy of the VDI and return a reference to the new disk. If any driver_params are specified then these are passed through to the storage-specific substrate driver that implements the clone operation. NB the clone lives in the same Storage Repository as its parent.
?
?VDI copy (session session_id, VDI vdi, SR sr)? Make a fresh VDI in the specified SR and copy the supplied VDI's data to the new disk
?
二、vdi clone步驟
?1、vdi最初的克隆? ???????? 首先,vdi將自身重命名為Base Copy,并生成一塊新的vdi替代自己,該新生成的vdi指向Base Copy(vdi);其次,生成一個新的vdi(即克隆出來的vdi),這個克隆出來的vdi也指向Base Copy。
?2、再次對vdi進行克隆(vdi中數據沒有發生什么變化)? ???????? 如果vdi中的數據沒有發生任何變化,那么將直接生成一個新的克隆出來的vdi,這個克隆出來的vdi也指向Base Copy;
? ???????? 如果vdi中的數據發生了變化,那么首先,vdi再次將自身重命名為Base Copy(我們稱之為Base Copy 2,之前的那塊Base Copy我們稱之為Base Copy 1),并生成一塊新的vdi替代自己,該新生成的vdi指向Base Copy 2,而Base Copy 2指向Base Copy 1,其次,生成一個新的vdi(即克隆出來的vdi),這個克隆出來的vdi指向Base Copy 2。
圖2.1:Clone流程圖
圖2.1-1:Clone流程圖的附圖(子圖)
?
三、vdi Copy步驟
?1、簡單Copy??????????????? 如果只是對一塊普通的vdi(沒有進行過克隆)進行Copy的話,那么比較簡單,完整的生成一個全新的、獨立的vdi即可;
?2、復雜Copy ?如果是對vdi-clone-2這樣的vdi進行的克隆的話,那么要找到其克隆鏈上的所有vdi( Base Copy 1、 Base Copy 2、 vdi-clone-2 ),收集到所有信息后再完整的生成一個全新的、獨立的vdi。 圖3.1:簡單Copy 圖3.2:復雜Copy轉載于:https://www.cnblogs.com/jingyunyb/p/3880284.html
總結
以上是生活随笔為你收集整理的XEN的clone和copy那点事的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Rootkit Hunter Sourc
- 下一篇: js中转化日期格式