本文參考了官網juno版本的《image-guide》。鏡像制作主要分3步:
1、建立虛拟磁盤,主要需要關注的是虛拟磁盤格式;
2、通過虛拟機管理軟體或者遠端桌面接入到虛拟機在第1步建立的虛拟磁盤上安裝作業系統;主要關注虛拟機的IO驅動,同時,遠端桌面的操作可能會遇見一些問題,比如鍵盤模式。
3、在第2步的基礎上安裝雲初始化軟體cloudbaseinit。注意安裝完成後,關閉虛拟機,保護好現場,不要啟動虛拟機。
下面分别介紹:
一、建立虛拟磁盤:
qemu-img create -f qcow2 ws2008-400g-1.qcow2 400G
這裡采用最常用的qcow2檔案格式,具體性能和選擇依據請參考網上資料。我采用這種檔案格式用在生産系統上,穩定性、性能等等都不存在什麼問題。
二、通過虛拟機管理軟體遠端桌面接入到虛拟機安裝作業系統:
virt-install --connect qemu:///system \
--name ws2008-400g-1 --ram 8192 --vcpus 2 \
--network network=default,model=virtio \
--disk path=/tmp/ws2008-400g-1.qcow2,format=qcow2,device=disk,bus=virtio \
--cdrom /data/iso/cn_windows_server_2008_r2_standard_enterprise_datacenter_web_x64_dvd_x15-50360.iso \
--disk path=/data/iso/virtio-win-0.1-100.iso,device=cdrom \
--vnc --os-type windows --os-variant win2k8
注意,其中/tmp/ws2008-400g-1.qcow2 就是第1步生成的虛拟磁盤,/data/iso/cn_windows_server_2008_r2_standard_enterprise_datacenter_web_x64_dvd_x15-50360.iso 是上傳到伺服器上的win server2008r2作業系統的安裝盤鏡像檔案。其他參數如果有疑問,請參考virt-install -h幫助,或者查找網上資料。
在安裝的過程中,請注意下列事項:
1)遠端桌面或者virt-manager 圖形界面上,選擇鍵盤模式為en_us,否則字元輸入會有問題;
2)安裝驅動的過程中,選擇win7的驅動
3)這是鏡像制作,是以将常用的配置或者軟體都在這個鏡像中配置或者安裝好,比如,将遠端桌面開啟: 我的電腦->遠端設定->允許任何使用者遠端登入(可選)
4)安裝IO驅動,具體步驟如下:
Complete the VirtIO drivers installation by running the following command:
<code>C:\pnputil -i -a E:\WIN8\AMD64\*.INF</code>
To allow Cloudbase-Init to run scripts during an instance boot, set the PowerShell exe-
cution policy to be unrestricted:
<code>C:\powershell</code>
<code>C:\Set-ExecutionPolicy Unrestricted</code>
三、安裝配置雲計算初始化軟體cloudbaseinit
拷貝檔案: cloudbaseinit.msi到虛拟機。此時網絡未通,是以可以先将這個檔案制作成ISO檔案,然後通過挂載虛拟光驅拷貝: /data/iso/cloudbaseinit.iso
運作cloudbaseinit.msi
注意,在安裝過程中,将“use metadata password ”的選項取消,
在配置選項視窗,按照下面的參數進行修改:
? Username: Administrator
? Network adapter to configure: Red Hat VirtIO Ethernet Adapter
? Serial port for logging: COM1
當安裝完成後,在 Cloudbase-Init 安裝向導結束視窗,選擇 Run Sysprep and Shutdown ,然後點選Finish。至此,鏡像安裝完成。
最後,根據上面這個鏡像制作openstack上的鏡像,運作下面的指令:
<code> </code><code>glance image-create --name WS2008 --disk-</code><code>format</code> <code>qcow2 \</code>
<code> </code><code>--container-</code><code>format</code> <code>bare --is-public </code><code>true</code> <code>\</code>
<code> </code><code>--</code><code>file</code> <code>/tmp/ws2008-400g</code><code>.qcow2</code>
<code></code>
本文轉自yuweibing51CTO部落格,原文連結:http://blog.51cto.com/yuweibing/1656453 ,如需轉載請自行聯系原作者