yum groupinstall Virtualization "Virtualization Client"
yum install libvirt
启动服务
systemctl enable libvirtd
systemctl start libvirtd
systemctl status libvirtd
需要准备的东西有三样,Windows的系统镜像、windows兼容驱动、Cloudbase初始化程序,材料都帮你准备好了,就在下方的百度云链接里,还附带已经做好了的Windows Server 2012r2镜像
链接: https://pan.baidu.com/s/1sTAGZsTaTYINVEtSCjKvYA
提取码: 访问我的博客获取 https://if010.com/cloud_service/make_windows_image_for_openstack.html
qemu-img create -f qcow2 ws2012r2.qcow2 20G
# 把已存在的虚拟机删除,避免冲突
virsh destroy ws2012r2
virsh undefine ws2012r2
# 启动虚拟机
virt-install --name=ws2012r2 --ram=2048 --cpu=host --vcpus=2 \
--os-type=windows --os-variant=win2k12r2 \
--disk /data/ws2012r2.qcow2,bus=virtio \
--disk /data/cn_windows_server_2012_r2_datacenter_with_update_x64_dvd_4048415.iso,device=cdrom,bus=ide \
--disk /data/virtio-win-0.1.126.iso,device=cdrom,bus=ide \
--network network=default,model=virtio \
--graphics vnc,listen=0.0.0.0 --noautoconsole
netstat -ntlp | grep qemu-kvm
查找到虚拟机的vnc端口为5900,使用tigerVNC进行连接,并在控制台完成系统安装。ip就是服务器的ip,端口默认第一个为5900以此类推,也可以通过命令virsh vncdisplay vmname
查询端口,推荐使用tigervnc来打开。
由于windows并不自带openstack的驱动,系统启动后无法识别到硬盘,需要手动加载virtio驱动;并且网卡驱动也需要使用virtio驱动。因为前面启动虚拟机时已经挂载了virtio镜像,这里可以直接到计算机里面全安装。
点击 浏览–光驱vortio-win-0.1.1, 定位到viostor\sk12R2\amd64
安装完成,系统进入登录界面,使用F8快捷键召唤 TigerVNC菜单,选择Send Ctrl+Alt+Del
在设备管理的以太网控制器上右键,浏览到光驱下面的NetKVM,选择2k12R2
在安装cloudbase-init之前要做好系统的设置(根据场景需求),主要是以下几点:
1.关闭防火墙
2.开启远程桌面
3.安装常用软件(如:防病毒、基线核查等)
4.组策略、本地策略等设置
双击msi文件安装cloudbase-init,按照如下截图选择
virt-sparsify --compress /data/ws2012r2.qcow2 /data/Windows-Server-2012r2.qcow2
# 载入凭证
source admin-oprc
# 上传镜像
openstack image create "Windows Server 2012r2" --file Windows-Server-2012r2.qcow2 --disk-format qcow2 --container-format bare --public
创建实例的时候记得需要设置元数据admin_pass
重置密码,如下图
首次登录需要设置密码,这里要后退用元数据的密码登录再修改(不知道为什么,有大神可以告诉我吗。。。。)