1. 程式人生 > >VMWare+Ubuntu+KVM+VNC虛擬機器安裝配置

VMWare+Ubuntu+KVM+VNC虛擬機器安裝配置

1. 宿主機環境搭建

在本文中的宿主機不是使用的物理主機,而是利用vmware虛擬處理的宿主機,也就是說宿主機是配置是vmware+ubuntu16,系統的安裝就不詳細介紹網上相應的文件較多,下面主要介紹一下vmware+Ubuntu16要作為虛擬機器的宿主機環境主機需要注意的一些簡單事項:

1.1 虛擬機器的配置

1.1.1 為了讓vmware作為宿主機能支援虛擬化,必須在vmware配置裡面開啟虛擬化功能,配置如下圖所示,如圖所示必須在虛擬機器的處理器選擇裡面將”Intel VT-x/EPT或AMD-V/RVI”選項打勾。並且將網路介面卡修改為橋接模式。
這裡寫圖片描述

1.2 Ubuntu16系統的安裝
Ubuntu系統的安裝網上教程多,不再重複介紹。

1.3 驗證Ubuntu系統是否支援虛擬化
通過使用grep vmx /proc/cpuinfo檢視系統是否支援虛擬化,如果結果中出現vmx等關鍵詞,說明了系統是可以支援虛擬化的,如下圖所示。
Ubuntu系統驗證虛擬化支援圖

2. KVM安裝

一般在Ubuntu中都有kvm的支援,也就是說可以通過預設的安裝軟體進行安裝,在Ubuntu中的預設的安裝圖軟體是apt-get,一般新安裝的系統的apt-get的知識庫還沒有更新,建議先更新然後再檢視是否有現成的安裝包。

2.1 更新apt-get知識庫
建議再剛安裝完了Ubuntu系統之後更新一下知識庫,使用apt-get update可以完成更新,如果更新速度慢或者是預設源訪問不了,建議替換源為國內的源,網上有相應的教程。

2.2 檢視是否具有現成的安裝包
更新完了相應的知識庫之後,可以通過命令apt-cache search kvm|grep kvm檢視是否有相應的預設的安裝包,如下圖所示:
KVM安裝圖檢測
2.3 安裝KVM以及QEMU的安裝
通過檢視apt的知識庫,可以看到知識庫中包含了KVM和QEMU的安裝包,所以使用apt-get命令就可以自動完成安裝。
首先安裝KVM,由於KVM是核心中的一個模組,所以安裝完成之後需要檢視核心是否載入了KVM模組,如下圖所示:
這裡寫圖片描述
然後安裝QEMU,並檢視QEMU相關的包是否安裝完成,如下圖所示:
這裡寫圖片描述
至此KVM和QEMU安裝完畢了,那麼也就是說用於虛擬化的軟體已經完成了安裝,但是如何高效的對相應的虛擬化的軟體進行使用以及相應虛擬機器的管理呢,下面將安裝相應的虛擬機器管理軟體。
2.4 libvirt和virsh的安裝
同理,libvirt和virsh的安裝也是通過檢視apt-cache中是否有相應安裝包,然後通過apt-get install命令安裝,如下圖所示:
libvirt的安裝


virsh的安裝
virsht的安裝
至此虛擬機器和虛擬機器管理軟體都安裝好,下一步是要虛擬機器的安裝和執行

2.4 配置橋接網路
為了能使得後面虛擬機器的安裝能被宿主機所在區域網的其他機器訪問,所有需要在宿主機配置橋接網路,這樣虛擬機器通過橋接網路就可以分配到宿主機所在區域網的IP地址了,那麼虛擬機器也就可以被訪問了,配置如下圖所示:
宿主機橋接網路配置
配置好了之後使用ifconfig命令可以檢視配置之後的網路情況,如下圖所示:
橋接網路的網路資訊圖

到現在橋接網路已經配置完成了,那麼接下來就是虛擬機器的安裝了

3. 虛擬機器的建立、安裝、遠端連線

3.1 虛擬機器的配置檔案
在本篇文章中,虛擬機器的建立是通過虛擬機器配置檔案建立的,配置檔案的內容如下所示:<domain type='kvm'>
<name>ubuntu14</name>
<uuid>f5b8c05b-9c7a-3211-49b9-2bd635f7e2aa</uuid>
<memory>1048576</memory>
<currentMemory>1048576</currentMemory>
<vcpu>1</vcpu>
<os>
<type>hvm</type> // 配置虛擬機器的啟動方式
<boot dev='cdrom'/> // 如果為虛擬機器安裝系統,那麼配置此選項
<boot dev='hd'/> // 虛擬機器的系統已經安裝完成,啟動系統配置此選項
<bootmenu enable='yes'/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<devices>
<emulator>/usr/bin/kvm</emulator>
<disk type="file" device="disk"> // 用於安裝系統的虛擬磁碟
<driver name="qemu" type="qcow2"/>
<source file="/home/muhong/vm/img/ubuntu.qcow2"/>
<target dev="vda" bus="virtio"/>
<address type="pci" domain="0x0000" bus="0x00" slot="0x04" function="0x0"/>
</disk>
<disk type="file" device="cdrom"> // 配置系統的iso檔案的路徑(絕對路徑)
<driver name="qemu" type="raw"/>
<source file="/home/muhong/ubuntuimage/ubuntu-14.04.5-server-amd64.iso"/>
<target dev="hdc" bus="ide"/>
<readonly/>
<address type="drive" controller="0" bus="1" target="0" unit="0"/>
</disk>
<interface type='bridge'>
<source bridge='br0'/> // 宿主機的橋接網路的名稱
<mac address="00:0c:29:b6:24:9c"/> // 這個地址是虛擬機器的實體地址
<target dev='vnet0'/>
<model type='virtio'/>
<alias name='net0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<controller type="ide" index="0">
<address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x1"/>
</controller>
<input type='mouse' bus='ps2'/> // vnc遠端連線的控制
<graphics type='vnc' port='-1' autoport="yes" listen='0.0.0.0'/>
<console type='pty'>
<target port='0'/>
</console>
</devices>
</domain>

3.2 啟動虛擬機器
當編寫好了虛擬機器的配置檔案之後,然後就是建立虛擬機器的例項了,虛擬機器的建立以及虛擬機器例項的檢視如下圖所示:
建立和檢視正在執行的虛擬機器例項

3.3 VNC虛擬機器連線
當虛擬機器的例項建立好了之後,可以通過vnc軟體連線到虛擬機器,此時虛擬機器中的系統還沒有安裝,所以使用vnc連線之後可以完成系統的安裝,如下圖所示:
這裡寫圖片描述

當vnc連線到了虛擬機器之後,就可以進系統的安裝了,如下圖所示:
虛擬機器系統的安裝

3.3 連線虛擬機器
當通過vnc完成了虛擬機器系統的安裝之後,重新啟動虛擬機器,檢視虛擬機器的ip地址,然後就可以在宿主機的其他機器上訪問虛擬機器系統了,如下圖所示:
這裡寫圖片描述

至此虛擬機器已經安裝完成了,但是沒有辦法通過virsh shutdown關閉虛擬機器,這是因為新安裝的虛擬機器的系統中沒有電源管理驅動,所以在連線上虛擬機器之後安裝虛擬機器電源管理驅動程式,如下圖所示:
這裡寫圖片描述

總結

理論和實踐相結合,首先了解虛擬機器的原理,然後瞭解虛擬軟體,然後瞭解虛擬機器管理軟體,然後就更上層的虛擬機器排程……更上層的就是openstack相關的東西。
總的來說kvm和qemu就是虛擬軟體,負責建立和執行虛擬機器,但是卻不能很方便的管理多個虛擬機器的例項,為了更加方便的管理虛擬機器,所有出現了libvirt和virsh等函式庫和相應的命令列工具,但是虛擬機器得應用起來,所以說又有了更上層的東西,openstack這一套就是起著這個作用。
接下來我將繼續學習openstack相關的東西,並將openstack的各個元件依次安裝應用,層層的分解學習。