码迷,mamicode.com
首页 > 系统相关 > 详细

Ubuntu下安装KVM

时间:2015-04-20 18:18:41      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:

安裝(Installation)

這裡以 Ubuntu Linux 10.04 為例,安裝 KVM。

首先安裝 KVM 相關的基本套件:

 
  • libvirt-bin:提供 libvirtd,用來管理 qemu 與 kvm。
  • qemu-kvm:主要的虛擬引擎。
  • ubuntu-vm-builder:強大的虛擬機器製作工具。
  • bridge-utils:用來建立虛擬機器使用的 bridge。


用 apt 安裝:
sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils

另外亦可安裝 virt-viewer 用來觀看虛擬機器:
sudo apt-get install virt-viewer

在安裝完成後,系統會自動將您的 username 加入 libvirtd 群組,在這個群組中的使用者才能夠使用 KVM,想要讓設定生效的話,您必須先登出後,再重新登入。另外,系統也會多新增一個 kvm 群組,不過一般的使用者不需要加入這個群組,所以不用管它。

重新登入後,首先檢查安裝是否正確,執行:
virsh -c qemu:///system list
若是看到

Id Name State
----------------------------------

就表示沒問題了,若是看到這樣:

libvir: Remote error : Permission denied
error: failed to connect to the hypervisor

就表示安裝的過程有問題,請先檢查上面的安裝過程有沒有出錯,或是您忘記要登出後在重新登入。

另外,檢查 sock 檔的權限:
sudo ls -la /var/run/libvirt/libvirt-sock
應該要像這樣

srwxrwx--- 1 root libvirtd 0 2012-02-04 13:38 /var/run/libvirt/libvirt-sock

這樣就沒問題了。

另外,若是使用 Ubuntu Desktop 版本,也可以再安裝圖形界面的管理程式:
sudo apt-get install virt-manager

網路設定(Networking)

接著設定 KVM 用的網路,一般來說網路的設定分為兩種:

  • Usermode Networking:虛擬機器透過 NAT 的方式連上網路,這是預設的設定。
  • Bridged Networking:透過 bridge 方式連上網路,這樣外面的機器也可以直接連進這個虛擬機器,這樣就可以提供網路服務,例如架網站。


若使用 Usermode Networking,預設虛擬機器可以從 192.168.122.0/24 獲取 IP 位址,而真實機器的 IP 位址則是 192.168.122.1,若是要傳輸檔案則可以使用 scp 的方式互傳。若您想要使用 Usermode Networking 方式,就不需要任何額外的設定,直接跳過這裡。

Bridged Networking 方式可以透過實體的網路卡連上網路,讓外界的使用者可以接連進虛擬機器,這裡因為筆者用不到,所以暫時就不研究了。

在這裡筆者希望將虛擬機器鎖在內部,只允許對內的連線,因此要將預設的網路設定稍微修改一下,首先看一下目前的設定:
virsh net-list
輸出為

Name State Autostart
-----------------------------------------
default active yes

目前的網路設定預設是 default 這個設定,我們就直接修改它就?ㄌㄜ好了好 好了,首先把設定檔倒出來:
virsh net-dumpxml default > default.xml
這個內容應該像這樣:
<network>
<name>default</name>
<uuid>45f1405b-791a-06e4-d8e8-8bcfffc4c90f</uuid>
<forward mode=‘nat‘/>
<bridge name=‘virbr0‘ stp=‘on‘ delay=‘0‘ />
<ip address=‘192.168.122.1‘ netmask=‘255.255.255.0‘>
<dhcp>
<range start=‘192.168.122.2‘ end=‘192.168.122.254‘ />
</dhcp>
</ip>
</network>

其中預設的 <forward mode=‘nat‘/> 是將網路設定為 NAT 模式,在這個模式下,虛擬機器上面的封包會自動透過 ip forward 連到外面,但這不是筆者需要的,所以就直接把這行拿掉,這樣這個虛擬機器就只能跟 host 連線而已。

接著在將編輯好的設定餵回給 virsh:
virsh define default.xml
這樣就完成設定了。接著將這個 default 設定設為自動啓動,並啟動這個 default 設定:
virsh net-autostart default
virsh net-start default


上面這樣把設定檔 dump 出來的修改方式其實可以用一個指令代替:
virsh net-edit default
不過這樣的編輯方式預設是使用 vi 編輯器,如果您不會 vi 又想要使用這樣的方式,也可以更改 EDITOR 環境變數來指定您慣用的編輯器。

建立虛擬機器(Create Virtual Machine)

要建立虛擬機器就使用 vmbuilder 這個工具就行了,他的選項很多,一開始可以先列出所有的選項看看有哪些東西可以用:
vmbuilder kvm ubuntu --help

很多選項都是會因為個人的情況不同而要做調整,首先進到放置 image 的目錄:
cd /var/lib/libvirt/images

然後建立虛擬機器:
vmbuilder kvm ubuntu \
--domain=kvm \
--dest=vm01 \
--arch=amd64 \
--hostname=vm01 \
--mem=8192 \
--cpus=16 \
--user=seal \
--pass=my_pass \
--ip=192.168.122.10 \
--mask=255.255.255.0 \
--net=192.168.122.0 \
--bcast=192.168.122.255 \
--gw=192.168.122.1 \
--iso=/home/seal/LinuxISO/ubuntu-10.04.3-server-amd64.iso \
--suite=lucid \
--components=‘main,universe,restricted‘ \
--addpkg=acpid \
--addpkg=vim \
--addpkg=build-essential \
--addpkg=openssh-server \
--addpkg=avahi-daemon \
--libvirt=qemu:///system

 

Ubuntu下安装KVM

标签:

原文地址:http://www.cnblogs.com/wizzhangquan/p/4442232.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!