使用virt安裝虛擬機

使用Virt-Manager安裝虛擬機:

從Virtual Machine Manager, 在工具欄上點擊 【Create a new virtual machine 】或選擇【File | New Virtual Machine】去打開這個嚮導,也允許從Virt-manager上面去創建新的虛擬機。
這個嚮導可以分爲五步:

選擇安裝方法

配置安裝介質

內存和CPU的配置

虛擬機存儲配置

Guest OS的命名和網絡配置

1. 通過CD/DVD安裝6.5的示例:
(1)把鏡像文件放琺/var/lib/libvrit/images文件夾下。

使用virt安裝虛擬機

(2)點周Forward按鈕,來到如下畫面,選擇安裝的鏡像。然後點擊【Forward】

使用virt安裝虛擬機

(3) 指定CPU和內存配置,然後點擊【Forward】

使用virt安裝虛擬機

(4)在以下畫面選擇存儲大小和存儲位置。然後點擊【Forward】

使用virt安裝虛擬機

(5)選擇主機名稱和網絡類型.

使用virt安裝虛擬機

(6)如果前面幾步全部搞定後,來到下面最後一步。

使用virt安裝虛擬機

2. 網絡安裝方法,包括HTTP,FTP或者NFS.

在我們上面安裝方法中的第2項時,選擇有點區別,詳情見下圖。
使用virt安裝虛擬機

3. Network Boot (PXE)

PXE方法安裝系統需要注意一點:就是網卡類型不能設置爲NAT。可以設置爲Bridge. 由於現在流行虛擬化,PXE可能用的比較少,瞭解即可。
使用virt安裝虛擬機

4. 導入原先就存在的磁盤。

(1)從virt-manager GUI【Create a New Virtual Machine】,然後選擇【Import existing disk image】作爲OS的安裝方法。
使用virt安裝虛擬機

5. 使用virt-instal命令l安裝系統

案例:安裝windows 7系統

(1)首先使用qemu-img 創建鏡像文件

qemu-img create -f raw -o size=10G /var/lib/libvirt/qemu/win7.img

(2)運行以下命令進行安裝

virt -install \
--name win7 \
--ram 1024 \
--disk path=./var/lib/libvirt/qemu/win7.img \
-- vcpus 1 \
--os-type windows \
--os-variant Windows 7 \
--network bridge=virbr0 \
--graphics vnc, port =5999 \
--console pty, target_type=serial \
--cdrom ./win7.iso \

同樣的地,我們可以使用virt-install -promot命令來進行交互的安裝,它將會和你進行交互,你可以再輸入上面的信息。

(3)就像Virtual Machine Manager 一樣,在你創建虛擬機後,你也需要控制檯來進行虛擬機的安裝。使用virt-viewer 工具來獲取控制檯。

virt-viewer <virtual machine> name

下面是通過兩個工具來完成自動化的安裝,我測試發現在國內很慢,也沒有使用。但給出詳細步驟,可以參考:

Automated virtual machine deployment
virtual builder這個命令是由libguestfs-tools-c這個包來提供的,所以我們需要首先安裝此包。

yum install libguestfs-tools-c -y

virt-builder默認下載模板是從 http://libguestfs.org/download/builder/ 庫下載的,可能由於國外的網站,所以比較慢而已,當然也可以自己構建本地的鏡像庫。(此處不作介紹 )

例子:比如我們想要創建一個CenotOS 7.14的虛擬機,該虛擬機有50GB的磁盤空間。

(1)# cd /var/lib/libvirt/qemu/ ; /usr/bin/virt-builder centos-7.1 --format raw --size 50G

[ 1.0] Downloading: http://libguestfs.org/download/builder/centos-7.1.xz
[ 2.0] Planning how to build this image
[ 2.0] Uncompressing
[ 14.0] Resizing (using virt-resize) to expand the disk to 50.0G
[ 149.0] Opening the new disk
[ 179.0] Setting a random seed
[ 180.0] Setting passwords
virt-builder: Setting random password of root to Arw83LnDi66eMcmh
[ 198.0] Finishing off
Output file: centos-7.1.img
Output size: 50.0G
Output format: raw
Total usable space: 48.1G
Free space: 47.3G (98%)

(2)然後執行下面的命令進行導入

#virt-install --name centos --ram 1028 --vcpus=2 --disk path=/var/lib/libvirt/qemu/centos-7.1.img --import

(3)然後我們可以使用 virsh list --all 列出我們所有的虛擬機 ,使用 #virsh start <vmname> 進行啓動。

virt-builder的緩存砋載的模板到當前用戶的家目錄,位置是 $XDG_CACHE_HOME/virt-builder/ or $HOME/.cache/virt-builder.

通過virt-builder --print-cache輸出緩存的信息

virt-builder --print-cache

cache directory: /root/.cache/virt-builder
centos-6 x86_64 no
centos-7.0 x86_64 no
centos-7.1 x86_64 cached

cirros-0.3.1 x86_64 no
debian-6 x86_64 no
debian-7 x86_64 no
debian-8 x86_64 no
fedora-18 x86_64 no
fedora-19 x86_64 no
fedora-20 x86_64 no
fedora-21 x86_64 no
fedora-21 aarch64 no
fedora-21 armv7l no
fedora-21 ppc64 no
fedora-21 ppc64le no
fedora-22 x86_64 no
fedora-22 aarch64 no
fedora-22 armv7l no
scientificlinux-6 x86_64 no
ubuntu-10.04 x86_64 no
ubuntu-12.04 x86_64 no
ubuntu-14.04 x86_64 no

當我們下載再構建同一個鏡像時候,由於有緩存,會發現快的多。但爲了節約空間的話,我們也可以通過下面的命令進行刪除緩存。

#virt-builder --delete-cache

也可以下載所有的模板進行緩存,執行如下命令:

virt-builder --cache-all-templates

但是通過virt-builder命令進行自動化部署系統時候,只能構建linux系統,暫時不支持構建windowsx系統,如果想要構建windows系統的話,可以使用下面的oz工具。
使用OZ創建模板:

oz作爲一個模板,描述了創建虛擬機的指導方針。
IOS或鏡像的URL
磁盤的尺寸
額外包的安裝
在鏡像創建之後 ,其它命令的執行

它也可以使用比如linux的kickstart文件或者windows 的無人值守文件來完成安裝的全自動化選擇。支持如下系統

Debian: 5, 6, 7
Fedora Core: 1, 2, 3, 4, 5, 6
Fedora: 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21
FreeBSD: 10
Mageia: 4
Mandrake: 8.2, 9.1, 9.2, 10.0, 10.1
Mandriva: 2005, 2006.0, 2007.0, 2008.0
OpenSUSE: 10.3, 11.0, 11.1, 11.2, 11.3, 11.4, 12.1, 12.2, 12.3, 13.1
RHEL 2.1: GOLD, U2, U3, U4, U5, U6
RHEL 7: Beta, 0
RHEL/CentOS 3: GOLD, U1, U2, U3, U4, U5, U6, U7, U8, U9
RHEL/CentOS/Scientific Linux 4: GOLD, U1, U2, U3, U4, U5, U6, U7, U8, U9
RHEL/OL/CentOS/Scientific Linux{,CERN} 5: GOLD, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11
RHEL/OL/CentOS/Scientific Linux{,CERN} 6: 0, 1, 2, 3, 4, 5
RHL: 7.0, 7.1, 7.2, 7.3, 8, 9
Ubuntu: 5.04, 5.10, 6.06[.1,.2], 6.10, 7.04, 7.10, 8.04[.1,.2,.3,.4], 8.10, 9.04, 9.10, 10.04[.1,.2,.3], 10.10, 11.04, 11.10, 12.04[.1,.2,.3,.4,.5], 12.10, 13.04, 13.10, 14.04[.1], 14.10
Windows: 2000, XP, 2003, 7, 2008, 2012, 8, 8.1

在使用Oz創建自動化的安裝之前 ,需要安裝以下兩個包。

#yum install -y oz libguestfs-tools

For Fedora 22: http://dl.fedoraproject.org/pub/fedora/linux/releases/22/Server/x86_64/os/
For CentOS 7: http://mirrors.dcarsat.com.ar/centos/7/os/x86_64/
創建簡單的 TDL (Template Definition Language) 文件. TDL的詳細使用請參考如下網址: https://github.com/clalancette/oz/wiki/Oz-template-description-language

安裝步驟:

oz-install -u -d3 TDL_FILE_PATH

:
u: After installation, perform the customization
d: Turn up the logging level. The levels are:
0: Errors only (this is the default)
1: Errors and warnings
2: Errors, warnings, and information
3: All messages
4: All messages, prepended with the level and classname

2. 然後執行以下命令,並啓動虛擬機

virsh define <xml_fike>
virsh start <vm_name>

OZ的配置文件講解:

/etc/oz/oz.cfg

[paths]
output_dir = /var/lib/libvirt/images
data_dir = /var/lib/oz
screenshot_dir = /var/lib/oz/screenshots

sshprivkey = /etc/oz/id_rsa-icicle-gen

[libvirt]
uri = qemu:///system
image_type = raw
type = kvm
bridge_name = virbr0
cpus = 1
memory = 1024

[cache]
original_media = yes
modified_media = no
jeos = no

[icicle]
safe_generation = no

使用OZ創建虛擬機案例:

創建windows 7 虛擬機:
The resultant virtual machine should have 2048 memory assigned to it
The bridge to which the virtual machine is connected should be vswitch
The disk size should be 50G
The install media should be an ISO file stored locally on the system

編輯 /etc/oz/oz.cfg 文件,設置內存和橋的配置,並保存。
memory = 2048
bridge_name = vswitch

2. 創建名字爲 win7.tdl文件, 包含下列元素, 然後保存在/root/ 文件夾下面。

<template>
<name>win7jeos</name>
<os>
<name>Windows</name>
<version>7</version>
<arch>i386</arch>
<install type='iso'>
<iso>file:///path/to/isos/win2k.iso</iso>
</install>
<key>MY_KEY_HERE</key>
</os>
<disk>
<size>50</size>
</disk>
<description>Minimal Windows7 </description>
</template>
Replace file:///path/to/isos/win2k.iso with the actual path of the ISO file
在MY_KEY_HERE這裏要填入你主機真正的key文件,要不然安裝可能不會成功。

3. oz-install -u -d3 /root/win7.tdl

安裝完成後,應該會看到如下信息。

4. 使用virsh命令定義虛擬機,並啓動。

virsh define win7jeos_feb_11-2016
virsh start win7jeos

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章