1.虚拟机上打开Intel VT-x or AMD-V支持
2.安装kvm
yum -y install kvm python-virtinst libvirt bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v
如果只是使用命令行管理kvm,可以只安装yum install -y qemu-kvm libvirt virt-install
3.lsmod|grep kvm
没有可以手动加载:
modprobe kvm
modprobe kvm-intel
4.查看版本信息:
virt-install --version
virsh --version
5.启动service libvirtd start
6.打开system tools->virtual machine manager,创建一个vm
图形化界面,一步一步往下和在vmware上安装一个虚机步骤类似
7.安装完后,可以查看虚拟硬盘等信息:
8.
9.登录新建的vm:
10.查看kvm的进程:
11:KVM的网络,默认安装是NAT模式:
1>查看etc/libvirt/qemu/yo.xml
ce type="network">
mac address="52:54:00:0e:7c:0d"/>
<source network="default"/>
[root@yaya libvirt]# virsh net-list --all
Name State Autostart Persistent
--------------------------------------------------
default active yes yes
2>宿主机上ip addr的输出:
4: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
link/ether 52:54:00:3d:11:65 brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
5: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 500
link/ether 52:54:00:3d:11:65 brd ff:ff:ff:ff:ff:ff
13: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 500
link/ether fe:54:00:0e:7c:0d brd ff:ff:ff:ff:ff:ff
inet6 fe80::fc54:ff:fe0e:7c0d/64 scope link
3>宿主机上查看网桥:
[root@yaya libvirt]# brctl show
bridge name bridge id STP enabled interfaces
pan0 8000.000000000000 no
virbr0 8000.5254003d1165 yes virbr0-nic
vnet0
4>宿主机上防火墙规则自动被添加,宿主机上对来自guest的包的转发和SNAT把guest的地址转换成宿主机的可用地址访问外网
[root@yaya Desktop]# iptables -nvL -t nat
Chain POSTROUTING (policy ACCEPT 242 packets, 16589 bytes)
pkts bytes target prot opt in out source destination
0 0 MASQUERADE tcp -- * * 192.168.122.0/24 !192.168.122.0/24 masq ports: 1024-65535
0 0 MASQUERADE udp -- * * 192.168.122.0/24 !192.168.122.0/24 masq ports: 1024-65535
0 0 MASQUERADE all -- * * 192.168.122.0/24 !192.168.122.0/24
[root@yaya Desktop]# iptables -nvL
Chain INPUT (policy ACCEPT 14865 packets, 13M bytes)
pkts bytes target prot opt in out source destination
5 311 ACCEPT udp -- virbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:53
0 0 ACCEPT tcp -- virbr0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- * virbr0 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED
0 0 ACCEPT all -- virbr0 * 192.168.122.0/24 0.0.0.0/0
0 0 ACCEPT all -- virbr0 virbr0 0.0.0.0/0 0.0.0.0/0
0 0 REJECT all -- * virbr0 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
0 0 REJECT all -- virbr0 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
12:手动修改成bridge模式:
1>[root@yaya network-scripts]# cp ifcfg-eth0 ifcfg-br0
ifcfg-eth0的内容:
DEVICE=eth0
HWADDR=00:0c:29:86:a3:60
TYPE=Ethernet
UUID=a7cd0a6d-0e88-48fb-b15b-99291bb11127
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
USERCTL=no
PEERDNS=yes
IPV6INIT=no
BRIDGE=br0
ifcfg-br0的内容:
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.0.109
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
USERCTL=no
PEERDNS=yes
IPV6INIT=no
2>service network start
Bringing up interface eth0: Error: Connection activation failed: Master connection not found or invalid
[FAILED]
解决办法是:
[root@yaya network-scripts]# service NetworkManager stop
3>宿主机上查看:
[root@yaya Desktop]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c2986a360 no eth0
pan0 8000.000000000000 no
virbr0 8000.5254003d1165 yes virbr0-nic
[root@yaya Desktop]#
[root@yaya Desktop]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
169.254.0.0 0.0.0.0 255.255.0.0 U 1015 0 0 br0
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 br0
4.vm选择新建的网桥并重启:
可见网络和宿主机同一网段,由此见KVM的NAT和Bridge和Vmware的模式类似的
5>宿主机再次查看网桥:
[root@yaya Desktop]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c2986a360 no eth0
vnet0
pan0 8000.000000000000 no
virbr0 8000.5254003d1165 yes virbr0-nic
[root@yaya Desktop]#