视频软件App开发引领数字内容创作与分享的新时代
979
2022-09-16
随便聊聊:如何硬气的打补丁不重启
上一篇文章介绍了为什么微软的系统,打补丁了要重启。这是一个既成事实,说的是如何去接受这个事实。
但是今天的故事会更有一点意思,我们介绍一下特定场景中,如何做到打补丁不重启的,也就是不去接受上面的事实。
虽然打补丁重启很麻烦,但是需要注意的是,在Windows 10/Windows Server 2016以后的操作系统中,我们不需要在意补丁的细节,只需要安装最新的补丁,这种补丁是累计更新的。
而在Windows7以及更早的系统中,补丁的安装是这样的:
早期的补丁安装方式优点和缺点同样明显:
补丁一般有专门的应对功能,相对体积较小,安装速度快。补丁2的安装可能依赖补丁1,有时候不见得会有很明确的说明。补丁3可能替换了补丁1,在安装补丁3的时候不需要安装补丁1。安装补丁依然会有可能需要重启。
如何做到打补丁不重启
打补丁不重启不是什么高科技,这只是微软的产品功能。说到功能,就要理解一般来说,这会有限制条件。一个恰当的比喻类似于显卡的光线追踪。
而在打补丁这个事情里,这项技术叫做 Azure Automanage 热补丁,他是随着Windows Server 2022的发布而带来的功能,但是这项功能又不是泛指所有的Windows Server 2022,它只支持一种操作系统
Windows Server 2022(core)
再次强调一下,是Windows Server 2022的CORE版。虽然使用CORE版会减低被攻击的风险,但是没有图形界面对大多数朋友来说,应该还是会带来一些障碍的。
而且也不是随便一个平台,随便一个版本就支持,它只存在下面两种环境中。
Azure(公有云)AzureStack HCI(混合云)
也就是说,本地化的Windows Server 2022(零售、EA)并不支持这项功能。要在自家数据中心使用这项功能,必须要使用AzureStack HCI,而云端则必须要选择Azure。
什么是 Azure Automanage 热补丁
这里简单介绍一下这项功能:
“Windows Server 2022 Datacenter:Azure 版本”支持 Azure Automanage 中的热补丁。 热修补是在新的 Windows Server Azure Edition 虚拟机 (VM) 上安装更新的一种新方式,安装后无需重新启动。 有关详细信息,请参阅 Azure Automanage 文档。
热补丁目前处于公共预览版中。需要一个选择加入程序才能使用下面描述的功能。此预览版在没有服务级别协议的情况下提供,不建议用于生产工作负载。某些功能可能不受支持或功能受限。有关详细信息,请参阅Microsoft Azure 预览版的补充使用条款。
热补丁的工作原理
Hotpatch 的工作原理是首先使用 Windows 更新最新累积更新建立基线。基于该基线的热补丁会定期发布(例如,每月的第二个星期二)。热补丁将包含不需要重新启动的更新。定期(从每三个月开始)使用新的最新累积更新刷新基线。
上面的话很官方,简单来说就是这样:
可以做到打补丁不重启,但是这只能坚挺三个月每3个月会打一个基线补丁,这个时候会重启。周而复始
回到和Windows7时代的补丁机制对比,每个补丁很小,对系统的影响相对较小。但是每3个月会对齐一下基线,让补丁不至于和Win7一样乱,这对于解决补丁依赖和补丁替代,会有积极的作用。
除了上面计划内的补丁安装之外,也可能会出现一些计划外的补丁,比如重大的0day,那就可能会发布新的需要重启的补丁。
补丁安装的原则是这样的:
分类为“关键”或“安全”的补丁会自动-并应用到虚拟机上。在 VM 时区的非高峰时段应用补丁程序。补丁编排由 Azure 管理,补丁的应用遵循可用性优先原则。监控通过平台健康信号确定的虚拟机健康状况以检测修补故障。
实现
要开始在Azure上新 VM 上使用热补丁,请执行以下步骤:
启用预览访问
每个订阅都需要启用一次性预览访问权限。可以通过 API、PowerShell 或 CLI 启用预览访问,如下面的“启用预览访问”部分所述。
从 Azure 门户开始创建新 VM
在预览期间,您需要开始使用此特定链接创建。
在 VM 创建期间提供详细信息
确保在“图像”下拉列表中选择了受支持的Windows Server Azure 版图像。使用本指南确定支持哪些图像。在“来宾操作系统更新”部分下的“管理”选项卡上,选中“启用热补丁”复选框以在预览时评估热补丁。补丁编排选项将设置为“Azure 编排”。在“Azure Automanage”部分下的“管理”选项卡上,为“Azure Automanage 环境”选择“开发/测试”或“生产”,以在预览时评估 Automanage 机器最佳实践。
创建你的新虚拟机
补丁更新
我们可以手动的对系统打一下补丁,试验一下效果,看看到底是不是真的不用重启。
在安装好的操作系统,进入来宾和主机更新→转到热补丁(预览)
在这个界面Assess updates→立即触发评估→确定
等待评估结束,可以看到能够安装的补丁会在下方列出来。
进行如下配置,默认不需要修改
确认无误,正式安装
右上角会出现提示正在安装。
由于补丁不大,安装很快结束。
一条正常的安装日志,大概是长这个样子的。
补丁安装失败的情况处理
在我的测试过程中,我发现补丁安装有失败的情况,那这个锅应该甩给热补丁么?
检查日志,看到有如下错误提示
检查日志过程中,发现裸机内存占用很大,远程桌面也有时会断联。
内存扩容为3.5G,裸连直接使用掉2G,因此可以下定论,Windows Server 2022比较占用内存资源,即使是CORE,也要分配4G内存。
内存扩容后,补丁安装正常,现阶段可以看出来,Windows Server 2022对系统资源要求相对较高,这一块大家一定要有心理预期。
总结
从我最早知道热补丁这个概念的时候,我对他的期待还是蛮高的,安装补丁要重启,重启就有可能带来各种意外的问题。所以不重启的话,就能减低出现问题的可能性。
现在的功能从标配的次次重启改成了3个月重启一次。并且在Azure上,可以由Azure来托管补丁的安装过程。这对于云端用户是个利好消息。
而本地化的用户呢?其实这种改变对本地化用户也有很大的影响,在本地使用需要使用Azure Stack HCI。HCI的账单会从Azure走,进行合并。如果用户没有互联网连接,也就无法使用这项功能。
虽然没有做到完全的不重启打补丁,这是一种有很多前置条件的不重启,但这确实在某种程度上改变了和推进了云运维的模式。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~