[前段时间学习了xenserver,感觉不错,就是对他的免费感觉质疑,如果后期他某一天不提供免费了,那我不惨了。所以,我还是将学习方向转到开源的领域了。]

(1)Centos5.4安装,升级

开启SELinux(如果你的SELinux被禁用,virt-install将不会正常工作)

system-config-securitylevel-tui


(2)kvm安装

(a)检查CPU是否支持硬件虚拟化-运行命令

   egrep '(vmx|svm)' --color=always /proc/cpuinfo

(如果输出的结果包含 vmx,它是 Intel;如果包含 svm,它是 AMD。如果你甚么都得不到,那应你的系统并没有支持虚拟化的处理。

(b)安装KVM和virtinst(一个创建虚拟机的工 具),我们运行

yum install kvm kmod-kvm qemu libvirt python-virtinst

然后重新启动系统:

Reboot

使用下列命令检查KVM是否成功安装

virsh -c qemu:///system list

将会显示如下结果:

[root@server1 ~]# virsh -c qemu:///system list

Id Name                 State

----------------------------------

 

[root@server1 ~]#

 

如果在这里显示的是一个错误的信息,说明有些东西出现了问题。

(c)下面我们需要在我们的服务器上设置一个网桥,就可以使我们的虚拟机从其他主机中读取数据。

要做到这一点,我们安装bridge-utils工具。。。。。。

yum install bridge-utils

... 并且配置一个网桥从/etc/sysconfig/network-scripts/ifcfg-eth0参考BOOTPROTO, BROADCAST, IPADDR, NETMASK和NETWORK等值来创建文件/etc/sysconfig/network-scripts/ifcfg-br0 :

vi /etc/sysconfig/network-scripts/ifcfg-br0

DEVICE=br0

TYPE=Bridge

BOOTPROTO=static

BROADCAST=192.168.0.255

IPADDR=192.168.0.100

NETMASK=255.255.255.0

NETWORK=192.168.0.0

ONBOOT=yes

修改/etc/sysconfig/network-scripts/ifcfg-eth0 as follows (取消注释BOOTPROTO, BROADCAST, IPADDR, NETMASK, 和NETWORK 最后添加 BRIDGE=br0):

vi /etc/sysconfig/network-scripts/ifcfg-eth0

# Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+

DEVICE=eth0

#BOOTPROTO=static

#BROADCAST=192.168.0.255

HWADDR=00:10:A7:05:AF:EB

#IPADDR=192.168.0.100

#NETMASK=255.255.255.0

#NETWORK=192.168.0.0

ONBOOT=yes

BRIDGE=br0

重新启动网络...

/etc/init.d/network restart

... 运行

ifconfig

现在应该显示网桥(br0):

[root@server1 ~]# ifconfig

br0       Link encap:Ethernet  HWaddr 00:10:A7:05:AF:EB

          inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0

          inet6 addr: fe80::210:a7ff:fe05:afeb/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500 Metric:1

          RX packets:17 errors:0 dropped:0 overruns:0 frame:0

          TX packets:53 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0

          RX bytes:1160 (1.1 KiB)  TX bytes:14875 (14.5 KiB)

 

eth0      Link encap:Ethernet  HWaddr 00:10:A7:05:AF:EB

          inet6 addr: fe80::210:a7ff:fe05:afeb/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500 Metric:1

          RX packets:13662 errors:7 dropped:160 overruns:4 frame:0

          TX packets:11646 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:15144608 (14.4 MiB)  TX bytes:1379942 (1.3 MiB)

          Interrupt:74 Base address:0xcc00

 

lo        Link encap:Local Loopback

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:16436 Metric:1

          RX packets:38 errors:0 dropped:0 overruns:0 frame:0

          TX packets:38 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0

          RX bytes:4308 (4.2 KiB)  TX bytes:4308 (4.2 KiB)

 

virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00

          inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0

          inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500 Metric:1

          RX packets:0 errors:0 dropped:0 overruns:0 frame:0

          TX packets:35 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0

          RX bytes:0 (0.0 b)  TX bytes:9987 (9.7 KiB)

 

[root@server1 ~]#

(3)kvm管理端安装virt-viewer 或者virt-manager

如果你是用的是Fedora 10 desktop,你可以使用下列命令安装virt-manager:

yum install virt-manager

(4)GuestOs安装

Virt-install具体用法,请参考man virt-install

(a)以光驱方式安装(win2003)

(I)virt-install  --connect qemu:///system  --name win01  --ram 1024  --disk path=/var/lib/libvirt/images/win2k3.img,size=10 --network bridge:br0 --accelerate --vnc --noautoconsole --cdrom /dev/cdrom-hda

 

 

Starting install...

Creating domain...                                                   |    0 B     00:02    

Domain installation still in progress. You can reconnect to

the console to complete the installation process.

(II)kvm管理端开启virt-manager后,通过Remote tunnel over ssh连接方式连接到kvm服务器.当执行完I步后,将会运行一个win01 Domain,在Virtual Machine Manager选中这个新建的Domain,右击选中Open,输入认证密码后,便可以打开一个console可以远程安装系统了。

(b)iso安装(确保selinux关闭,至到我搞懂为至)

virt-install  --connect qemu:///system  --name debian --ram 1024  --vcpus=4 --disk path=/var/lib/libvirt/images/debian.img,size=10 --network bridge:br0 --accelerate  --vnc --noautoconsole --cdrom /mnt/debian.iso

(5)管理kvm客户机

可以通过 virsh命令管理KVM客户机,"virtual shell"。连接到virtual shell,运行

virsh --connect qemu:///system

下面就是virtual shell的显示界面:

[root@server1 ~]# virsh --connect qemu:///system

Welcome to virsh, the virtualization interactive terminal.

 

Type:  'help' for help with commands

       'quit' to quit

 

virsh #

现在你可以在virtual shell中输入命令来管理你的客户 机,运行:

help

获得更多的命 令:

 

list

显示所有正在运行的客户机;

list --all

显示所有客户机,正在运行的和没有运行的:

virsh # list --all

Id Name                 State

----------------------------------

  2 vm10                 running

 

virsh #

 

如果你修改了一个客户机的xml文件(位于/etc/libvirt/qemu/ 目录),你必须重新定义客户机:

define /etc/libvirt/qemu/vm10.xml

请注意,无论你何时在/etc/libvirt/qemu/ 中修改了客户机的XML文件,你必须重新运行define 命令!

启动和停止客户机,运行:

start vm10

停止一个客户机,运行

shutdown vm10

立即中断一个客户机(类似直接关电源),运行

destroy vm10

挂起一个客户机:

suspend vm10

恢复客户机:

resume vm10

这些都是最重要的命令.

输入

quit

退出virtual shell.


如果想了解更多,请关注我们的公众号
公众号ID:opdevos
扫码关注

Centos5.4下安装kvm手册_第1张图片