概述
Windows模板封装是将已安装必要软件(驱动、QGA等软件)的Windows云主机,清除重建SID(安全标识符,用于标识用户、组和计算机帐户的唯一的号码)并封装为云主机镜像,主要用于定制化批量创建云主机。
- 本教程适用Windows版本:Windows Server 2003 R2
- 本教程适用ZStack Cloud云平台版本:5.5.30及以上版本。
环境准备
- ZStack Cloud云平台:
请在ZStack官网获取5.5.30及以上最新版本。
- Windows Server 2003 R2镜像:请在Microsoft官网自行获取Windows Server 2003 R2镜像,并遵守相关授权许可。本文档参考版本为:cn_win_srv_2003_r2_enterprise_x64_with_sp2_vl_cd1_X13-47314DVD1.iso和cn_win_srv_2003_r2_enterprise_x64_with_sp2_vl_cd1_X13-35321DVD2.iso。Note: Windows Server 2003 R2系统可能包含两个镜像文件,请大家下载齐全。
- USB3.0驱动(可选):
Windows Server 2003 R2操作系统仅自带USB2.0驱动,请按需安装USB3.0驱动。
参考地址(64位):http://cdn.zstack.io/tools/renesas_usb30_21390.exe 。
模板封装
- 添加镜像。
- 安装操作系统。
- 安装GuestTools及其他软件。
- 系统预处理。
- 创建系统模板。
以下详细介绍Windows Server 2003 R2操作系统模板封装完整流程。
添加镜像
将Windows Server 2003 R2镜像添加到ZStack Cloud镜像列表,为安装操作系统使用。
在ZStack Cloud主菜单,点击,进入镜像界面,点击添加镜像按钮,弹出添加镜像界面。
- 名称:设置镜像名称。命名规则:长度限制1~128字符,输入内容只能包含中文汉字、英文字母、数字、空格和以下7种英文字符
- _ . ( ) : +且不支持以空格开头或结尾 - 简介:可选项,可留空不填
- 镜像类型:选择系统镜像
- 镜像格式:选择iso镜像格式
- CPU架构:设置镜像的CPU架构,云主机在创建时将继承镜像的CPU架构,此处选择x86_64
- 平台:选择平台类型Windows
- 操作系统:选择Windows
- Virtio:打开
- 镜像服务器:选择已创建的镜像服务器
- 镜像路径:选择并填写添加镜像的URL路径或本地文件路径
- URL:采用指定的URL路径来添加镜像,支持以下格式:
- HTTP/HTTPS格式:
- 填写格式为:http://host[:port]/path/file或https://host[:port]/path/file
- FTP格式:
- 匿名模式:ftp://hostname[:port]/path/file
- 非匿名模式:ftp://user:password@hostname[:port]/path/file
- SFTP格式:
- 指定密码模式:sftp://user:password@hostname[:port]/path/file
- 免密模式:sftp://user@hostname[:port]/path/file
- 镜像服务器上的绝对路径,支持ImageStore镜像服务器
例如:file:///path/file
Note:- 输入URL时,需确保可被镜像服务器访问,且存在此镜像文件。
- 使用SFTP免密模式上传镜像时,需提前确保镜像服务器与SFTP服务器可互相SSH免密登录。
- 关于平滑连续进度条显示和断点续传:
- ImageStore和Ceph镜像服务器均支持平滑连续进度条显示与断点续传。
- 关于file:///方式上传镜像:
- 若使用Ceph镜像服务器,目前暂不支持file:///格式的输入。
- file:///是三个/,对应的路径应为镜像服务器的绝对路径。例如file:///opt/dvd/image-1.4.qcow2,在镜像服务器的/opt/dvd目录下应存放有image-1.4.qcow2文件。
- HTTP/HTTPS格式:
- 本地文件:选择当前浏览器可访问的镜像直接上传,支持ImageStore和Ceph镜像服务器Note: 添加本地文件作为镜像,采用了本地浏览器作为中转上传镜像,请勿刷新或关闭当前浏览器,也不可停止管理节点服务,否则会添加失败。
- URL:采用指定的URL路径来添加镜像,支持以下格式:
- BIOS模式:选择Legacy

同上,添加Windows Server 2003 R2 CD2镜像。
安装操作系统
使用添加的Windows Server 2003 R2镜像创建云主机并安装操作系统。
创建云主机
在ZStack Cloud主菜单,点击,进入云主机界面,点击创建云主机,在弹出的创建云主机页面中。
- 基础配置。可参考以下示例输入相应内容:
- 名称:设置云主机名称
- 简介:可选项,可设置云主机简介
- 数量:设置云主机数量,支持批量创建云主机
- 标签:可选项,可为云主机绑定一个或多个标签
- 分组:可选项,为云主机选择分组。如不选择,云主机将归属至默认分组。
- 设置云主机规格有以下两种方式:
- 基础规格:选择云平台已有规格创建云主机
- 计算规格:选择云平台已有计算规格
- 镜像:选择已添加的Windows Server 2003 R2 CD1镜像
- BIOS模式:选择云主机BIOS模式,默认与镜像BIOS模式保持一致
- 数据云盘:可选项,可为云主机创建并加载数据云盘
- 数据云盘规格:选择云平台已有数据云盘规格
- VirtioSCSI:可选项,可为云主机创建VirtioSCSI类型的数据云盘
- 自定义规格:自定义规格创建云主机
- CPU:设置云主机CPU核数
- 内存:设置云主机内存
- 镜像:选择云平台已有镜像
- BIOS模式:选择云主机BIOS模式,默认与镜像BIOS模式保持一致
- 数据云盘:可选项,可为云主机创建并加载数据云盘
- 数据云盘容量:设置数据云盘容量
- VirtioSCSI:可选项,可为云主机创建VirtioSCSI类型的数据云盘
- 基础规格:选择云平台已有规格创建云主机
- 资源配置。可参考以下示例输入相应内容:
- 网络配置:选择创建云主机使用的三层网络及相关配置,需配置以下参数:
- 网络:选择创建云主机使用的三层网络,包括:私有网络、公有网络、VPC网络
- 设为默认网络:若同时添加多个网络配置,可指定默认网络
- 启用SR-IOV:可选项,选择是否启用SR-IOV功能
- 指定IP:可选项,可自定义配置云主机IP地址
- MAC地址:可选项,可自定义配置云主机MAC地址
- 安全组:可选项,可为云主机配置安全组
- 集群:可选项,指定启动云主机的物理机所在的集群
- 存储分配策略:可选项,选择存储分配策略
- 物理机:选择指定的物理机来启动云主机。如果已经选择了集群,只能选择该集群所在的物理机
- 虚拟光驱:为云主机创建更多虚拟光驱
- GPU:通过指定规格或指定设备方式为云主机加载GPU设备(物理GPU、vGPU)
- CPU绑定:创建云主机时,设置云主机的虚拟CPU(vCPU)与物理机的物理CPU(pCPU)严格关联,可给云主机分配特定的pCPU,提高云主机性能
- 网络配置:选择创建云主机使用的三层网络及相关配置,需配置以下参数:
- 系统配置。可参考以下示例输入相应内容:
- SSH登录方式:可选项,可设置云主机SSH登录方式
- 主机名:可选项,可设置云主机的主机名
- UserData:可选项,支持上传用户自定义的参数或脚本,对主机做一些定制化配置或完成特定任务
- 控制台密码:可选项,可设置云主机控制台密码
- 控制台模式:可选项,可设置云主机控制台登录模式
- 确认信息。
查看将要创建的云主机,支持跳转修改。

安装GuestTools及其他软件
| 类别 | 名称 | 作用 |
|---|---|---|
| Virtio驱动 | SCSI控制器驱动 | Virtio类型的存储控制器驱动,能够有效提高虚拟化环境中云主机的磁盘性能。 |
| PCI简易通讯控制器驱动 | 安装PCI简易通讯控制器驱动后,Windows云主机能够与底层KVM虚拟化通信。 | |
| PCI设备驱动 | 安装并开启内存监控后Windows将支持气球内存伸缩功能。 | |
| 以太网控制器驱动 | Virtio类型的以太网控制器驱动,能够有效提高虚拟化环境中云主机的网络性能。 | |
| 常用工具 | QGA (QEMU Guest Agent) |
实现宿主机与云主机进行交互的应用程序,此交互方式不依赖网络,大大增强云主机的性能与功能。 检测云主机内GuestTools及Virtio驱动状态。 安装后云主机默认支持在线修改密码功能。 |
| Cloudbase-Init | 安装Cloudbase-Init的云主机支持导入User Data等定制化功能。 | |
| agent内部监控 |
安装agent后可以查看云主机内部监控数据。 |
安装GuestTools
- 安装GuestTools
ISO:
操作系统安装完成后,进入云主机详情页,点击安装性能优化工具,挂载GuestTools ISO到云主机。
- 加载GuestTools镜像:
进入云主机控制台界面,点击界面顶部GuestTools安装提示中的立即安装按钮,系统将自动加载GuestTools镜像到虚拟光驱,可前往我的电脑界面查看。
如图 5所示:图 5. 加载GuestTools镜像 
- 安装GuestTools及Virtio驱动:
右键选择自动播放或双击运行GuestTools安装程序,根据弹出的安装向导提示,依次安装安装GuestTools、常用工具和Virtio驱动。
如图 6所示:图 6. 安装GuestTools相关 

- 确认完成并重启计算机:
GuestTools相关软件安装完成后,在弹出的完成框中点击Finish按钮,确认完成并重启计算机使配置生效。
如图 7所示:图 7. 完成并重启计算机 
系统重启后,将自动修改云主机的平台为:Windows Virtio,并打开QGA开关。
- 安装以太网控制器驱动:
安装其他软件(可选)
除GuestTools中包含的工具/驱动外,用户可按需安装其他软件,例如:Windows Server 2003 R2操作系统仅自带USB2.0驱动,用户可按需安装USB3.0驱动,安装后USB3.0支持USB透传功能。
获取对应版本USB3.0驱动双击文件即可安装。参考路径(64位):http://cdn.zstack.io/tools/renesas_usb30_21390.exe 。

系统预处理
- 清空管理员密码:
在计算机管理页面,点击,然后在主页面右击Administrator选择设置密码,无需输入,直接点击确定按钮。
- 允许执行第三方脚本:
在云主机内,执行
Set-ExecutionPolicy RemoteSigned -Force,允许执行第三方脚本,保证网络配置下发、读取、执行脚本等平台功能可正常使用。 - 重新封装系统:
- 在云主机内,创建C:\sysprep文件夹。
- 打开系统光盘CD
1的D:\support\tools目录,双击打开DEPLOY.CAB文件,选中全部,右击选择提取,将DEPLOY.CAB文件内的所有文件提取到C:\sysprep文件夹,如图 11所示:
图 11. 提取文件到sysprep 
- 运行sysprep.exe文件,点击按钮,完成系统预处理。
创建系统模板
- Windows平台封装模板:
封装成Windows平台的云主机镜像使用Windows原生IDE驱动,磁盘/网卡性能较慢,但系统稳定。详情请参考Windows平台封装模板。
- Windows Virtio平台封装模板:
封装成Windows Virtio平台的云主机镜像使用Virtio驱动,能有效提高磁盘/网卡性能,但由于Windows Server 2003系统兼容性问题,封装过程可能存在网卡驱动异常,需要手动更新。详情请参考Windows Virtio平台封装模板。
创建云主机镜像后,可导出镜像用于其他云平台直接使用该镜像创建云主机,详情请参考导出镜像。
Windows平台封装模板
在云主机界面选中需要创建镜像的云主机,点击按钮,进入创建镜像界面。
- 名称:填写创建镜像的名称
- 简介:可选项,可留空不填
- 镜像类型:选择系统镜像
- 镜像服务器:选择已创建的镜像服务器

Windows Virtio平台封装模板
在云主机界面选中需要创建镜像的云主机,点击按钮,进入创建镜像界面。

导出镜像
- ImageStore类型镜像服务器:
在镜像页面点击按钮,即可导出镜像。
镜像生成后,可在总览页面复制已导出的镜像URL下载镜像,也可在导出记录页面复制已导出的镜像URL或直接点击下载镜像。
- Ceph类型镜像服务器:Ceph类型镜像服务器支持UI导出和镜像服务器导出两种方式:
- 在UI上导出:
在镜像页面点击按钮,即可导出镜像。
镜像导出后,可以在总览页面复制已导出的镜像URL下载镜像,也可以在导出记录页面复制已导出的镜像URL或直接点击下载镜像。
- 在镜像服务器上导出:
- 进入已创建镜像的总览页面,复制安装路径。
- 登录Ceph服务器终端,使用rbd
export命令导出,例如:假定获取到的安装路径为ceph://bak-t-c9923f982/61ece0adc72,使用以下命令导出镜像:
[root@ceph-node1 ~]#rbd export bak-t-c9923f982/61ece0adc72 /root/export-test.image #bak-t-c9923f982表示镜像所在的pool的名字 #61ece0adc72表示镜像的名字 #/root/export-test.image表示导出的目标文件名字Note: rbd export命令中不包含 ceph:// 前缀。
- 在UI上导出:




