KVM虚拟化安装教程

in 自动化 with 0 comment

本次是在Vmware虚拟机中安装,跟实际服务器上安装稍微有点点区别。

首先确认打开cpu支持虚拟化的选项

1.操作系统安装

本文采用Centos6.4X64操作系统,也可以采用RHEL/CentOS6.x。

(1)查看系统版本、内核版本

##查看系统版本
# cat /etc/redhat-release
CentOS release 6.4 (Final)

##查看内核版本
# uname -a
Linux KVM 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

注: 2.6.20以下的内核需要升级。
(2)关闭selinux,iptables,重启后生效
     ①. 关闭selinux
# vim /etc/sysconfig/selinux
SELINUX=disabled
     ②. 关闭iptables
# iptables -F
# iptables -X

# /etc/init.d/iptables save
# /etc/init.d/iptables stop

(3) 查看系统是否支持KVM虚拟化
# egrep '(vmx|svm)' --color=always /proc/cpuinfo               //要有vmx|svm才支持虚拟化

# reboot

2.安装KVM

#yum -y install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v libguestfs-tools gcc*

# /etc/init.d/libvirtd start                  //启动服务
# virsh -c qemu:///system list
Id    Name                           State
----------------------------------------------------

3.手动配置虚拟网桥

(1)关闭networkmanager服务

# /etc/init.d/NetworkManager stop
# chkconfig NetworkManager off
(2)创建br0网桥
# cd /etc/sysconfig/network-scripts/
# cp ifcfg-eth0 ifcfg-br0
# vim ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:41:DA:81
TYPE=Ethernet
UUID=21501ff5-e313-494c-a402-50f2a84f1f5c
ONBOOT=yes
NM_CONTROLLED=yes
#BOOTPROTO=static
#IPADDR=192.168.213.6
#NETMASK=255.255.255.0
#GATEWAY=192.168.213.2
BRIDGE=br0

# vim ifcfg-br0
DEVICE=br0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.213.5
NETMASK=255.255.255.0
GATEWAY=192.168.213.2
DNS1=8.8.8.8

DNS2=114.114.114.114
TYPE=Bridge

(3)重启network服务。

# /etc/init.d/network restart

#ifconfig       //检查是否网卡br0生效

(4)配置转发
执行以下命令:
#echo 1 > /proc/sys/net/ipv4/ip_forward
这一步虽然只有简单的一条命令,但却很关键。如果不执行这一步,所有的虚拟机将无法上网。
另外,上一步配置完桥接之后重启network,会自动将ip_forward改为0,所以重新配置网络后,不要忘了执行该命令。发现虚拟机无法上网的时候,也可以检查一下ip_forward值。

#brctl show      //查看网桥

br0    ...

virbr0   ...

至此虚拟机准备工作结束。下面正式安装。

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

以上为准备工作,一下为kvm系统安装

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

安装

1.上传iso系统镜像文件至目录/data/kvm

这里我采用的是CentOS-6.5-x86_64-bin-DVD1.iso

#ls /data/kvm

CentOS-6.5-x86_64-bin-DVD1.iso

2.编辑安装脚本

#vim /sh/create_kvm.shvirt-install \
--name centos1 \  
        ##虚拟机名称,自定义
--ram 512 \                  ##分配内存大小(默认大小MB)
--vcpus=1 \                 ##分配CPU核心数,最大与时提及CPU核心数相同
--disk path=/data/img/kvm_centos2.img,size=10 \      ##指定虚拟机镜像(size单位为GB)                                    

--network bridge=br0 \         ##指定网络
--cdrom=/data/CentOS-6.5-x86_64-bin-DVD1.iso \     ##指定安装镜像iso
--accelerate \                ##加速
--vnclisten=0.0.0.0 \     ##指定VNC绑定IP,默认绑定127.0.0.1,这里改为0.0.0.0

--vncport=5911 \        ##指定VNC监听端口(默认为5900),可以自行设置
--vnc                            ##启用VNC管理

以上注意每行后面的\一定不能省略,否则脚本运行报错。本人就因为大意,少写了\而报错。

#chmod 755 /sh/create_kvm.sh

#sh /sh/create_kvm.sh

Starting install...Creating storage file kvm_centos1.img | 8.0 GB 00:00 Creating domain... | 0 B 00:00 Cannot open display: Run 'virt-viewer --help' to see a full list of available command line optionsDomain installation still in progress. You can reconnect to the console to complete the installation process.

# echo $?
0
# virsh list
Id Name State
----------------------------------------------------
2 centos1 running

下一步通过vnc工具远程至KVM虚拟机中完成系统安装即可,过程跟实际系统安装步骤一样。

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

VNC工具进行系统安装

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

vnc下载内含注册码:http://yunpan.cn/cLemgfwtX5v4M  访问密码 f066

下载后直接连接到KVM虚拟主机上

连接地址:192.168.213.6:5911          //主机+端口号

 

安装完,重启系统,进入系统后,配置网卡信息,然后就可以通过xshell,putty等远程工具进行连接了。

安装电源

#yum install -y acpid

#chkconfig  acpid on

 

Virsh语法参考

virsh list                                列出运行中的虚拟机
virsh start centos                 启动centos虚拟机
virsh shutdown centos        关闭centos虚拟机
virsh destroy centos            强制关闭centos虚拟机
virsh autostart centos        设置centos自动启动
virsh undefine centos        删除centos虚拟机
virsh suspend centos         暂停centos虚拟机
vrish resume centos            恢复centos虚拟机
virsh reboot centos            重启centos虚拟机
virsh edit centos                编辑centos虚拟机
virsh vncdisplay  centos    vnc显示  

 

 

 

Responses