kvm - linux环境下安装虚拟机

准备工作

安装相关软件

配置网络

创建客户机

安装系统


_________________________________________________

准备工作
安装条件
KVM需要硬件及内核模块支持。
当机器上已经拥有一个linux时,可以执行命令确定该机器是否支持KVM。

    $ grep -E ‘vmx|svm’ /proc/cpuinfo

In the BIOS menu, select Advanced Step → CPU Options.
Confirm that the Intel Virtualization Technology option is Enabled.

检查有没有安装过xen
# uname -a            (查看有没有“xen”字样)





安装配置KVM相关软件

安装kvm软件

# yum install kvm

安装虚拟机管理软件包

# yum install virt-manager libvirt libvirt-python python-virtinst

安装相关包后的配置

加载kvm模块

# modprobe kvm

加载对应硬件模块

# modprobe kvm-amd         (amd芯片)

# modprobe kvm-intel         (intel芯片)





检查模块加载情况

# lsmod|grep kvm
# /etc/init.d/libvirtd start
# chkconfig libvirtd on


验证虚拟桥接网卡可用

# ifconfig virbr0


配置网络

验证虚拟网卡可用。该虚拟网卡,连接在一个虚拟桥设备上;默认情况下与主机网卡在同一网段。

以下情况,默认设置就够了:
你的kvm主机仅仅连接guest;或者联网时愿意从guest跳转来实现。(就是不想完全访问外网)

这里介绍是你不仅仅满足上面的情况。(就是你想完全访问外网)

配置主机网桥

如过kvm客户机需要完全访问网络,包括连通外部(主机意外)主机;就需要在主机设置网桥。桥接网络允许你连通两个以太网网段。创建步骤如下:

* 注意:linux网桥配置无法在主机无线网卡实现。

配置过程开始。

备份
# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /root/.
* 备份不可以在原始目录下或是原始目录下的目录。

# cd /etc/sysconfig/network-scripts/
# cp ifcfg-eth0 ifcfg-br0
br0是网桥的名字。


禁止防火墙过滤
增加内容到 /etc/sysctl.conf :
net.bridge.bridge-nf-call-ip6tables=0
net.bridge.bridge-nf-call-iptables=0
net.bridge.bridge-nf-call-arptables=0


该网卡可以是静态IP,也可以是DHCP获得的。
这里设置网卡,是把实际的网卡分解开来。一路分给guest主机(们),另一路分给平台主机使用。

1. 下面的内容,表明是静态的。
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:14:5E:C2:1E:40
IPADDR=10.10.1.152
NETMASK=255.255.255.0
ONBOOT=yes


# vi ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
HWADDR=00:14:5E:C2:1E:40
ONBOOT=yes
NM_CONTROLLED=no
BRIDGE=br0

# vi ifcfg-br0
DEVICE=br0
TYPE=Bridge
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=10.10.1.152
NETMASK=255.255.255.0
ONBOOT=yes

在原来的网卡eth0的配置文件中添加了三项,其他保持不变。
TYPE     The device type.
NM_CONTROLLED=no
        Specifies that the card is not controlled by the Network Manager. In order for the bridge to
        work, only one device can be controlled by the Network Manager.
BRIDGE=br0
        Associates this card with the bridge.


在br0的配置文件中。
DEVICE         代表设备名称
TYPE             设备类型,而且设置大小写敏感。
NM_CONTROLLED=no
                指出该设备不被“Network Manager”管理。这是为了让桥好好干活。(为了让网桥工            作仅仅一个设备可以被该服务管理。)
                其他各项保持不变。

* 注意:
            网桥的配置文件中,不应该有MAC地址配置项。





2. 网卡设置为动态地址。方法如下。

配置前网卡就是动态,配置文件像这个样子。
DEVICE=eth0
BOOTPROTO=dhcp
HWADDR=00:14:5E:C2:1E:40
ONBOOT=yes

配置
# vi ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
HWADDR=00:14:5E:C2:1E:40
ONBOOT=yes
NM_CONTROLLED=no
BRIDGE=br0

# vi ifcfg-br0
DEVICE=br0
TYPE=Bridge
NM_CONTROLLED=no
BOOTPROTO=dhcp
ONBOOT=yes




重启网络

# service network restart


增加内容
# vi /etc/sysctl.conf
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0

重新载入内核参数
# sysctl -p

查看以上配置
# ifconfig
# brctl show


Bridge is ok now.



创建kvm客户机安装系统

两种办法创建kvm客户机(guest)。
 virt-manager:     这个是一个图形界面工具
 virt-install:         这个是命令行界面工具

使用图形界面工具创建kvm客户机

ssh -X ......

virt-manager

.......





使用命令行工具创建kvm客户机



SLES 11 下
# virt-install \
--name kvm1 \
--ram 500 \
--disk path=/var/lib/libvirt/images/kvm1.img,size=5 \
--network network:default \
--accelerate \
--vnc \
-c /tmp/SLES11-x86_64-DVD.iso

RHEL下
# virt-install \
--name kvm2 \
--vcpus 2 \
--ram 1000 \
--disk path=/dev/mapper/VolGroup00-LogVol03 \
--network bridge:br0 \
--arch i686 \
-l nfs://10.1.1.212/nfsexport/rhel5.4-server-i386-is/

每当创建一个客户机的时候,都会在/etc/libvirt目录下,创建按一个xml文件,以其机器名命名。



# virt-install --name win-seven --ram 2048 --network bridge:br0 --disk path=/test/kvm/001.kvm/win-seven.img,size=38 --cdrom /test/kvm/cn-windows-7.iso 



* 这一步其实就已经能进入安装步骤了。



安装客户机操作系统

安装virt-viewer

# yum -y install virt-viewer

# virt-viewer <guest_name>

安装过程中,注意手动设置 IP 地址,以便于安装完成后能顺利登录。

系统安装结束后,仍然可以使用 virt-viewer 工具连接客户机。


* 最后测试的时候注意guest主机的防火墙设置。大多时候需要设置guest可以远程登录。而且主机必要情况下修改windows系统的远程登录端口为不常用的高端口。以增加安全几率。



wKiom1Xtm8jgWLCdAABm5lAGjro077.jpg

你可能感兴趣的:(kvm)