一、需求来了:开 10 台测试机
双十一前,运营小圆找到小陈:"小陈,我们要测大促活动,需要 10 台一样的测试环境,明天能给吗?"
小陈:"10 台?我从装系统开始,一台装半小时,10 台……明天加班到凌晨!"
老周拍拍他:"谁让你一台台装了?虚拟化里有'模板'和'克隆',一分钟开一台。走,教你。"
二、模板(Template):装一次系统,永远复用
"模板(Template)是 VMware 的'系统母版'——把一台装好系统、配好软件的 VM,变成一个'只读的模板',以后用它批量生成新 VM。"老周说:
模板的创建流程:
① 装一台"标准机":装好 OS + 常用软件 + 基本配置
② 清理:删临时文件、清历史、去除唯一标识(SID/MAC 等)
③ 转换成模板(Convert to Template):VM → 模板
④ 之后:从模板"实例化"新 VM(几分钟搞定)
云间书店的模板库:
template-centos8-web :装好 Nginx/Python 的 Web 模板
template-centos8-db :装好 MySQL 的数据库模板
template-windows-2022 :Windows 服务器模板(备用于老系统)
从模板创建 VM 的流程:
从模板部署 → 填新名字 → 选数据存储 → 完成!(几分钟)
"模板的意义:把'装系统'这件事从'几小时'变成'几分钟',而且每一台新机器都'一模一样'(不会这台少装个依赖,那台配置不同)。 这就是运维的'标准化'。"
三、克隆(Clone):从"现有机"复制
"模板是从'母版'造新机。克隆(Clone)是复制一台现成的 VM。"老周说:
克隆(Clone)两种:
完整克隆(Full Clone):
- 完全独立的副本(和原机没有任何关系)
- 复制全部数据(占用同样多的存储)
- 适合:要长期独立的机器
链接克隆(Linked Clone):
- 共享原机的"基础盘",只记录差异部分
- 秒开、超省空间(基础盘共享)
- 适合:测试环境(一堆差不多的小机器)
- 注意:原机没了,链接克隆也不能用了
模板 vs 克隆的区别:
模板:从"标准化母版"造新机(新装、干净、一致)
克隆:从"现有实例"复制(快,但可能带着原机的'历史包袱')
"生产标准化用模板,测试批量用克隆——这是最实用的分工。"
四、自定义规范(Customization):让每台新机"独一无二"
"从模板出来的 10 台机器,总不能都叫一个名字、用一个 IP 吧?"老周说,"所以要有自定义规范(Guest Customization):"
自定义规范(Customization Specification):
定义"新 VM 要设置的东西":
- 主机名:test-01、test-02 ...
- IP 地址:192.168.20.101-110
- 管理员密码、时区、DNS
- Windows:SID 重新生成(重要!域环境必须)
从模板部署时勾选"自定义规范"
→ 10 台机器自动获得不同的名字/IP,开箱即用!
"模板 + 自定义规范 = 批量交付标准化机器的流水线。 运维人员喝杯咖啡的功夫,10 台机器已经就绪。"
五、备份:快照不能当备份,真正备份靠什么
"还记得第四章快照的禁忌吗?——快照不能当备份。"老周说,"那真正的备份是什么?"
快照 vs 备份(关键区别):
快照:VM 在"同一存储"上的状态记录(依赖原文件)
→ 存储坏了,快照一起没
备份:把数据"复制到另一处"(不同存储/离线介质)
→ 存储坏了,备份还在!
云间书店的备份方案(3-2-1 原则):
3 份数据:原始 + 备份 + 异地备份
2 种介质:磁盘 + 磁带/对象存储
1 份异地:放另一个机房/云上
VMware 备份工具:
- vSphere Replication:VM 级复制到另一站点(容灾)
- 第三方:Veeam、Commvault(生产常用)
- 手动:快照导出 / 复制 VMDK(小规模应急)
备份频率策略(云间书店):
db-01(数据库):每天全备 + 每 6 小时增量(重要!)
web-01(Web) :每周全备(代码有版本库,变化少)
测试机 :不备份(随时能重建)
"备份的铁律:备份必须'定期验证恢复'。 备份了 100 次,第 101 次恢复失败 = 前 100 次白备份。每月做一次恢复演练——把备份恢复到测试环境,确认能跑起来,才叫'有效的备份'。"
六、容灾(DR):机房没了,业务也不能没
"最后是最硬核的:容灾(Disaster Recovery, DR)。"老周说,"备份防的是'数据丢失',容灾防的是'整个站点没了'(火灾、洪水、机房断电……)。"
容灾(DR)的概念:
主站点(生产机房) → 备站点(异地机房/云)
├── vSphere Replication:把关键 VM 实时/定期复制到备站点
└── Site Recovery Manager(SRM):一键切换主备(编排工具)
恢复指标(两个 R):
RPO(Recovery Point Objective)数据丢失容忍度:
可接受丢多少数据?(1 小时?24 小时?)
→ 决定复制频率(RPO 1h = 每小时复制一次)
RTO(Recovery Time Objective)恢复时间目标:
可接受多久恢复?(4 小时?1 天?)
→ 决定恢复流程(SRM 自动化 vs 手动)
云间书店的容灾分级:
db-01(数据库):RPO=1h,RTO=4h(vSphere Replication 到云)
web-01(Web) :RPO=24h,RTO=24h(备份到云即可)
测试环境 :无容灾要求(没了重建)
"记住两个 R:RPO 是'丢多少',RTO 是'等多久'。 预算有限时,先保数据库的 RPO(少丢数据),再优化 RTO(快恢复)。"
七、章末:老周的第七、八层总结
第七层:模板与克隆
├── 模板:系统母版,从模板批量生成标准化新机
├── 克隆:复制现有机(完整独立/链接省空间)
├── 自定义规范:自动配置主机名/IP/SID(开箱即用)
└── 核心价值:装系统从几小时 → 几分钟,标准化交付
第八层:备份与容灾
├── 快照 ≠ 备份(备份要存到"另一处")
├── 3-2-1 备份原则(3份/2介质/1异地)
├── 备份必须定期"恢复演练"(恢复不了=白备份)
└── 容灾:vSphere Replication + SRM
RPO(丢多少)/ RTO(等多久)
"小陈,到这里,云间书店的虚拟化已经有:单机 → 集群 → 高可用 → 资源管理 → 模板批量交付 → 备份容灾。你基本具备一个'能干活'的虚拟化运维能力了。"
"但是!"老周话锋一转,"你所有的决策——加 vCPU、调份额、扩存储——依据都是什么?"
"……感觉?"
"又来了!"老周叹气,"凭感觉调优,是运维的大忌。 我们要用数据说话:CPU 到底用满没有?内存是不是虚高?磁盘瓶颈在哪?延迟多少?——这就是下一章:性能监控与优化。双十一那天,这些数据会救你的命。"