>

虚拟化配置

- 编辑:www.bifa688.com -

虚拟化配置

准备

最近对虚拟化非常感兴趣,尝试了一下centos 6 从xen开始学习,暂时没搞出来- -||,好像6的内核不支持xen,不过kvm也是不错的,写一些学习笔记,大多是网上各位大神的经验。

# yum install openssl-devel RedHat-rpm-config kernel-devel -y

一、安装centos 6.2 后下载163源配置文件
# cd /etc/yum.repos.d/ #进入源目录
# cp CentOS-Base.repo CentOS-Base.repo.bak #备份源文件
用下载的163源配置文件替换CentOS-Base.repo文件内容
# yum update 系统升级
如果不提示错误,CentOS-Base.repo文件中
gpgcheck=0
二、查看硬件是否支持虚拟化
1、KVM需要CPU支持虚拟化,执行以下命令查看是否支持虚拟化:
# egrep 'vmx|svm' /proc/cpuinfo
如果含有vmx或者svm字样,则表示支持CPU虚拟化,Intel是vmx,AMD是svm
否则进入bios进行修改,设置CPU支持虚拟化。
2、检查KVM是否加载成功
# lsmod | grep kvm
显示结果如下表示kvm模块已经加载,如果没有输出信息,则表示没有加载成功:
kvm_amd 50452 0
kvm 109264 1 kvm_amd

#yum install kvm libvirt python-virtinst qemu-kvm virt-viewer

三、配置网络桥接
1、安装tunctl:
# yum install -y tunctl
2、禁用网络管理器
# chkconfig NetworkManager off 和桥接有冲突,要关闭
# service NetworkManager stop
3、创建用以桥接的虚拟网卡,应该可以支持多个虚拟机分别配置不同的网卡,暂时没试过。
# cd /etc/sysconfig/network-scripts
# cp ifcfg-eth0 ifcfg-br0
编辑 ifcfg-br0
# vi ifcfg-br0

编译

DEVICE="br0"
TYPE="Bridge"
ONBOOT="yes"
BOOTPROTO=static
IPADDR=192.168.1.17
PREFIX=24
GATEWAY=192.168.1.1
DNS1=202.106.46.151
DELAY=0

# wget

编辑ifcfg-eth0
# vi ifcfg-eth0

#tar -zxf openvswitch-1.9.3.tar.gz

DEVICE="eth0"
NM_CONTROLLED="yes"
ONBOOT=yes
TYPE=Ethernet
BRIDGE="br0"
BOOTPROTO=none
IPADDR=192.168.1.17
PREFIX=24
GATEWAY=192.168.1.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth0"
UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03
DNS1=202.106.46.151
HWADDR=00:1E:67:07:EC:30
重新启动网络
# service network restart

# cd openvswitch-1.9.3

四、配置虚拟机
1、图形化配置
从菜单中启动,或者运行virt-manager进入图形管理界面,由于比较简单,在此不详述,不过img的位置要好好配置一下,kvm安装后会有一个默认位置,不注意的话容易占满空间。或者直接硬盘分区时单独给/var分一个区。
2、 命令行配置
首先定义变量,然后执行virt-install 进行安装,不定义变量也可以,但是命令会很长。
name=vm1
port=6900
img=/vms/vm1/vm1.img
ostype=linux
osvariant=rhel5
ram=800
cpu=1
sizeG=10
eth=br0
iso=/software/CentOS/CentOS-5.5-x86_64-bin-DVD-1of2.iso
virt-install --name $name --ram $ram --vcpus=$cpu
--disk path=$img,size=$sizeG --network bridge=$eth --os-type=$ostype --os-variant=$osvariant --cdrom $iso --vncport=$port --vnc
执行完以上命令,如果没有错误的话,就会打开虚拟系统安装界面。

# cp ../openvswitch-1.9.3.tar.gz ~/rpmbuild/SOURCES/

五、其他命令行及工具
查看正在运行的虚拟机:
virsh -c qemu:///system list
虚拟机的主要管理命令式virsh,进入virsh管理shell之后:

# cp rhel/openvswitch-kmod.files ~/rpmbuild/SOURCES/

六、其他问题
1、虚拟机重新配置
虚拟机的配置文件保存在/etc/libvirt/qemu目录下,扩展名是xml。
修改相应的文件即可重新配置虚拟机。
2、虚拟机备份及恢复
备份:拷贝/etc/libvirt/qemu目录下的xml配置文件,以及xml中设置的img文件。
恢复:进入virsh,执行define 目录下的xml文件路径
3、开机自动启动虚拟机
命令行下:在autostart目录下的虚拟机名。

# cp rhel/openvswitch.spec ~/rpmbuild/SPECS/

6 从xen开始学习,暂时没搞出来- -||,好像6的内核不支持xen,不过kvm也是不错的,写一些学习笔...

# rpmbuild  -ba ~/rpmbuild/SPECS/openvswitch.spec

# cp rhel/openvswitch-kmod-rhel6.spec ~/rpmbuild/SPECS/

# ls ~/rpmbuild/RPMS/x86_64/ |grep open

kmod-openvswitch-1.9.3-1.el6.x86_64.rpm

openvswitch-1.9.3-1.x86_64.rpm

openvswitch-debuginfo-1.9.3-1.x86_64.rpm

# rpm -ihv openvswitch-1.9.3-1.x86_64.rpm  kmod-openvswitch-1.9.3-1.el6.x86_64.rpm

Preparing...                ########################################### [100%]

1:kmod-openvswitch      ########################################### [ 50%]

WARNING: /lib/modules/2.6.32-431.el6.x86_64/weak-updates/openvswitch/brcompat.ko needs unknown symbol ovs_dp_ioctl_hook

2:openvswitch            ########################################### [100%]

使用openvswitch

# virsh net-destroy default

# virsh net-autostart --disable default

# service openvswitch start

/etc/openvswitch/conf.db does not exist ... (warning).

Creating empty database /etc/openvswitch/conf.db [  OK  ]

Starting ovsdb-server [  OK  ]

Configuring Open vSwitch system IDs [  OK  ]

Inserting openvswitch module [  OK  ]

Starting ovs-vswitchd [  OK  ]

Enabling gre with iptables [  OK  ]

图片 1

# ovs-vsctl add-br br0

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

DEVICE=br0

ONBOOT=yes

DEVICETYPE=ovs

TYPE=OVSBridge

BOOTPROTO=static

IPADDR=172.16.213.131

NETMASK=255.255.255.0

GATEWAY=172.16.213.2

HOTPLUG=no

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

DEVICE=eth0

ONBOOT=yes

DEVICETYPE=ovs

TYPE=OVSPort

OVS_BRIDGE=br0

BOOTPROTO=none

HOTPLUG=no

# service network restart

# ovs-vsctl show

1bc18f94-0b5c-44c2-afd5-ac7d370499f1

Bridge "br0"

Port "eth0"

Interface "eth0"

Port "br0"

Interface "br0"

type: internal

ovs_version: "1.9.3"

图片 2

在KVM中使用OVS

# yum install bridge-utils tunctl

[root@yinye ~]# virt-install --name=CentOS65 --ram 512 --vcpus=1  -f /root/kvm/centos65.qcow2 --cdrom /root/CentOS-6.5-x86_64-minimal.iso --graphics vnc,listen=0.0.0.0,port=5920,  --network bridge=br0

WARNING  KVM acceleration not available, using 'qemu'

开始安装......

ERROR    Unable to add bridge br0 port vnet0: Operation not supported

Domain installation does not appear to have been successful.

If it was, you can restart your domain by running:

virsh --connect qemu:///system start centos65

otherwise, please restart your installation.

如果不在命令行指定bridge为openvswitch类型 ,libvirt会尝试linux默认的bridge,而virt-install又不支持openvswitch。

详细参考

# virt-install --connect qemu:///system --name=centos65 --ram 512 --vcpus=1  -f /home/kvm/centos65.qcow2 --cdrom /home/kvm/CentOS-6.5-x86_64-minimal.iso --graphicsvnc,listen=0.0.0.0,port=5920,  --nonetworks

图片 3

图片 4

图片 5

virsh # edit centos65

增加

<interface type='bridge'>

<source bridge='br0'/>

<virtualport type='openvswitch' />

<model type='virtio'/>

</interface>

virsh # start centos65

图片 6

配置guest os的网卡

# cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

ONBOOT=yes

TYPE=Ethernet

HWADDR=52:54:00:D8:D7:FB

BOOTPROTO=dhcp

#ifup eth0

更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-12/110949.htm

图片 7

本文由bifa688.com发布,转载请注明来源:虚拟化配置