设为首页 收藏本站
查看: 1950|回复: 0

[经验分享] 制作 OpenStack Windows 镜像

[复制链接]

尚未签到

发表于 2017-6-24 16:33:04 | 显示全部楼层 |阅读模式
  这是 OpenStack 实施经验分享系列的第 2 篇。
  

  OpenStack 通过 Glance 镜像部署 instance,上一节我们介绍了 linux 镜像制作方法,windows 镜像与 linux 有很大不同,今天我们以 windows2008 为例详细讨论。

  
镜像制作步骤如下:
1. 创建并运行 windows2008 KVM 虚拟机
2. 安装 virtio 驱动
3. 安装 cloudbase-init
4. 其他定制工作
5. 创建 Glance 镜像
6. 通过镜像部署新 instance
1. 创建并运行Windows2008 KVM虚拟机
  如果有 virt-manager,这一步可以在图形界面中完成。考虑到不是所有情况都有 virt-manager,我们这里直接在 KVM 宿主机上操作。下面的步骤用于创建 windows2008 虚拟机。
  
首先创建一块 20G 的虚拟磁盘作为虚拟机的启动盘:
  

  qemu-img create -f qcow2 /var/lib/libvirt/images/win2008r2sp1.qcow2 20G
DSC0000.png


  copy 虚拟机模板
  
  cp template.xml win2008r2sp1.xml
  
template.xml 这个模板怎么来?其实很简单,通常直接 dump 现有 kvm 虚拟机的 xml 定义就可以了。比如:
  

  virsh dumpxml [vm-id]  > template.xml
  

  修改win2008r2sp1.xml中以下各项:
  

  虚拟机名称
  

   DSC0001.png
  虚拟磁盘(前面通过 qemu-img 创建的)和启动ISO
  

DSC0002.png

  创建虚拟机
  

  virsh define win2008r2sp1.xml
  

  

DSC0003.png

  启动虚拟机
  

  virsh start win2008r2sp1
  

DSC0004.png

  
  通过vnc连接虚拟机
  
   DSC0005.png
  

  这里 172.17.12.11 为宿主机 IP,端口号为 2(可通过 virsh vncdisplay 查询到)。连接成功后,显示虚拟机安装界面
  

   DSC0006.jpg
  通过向导安装操作系统,过程不再赘述。如果在安装过程中虚拟机没有自动重启,可以通过下面的命令启动虚拟机
  

  virsh start win2008r2sp1
  

  安装成功后,设置 IP 地址
  

   DSC0007.png
2. 安装 virtio 驱动
  OpenStack 默认使用 virtio 磁盘和网卡,virtio 的性能很好。由于 windows 没有自带 virtio 的驱动,需要手动安装,步骤如下:
  
添加一个 virtio 类型的磁盘。
  

  virsh edit win2008r2sp1
  

   DSC0008.png
  

  修改当前的网卡设备为 virtio。
  

DSC0009.png

  

  重启操作系统,安装 virtio 的驱动程序。
  

DSC00010.png

  

DSC00011.png

  

  

  

DSC00012.png

  

  virtio driver 的下载地址为 https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso

DSC00013.png
  

DSC00014.png

3. 安装 cloudbase-init
  cloudbase-init 使 windows 镜像部署的 instance 能够自动配置 IP 地址等个性化信息。其作用与 linux 的 cloud-init 一样,下面演示 cloudbase-init 的配置方法。
  下载 cloudbase-init
  

  https://cloudbase.it/cloudbase-init/#download
  在虚拟机中安装 cloudbase-init
  

  可通过远程桌面上传 cloudbase-init 安装程序并安装


  

DSC00015.png

  

DSC00016.jpg

  
DSC00017.png
  
DSC00018.png
  
DSC00019.png
  

DSC00020.png

  
DSC00021.jpg
  

DSC00022.png

  

  系统会自动关机。
4. 其他定制工作
  重新启动虚拟机,完成其他定制工作,比如根据需要安装一些常用软件等。至此,windows 镜像文件已经准备好,文件路径为
  

  /var/lib/libvirt/images/win2008r2sp1.qcow2
5. 创建 Glance 镜像
  镜像创建方法与上一节 linux 镜像一样
  
glance image-create --name "Windows 2008 R2 SP1" --file /var/lib/libvirt/images/win2008r2sp1.qcow2 --disk-format qcow2 --container-format bare --is-public true --progress
  

DSC00023.png

6. 通过镜像部署新 instance
DSC00024.png

  
  点击镜像后面的“启动云主机”按钮。
  

DSC00025.png

  

  给 instance 命名,并点击“运行”,instance 创建成功并分配到 IP。
   DSC00026.png
  
  点击 instance 名字。

DSC00027.png
  
打开 console。
  

DSC00028.png

  在 VNC 控制台可以看到 instance 正常启动。

  

DSC00029.jpg

  

  点击 Administrator 用户
  

DSC00030.jpg

  

  第一次登录需要修改密码。
  

   DSC00031.jpg
  

  以上就是定制 OpenStack Windows 镜像的操作,下一节讨论几个镜像使用上的经验和技巧。
  

DSC00032.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-387583-1-1.html 上篇帖子: 使用QEMU创建虚拟机 下篇帖子: python报错问题解决:'ascii' codec can't encode character
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表