centOS6安裝KVM及虛擬機

KVM(Kernel-based Virtual Machine)的簡稱,是一個開源的全虛擬化的解決方案。自從 Linux2.6.20 之後集成在 Linux 的各個發行版中,KVM 虛擬化運行在 x86 架 構且需要硬件(Intel VT or AMD-V)的支持,它使用 Linux 自身的調度器進行管理,下面是在 centos5.8 上面詳細安裝 Kvm 虛擬機的詳細步驟。

1.查看宿主機的 cpu 是否支持 KVM,vmx 表示 CPU 支持 Intel VT 技術,svm 代表CPU 支持 AMD-v 技術。
centOS6安裝KVM及虛擬機

2.安裝 KVM 軟件包,yum groupinstall KVM。
centOS6安裝KVM及虛擬機

3.安裝橋接管理工具,yum install bridge-utils tunctl。
centOS6安裝KVM及虛擬機

4.設置橋接網卡配置文件,先備份一下原來的配置文件。
centOS6安裝KVM及虛擬機
4.1 編輯 ifcfg-eth0 文件.
centOS6安裝KVM及虛擬機
4.2 編輯 ifcfg-br0 文件。
centOS6安裝KVM及虛擬機

5.安裝 gui 管理工具,yum install virt-manager virt-viewer。
centOS6安裝KVM及虛擬機

6.1 查看服務器的配置是否生效,KVM 安裝完成後需要重啓(reboot)服務器後才能被內核加載。
6.2 查看橋接網卡配置是否生效。
centOS6安裝KVM及虛擬機

6.3 查看內核是否加載 KVM 模塊。
centOS6安裝KVM及虛擬機
7.在服務器上面安裝 vncserver,以便通過 vncerver 來安裝虛擬機。
7.1VNC 環境需要安裝 KDE 或者 GNOME 環境,生產環境的服務器都採用最小化安裝,用 yum grouplist 可以查看系統安裝了那些組件,這裏安裝 KDE 環境。
centOS6安裝KVM及虛擬機
7.2 安裝 vnc_server,yum install vnc-server。
centOS6安裝KVM及虛擬機
7.3 運行 vncserver 添加客戶端 VNC 登錄需要的密碼。
centOS6安裝KVM及虛擬機
7.4 修改配置文件/root/.vnc/xstartup,startkde &表示支持 KDE 組件
centOS6安裝KVM及虛擬機
7.5 修改 vncserver 配置文件/etc/sysconfig/vncservers,添加如下兩行。
centOS6安裝KVM及虛擬機

7.6 重啓 VNC 服務,/etc/init.d/vncserver restart。
centOS6安裝KVM及虛擬機

8.1 客戶端用 VNC_viewer 連接到服務器,在開始-System-terminal 開啓終端,
輸入 virt-manager 調出虛擬系統管理器新建虛擬機。
centOS6安裝KVM及虛擬機
8.2KVM 支持全虛擬化,選擇 CPU 架構和 KVM 管理程序。
centOS6安裝KVM及虛擬機
8.3 選擇安裝介質爲本地 ISO 文件。
centOS6安裝KVM及虛擬機
8.4 選擇 ISO 文件路徑,此種方法要將 ISO 文件上傳服務器上面。
centOS6安裝KVM及虛擬機
8.5 選擇 KVM 虛擬機的磁盤空間,在新建虛擬機時候自動生成.img 文件,可以用qemu-img 創建。
centOS6安裝KVM及虛擬機
8.6 選擇網絡爲共享的物理設備,即橋接。
centOS6安裝KVM及虛擬機
8.7 選擇創建虛擬機的內存大小和虛擬 cpu 數。
centOS6安裝KVM及虛擬機
8.8 虛擬機創建完畢,後面安裝系統部分省略了,和 vmware 安裝虛擬機完全一致。
centOS6安裝KVM及虛擬機
9.系統安裝完畢以後,用 virsh 工具開啓虛擬機。
centOS6安裝KVM及虛擬機
10.然後通過 VNC 或者 SSH 可以遠程管理虛擬機了。
centOS6安裝KVM及虛擬機

總結:
KVM 虛擬機不僅需要 CPU 的支持,還需要在 BOIS 裏面開啓 VT 選項。
在終端用 virsh list 可以查看當前正在運行的虛擬機。
在 virsh #模式下面,可以用 start 機器名開啓虛擬機,用 shutdown 虛擬機名關閉虛擬機。
創建虛擬機,virt-install --name TEST001 --ram 1024 --vcpus=2 --disk
path=/data/vps/TEST001.img,size=20 --bridge=br0 --accelerate --cdrom
/opt/iso/CentOS-5.8-x86_64-bin-DVD.iso --vnc --vncport=-1。
移除虛擬機 virsh undefine TEST001。
以前一直使用 xen 對 xen 的比較熟悉,現在使用 kvm,對 kvm 的 virsh 的命令做
一個總結
查看虛擬機運行狀況
[root@localhost ~]# virsh list
Id 名稱 狀態

xxx running
yy running
開啓虛擬機
[root@localhost ~]# virsh start bi
域 bi 已開始
關閉虛擬機
[root@localhost ~]# virsh shutdown bi
域 bi 被關閉
4.克隆命令
(virt-clone -o centos64-24-02 -n centos64-24-04
-f /var/lib/libvirt/images/centos64-24-04.img)
[root@localhost ~]# virt-clone --connect=qemu:///system -o bi -n nagios
-f /var/lib/libvirt/images/nagios.img
Cloning /var/lib/libvirt/images/bi.img | 49 GB 05:03
Clone 'nagios' created successfully.
常見故障:
1、在 VMware 裏克隆出來的 CentOSLinux。
ifconfig...沒有看到 eth0.。然後重啓網卡又報下面錯誤。
service network restart
Shutting down loopback insterface:
[ OK ]
Bringing up loopback insterface:
[ OK ]
Bringing up interface eth0: Device eth0 does not seem to be
present,delaying initialization. [FAILED]
解決辦法:
首先,打開/etc/udev/rules.d/70-persistent-net.rules 內容如下面例
子所示:
vi /etc/udev/rules.d/70-persistent-net.rules
This file was automatically generated by the
/lib/udev/write_net_rules
program, run by the persistent-net-generator.rules rules file.

You can modify it, as long as you keep each rule on a single
line, and change only the value of the NAME= key.
PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?",
ATTR{address}=="00:0c:29:8f:89:9
, ATTR{type}=="1", KERNEL=="eth
", NAME="eth0"
PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?",
ATTR{address}=="00:0c:29:50:bd:1
, ATTR{type}=="1", KERNEL=="eth
", NAME="eth1"
記錄下,eth1 網卡的 mac 地址 00:0c:29:50:bd:17
接下來,打開/etc/sysconfig/network-scripts/ifcfg-eth0
vi /etc/sysconfig/network-scripts/ifcfg-eth0
將 DEVICE="eth0" 改成 DEVICE="eth1" ,
將 HWADDR="00:0c:29:8f:89:97" 改成上面的 mac 地址
HWADDR="00:0c:29:50:bd:17"

最後,重啓網絡
service network restart
或者
/etc/init.d/network restart

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