1 配置虚拟桥接网卡
备份原网卡文件,然后修改网卡配置
DEVICE=eth1
BOOTPROTO=none
TYPE=Ethernet
#BROADCAST=192.168.1.255
HWADDR=00:1a:64:e5:cd:4e
#IPADDR=192.168.1.223
#NETMASK=255.255.255.0
#GATEWAY=192.168.1.1
ONBOOT=yes
BRIDGE=br0
NM_CONTROLLED=none
创建新的网卡 ifcfg-br0 内容如下
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
BROADCAST=192.168.1.255
IPADDR=192.168.1.223
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
2 关闭 networkmanager
chkconfig NetworkManager off
service NetworkManager stop
重启服务
这段内容非常重要,桥接成功与否均是源于这一步!
在/etc目录下创建qemu-ifup文件:
# vim /etc/qemu-ifup
添加如下内容:
#!/bin/sh
set -x
switch=br0
if [ -n "$1" ];then
/usr/bin/sudo /usr/sbin/tunctl -u `whoami` -t $1
/usr/bin/sudo /sbin/ip link set $1 up
sleep 0.5s
/usr/bin/sudo /usr/sbin/brctl addif $switch $1
exit 0
else
echo "Error: no interface specified"
exit 1
fi
为了简单直接给予任何人对该文件的所有权限,否则虚拟机将还是无法分配到ip地址
#chmod 777 /etc/qemu-ifup
解释下该文件的作用,该文件的主要作用就是在启动虚拟机时,创建一个虚拟网络设备(tapN,N=0、1、2...可理解为一个网卡或者是路由器上的一个插口),并将该设备使用桥接控制工具brctl添加到switch(桥br0)上。可理解为在一个路由器上开了一个新的网线插口。这一步的操作是桥接成功的关键,网上的很多教程均没有提到,本人多次尝试失败后来只好去看官网的文档,最终才得以知道问题的真相。
3.配置转发
执行以下命令:
#echo 1 > /proc/sys/net/ipv4/ip_forward
4 安装KVM
yum install -y kvm kmod-kvm kvm-qemu-img libvirt python-virtinst virt-manager virt-viewer bridge-utils
5.创建虚拟机镜像
为了使用方便本人先做一些链接,这样就可以直接使用命令kvm、kvm-img:
# ln -s /usr/libexec/qemu-kvm /usr/bin/kvm
# ln -s /usr/bin/qemu-img /usr/bin/kvm-img
进入存放目录创建镜像文件
cd /data/vm/
kvm-img create centos.img -f raw 10G
创建虚拟机镜像
这命令可以通过vnc连接到远程桌面后运行。运行成功后就会自动安装
virt-install --name=cnetos6.5 --disk path=/data/vm/centos.img --graphics spice --vcpu=1 --ram=1024 --location=/home/iso/CentOS-6.5-x86_64-bin-DVD1.iso --network bridge=br0