制作适用于openstack的Windows server 2008镜像

时间:2021-07-21 20:32:39

因为实验室需要在Openstack上安装Windows Server 2008,这里记录一下制作适用于Openstack的windows server 2008镜像的过程。

1.首先需要使用kvm等工具,利用如下的命令,下载安装。

sudo apt-get install qemu-kvm libvirt-bin virt-manager bridge-utils xtightvncviewer qemu-system virt-viewer

2.到http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/网站上下载virio-win的.iso文件。

这个文件是一个驱动文件,我们虚拟机windows系统中的磁盘和网卡的驱动,都需要这个iso文件来安装。

3.使用如下的命令来创建磁盘映像文件,这里创建了一个20G大小、qcow2格式的文件。

qemu-img create -f qcow2 winserver2008.img 20G

4.创建虚拟机

这里我使用virt-install来安装虚拟机。各个选项的意思,看参数也能猜个大概,就不详述了。

 virt-install --connect qemu:///system -n winserver2008 --vcpus=2 -r 2048 --disk=/home/hjy/winserver2008.img,size=60,format=qcow2,bus=virtio,cache=none -c /home/hjy/work/windowsserver2008x86.iso --vnc --vncport=5909 --vnclisten=0.0.0.0 --os-type windows --os-variant=win2k8 --accelerate --network=bridge:virbr0,model=virtio --disk path=/home/hjy/work/virtio-win-0.1-81.iso,device=cdrom,perms=ro

5.利用vnc连接到虚拟机中,使用的命令如下,这里127.0.0.1是本地的ip地址,5909是刚才设置的vnc的端口。

vncviewer 127.0.0.1:5909
打开后如下图所示,然后按照装系统的步骤往下执行。

制作适用于openstack的Windows server 2008镜像

注意:如果刚才已经安装了virt-viewer这个软件,则vnc会自动打开,不必使用上述命令。
在选择驱动的时候,选择我们在刚才命令行中输入的CDROM,WLH是winserver2008,WNET是winserver2003。AMD64是64位系统的驱动,X86是32位系统的驱动。

制作适用于openstack的Windows server 2008镜像

之后等待一些时间系统就会安装好了。但是这个系统是没有网络适配器和网卡驱动的。我们需要再自行安装。

6.给windows server2008 安装网卡驱动

关闭虚拟机,在命令行下输入如下命令,开启虚拟机管理界面,在该界面中可管理我们的虚拟机。(不是必要步骤)

virt-manager

制作适用于openstack的Windows server 2008镜像

在虚拟机中,安装网卡驱动程序,根据系统提示,这个驱动程序可在CDROM中搜索,安装完成后就可以在虚拟机里上网了,如下图所示。

制作适用于openstack的Windows server 2008镜像

配置windows server 2008,在系统属性中将远程桌面打开,如下图所示,配置完成后,关机。然后将img镜像文件上传至Openstack。

制作适用于openstack的Windows server 2008镜像

7.使用dashboard,将我们创建的img文件上传到openstack,如下图所示。

制作适用于openstack的Windows server 2008镜像
点击创建镜像后,要等待一阵子,才能安装好。安装完成后,就可以通过vnc访问了。

8.可通过控制台vnc访问我们安装的windows,如下图所示

制作适用于openstack的Windows server 2008镜像

至此,我们就做好可以在openstack上使用的Windows Server 2008的镜像文件了。

在这个过程中还遇到过一些问题:

1.创建镜像失败:主要原因是驱动没有安装正确,尤其是网卡;

2.可使用kvm-ok命令查看openstack的compute节点主机是否支持虚拟化,如果不支持的话,是不可以在该节点上安装虚拟机的。(由于我在配置环境时,刚好遇上实验室电脑配件升级,恰巧把BIOS中的CPU虚拟化选项给关了,导致虚拟机镜像无法创建。后来通过nova-compute.log日志文件发现该错误,便进入BIOS开启CPU虚拟化,然后镜像就可以创建了。)