Centos7利用kvm搭建Windows虚拟机

这几天玩了一下kvm虚拟化,真的颇有意思,我把这几天踩的坑,还有收获,都记录下来,做为之后的复习和检查。python

首先说一下个人基本逻辑,我有一台win7的笔记本,个人底层虚拟化是使用VMWare构建的Centos7虚拟机,我如今须要在Centos7虚拟机中搭建kvm虚拟机,而且在里面安装win2012server系统。windows

物理机:win7笔记本bash

底层虚拟化:VMWare 虚拟化 Centos7 x64ui

上层虚拟化:kvm 虚拟化 win2012spa

首先咱们须要查看本身的物理机和VM机器是否支持虚拟化,这点很重要,由于Kvm须要虚拟化vmx支持。rest

执行code

egrep '(vmx|svm)' --color=always /proc/cpuinfo

 能够看见带有vmx,说明支持vmx虚拟化orm

若是没有这个输出,说明你没有开启vmx虚拟化支持,因此,你须要在VMware虚拟机设置里,找到虚拟化引擎,勾选虚拟化Intel,就能够了。server

接下来你须要安一大堆东西,这些东西都是支持kvm运行的,直接复制粘贴而后运行吧。blog

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

安装VNC,这玩意很是重要,是后面链接安装必需要的玩意儿。

yum -y install vnc-server yum -y install tigervnc-server

启动libvirtd服务

/sbin/service libvirtd restart ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-kvm

接下来是重头戏,搭配网卡,不然到时候安好了上不去网就抓瞎了

首先,咱们的网卡确认是桥接模式,新建一张网卡br0:

建立网桥touch /etc/sysconfig/network-scripts/ifcfg-br0 vi /etc/sysconfig/network-scripts/ifcfg-br0
在ifcfg-br0添加:
DEVICE=br0 TYPE=Bridge ONBOOT=yes BOOTPROTO=static IPADDR=公网IP NETMASK=公网IP掩码 GATEWAY=公网IP网关
接下来修改一下你本身的网卡配置,个人网卡是en33
vi /etc/sysconfig/network-scripts/ifcfg-en33
修改几个地方:
BRIDGE="br0"
ONBOOT="yes"
BOOTPROTO="none"
其余不变
保存以后重启network服务
service network restart

若是没有问题的话,你这里会显示

查看一下网桥:brctl show

能够看见以下,这样就没错了。

 

好了,重头戏结束了,剩下的难点很少,继续吧。

在kvm中,安装windows须要使用virtio驱动,这个驱动是安装windows中必需要的,不然就会找不到硬盘,咱们先下载驱动。

注意:在配置完网卡之后,你可能会碰见yum install error 的问题,不用担忧,请执行 vi /etc/resolv.conf,添加 nameserver :8.8.8.8

 

安装virtio驱动:

wget https://fedorapeople.org/groups/virt/virtio-win/virtio-win.repo -O /etc/yum.repos.d/virtio-win.repo
yum install virtio-win -y

最后就是搭建一个虚拟机:

建立一个虚拟机磁盘:
qemu-img create -f qcow2 win2012.img 40G
建立虚拟机,这是我本身的配置,大家可能要本身修改一下
virt-install -n win2012 --vcpus=2 --ram=1024 --os-type=windows --os-variant=win2k12 \
-c /vm/iso/cn_windows_server_2012_r2_sp1_x64.iso \
--disk path=/usr/share/virtio-win/virtio-win-0.1.126_amd64.vfd,device=floppy \
--disk path=/vm/win2012.img,format=qcow2,bus=virtio --graphics vnc,listen=0.0.0.0 \
--noautoconsole

命令解释:

1 virt-install 
2 -n win2012 3 --vcpus=2      #分配两个CPU给这台机器
4 --ram=1024     #分配1024内存
5 --os-type=windows #类型是windows 6 --os-variant=win2k12 -c /vm/iso/cn_windows_server_2012_r2_sp1_x64.iso #指向镜像 7 --disk path=/usr/share/virtio-win/virtio-win-0.1.126_amd64.vfd,device=floppy #指向驱动virtio-win-0.1.126_amd64 8 --disk path=/vm/win2012.img,format=qcow2,bus=virtio --graphics vnc,listen=0.0.0.0 #指向虚拟磁盘wind012.img,默认端口5900
9 --noautoconsole

查看虚拟机:

执行完上面哪些命令之后,你会看见

执行查看虚拟机的命令:virsh list --all

你已经有了一个虚拟机了,如今你只须要安装系统。

而后连接机器

接下来就是安装windows那一套,老样子,我已经安过,就不展现。

这样一个kvm虚拟机就搭建好了。

还有别的玩法,后面我再写。

相关文章
相关标签/搜索