Joh*_*ohn 4 deployment upgrade
我正在编制一份原因清单,说明就地升级软件和操作系统是一个坏主意。与我一起工作的很多人认为,在旧版本的基础上安装新版本的软件或操作系统更容易、更好。然而,我认为这通常是一个坏主意,最好花额外的时间卸载软件项目的先前版本或执行操作系统的全新安装。所有这些还取决于是否有可靠的备份操作到位。
我想收集人们对就地安装与干净安装的其他想法。
在此先感谢您的帮助。我期待听到您分享的所有内容。
如果任何系统管理员喜欢就地升级,我会感到惊讶。一个简单的事实是,它们不是也永远不可能可靠。首先,您必须做出一个巨大的假设,即最初安装在系统上的每个软件包都是 100% 正确打包的。这从来都不是真的。总是有逻辑错误的包,或者写入他们忘记在包规范文件中提及的文件。编写包脚本是一项令人难以置信的乏味的工作,并且总是分配给任何软件团队中最初级的开发人员。
然后,您必须假设主机随着时间的推移得到了正确管理。没有人进入并手动修改配置或手动安装与打包二进制文件冲突的二进制文件。那永远不会发生,对吧?
请记住,安装所有这些新软件包意味着首先关闭旧版本的软件包。软件包关闭脚本是所有软件中测试最差的。没有人愿意处理他们宝贵的软件包被停用和丢弃的令人难以置信的无聊和不可想象的情况。此外还有一个巨大的问题 - 关闭包含共享库的包意味着做一些非常聪明的工作来关闭将这些库加载到内存中的包,或者在内存中交换正在运行的库。这是非常难以做到的。
最后,您必须假设为系统生成新版本的人员彻底测试了所有可能的升级组合,而不仅仅是将上一个版本升级到此版本的最简单情况。你必须相信他们能够以某种方式投入必要的无限资源来处理每一个可能的升级路径。
如您所见,这是一大堆(蒸蒸日上的)假设。在实践中,这些条件都不是真的。人们一直在机器上安装自己的二进制文件。包安装和删除脚本总是有问题(我可以单独就这个问题写一篇完整的论文)。最终结果是就地升级是一件傻事。
我还应该注意到,我的团队去年在我的工作中对 7500 台服务器进行了重大的操作系统和软件升级。我们非常努力地进行就地升级,但最终没有成功,原因有很多。我们最终擦除了所有机器并从头开始安装操作系统和所有软件。问题解决了。
所有这些导致我开玩笑说软件发布经理的口头禅是从轨道上核弹——这是唯一确定的方法。 彻底清除并重新安装系统是唯一确定的成功途径。大多数情况下,您可以通过增量升级来解决问题,但最终是重新开始的时候了。
| 归档时间: |
|
| 查看次数: |
7201 次 |
| 最近记录: |