首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有一种不关闭就可以更新应用程序或系统的方法?

是否有一种不关闭就可以更新应用程序或系统的方法?
EN

Stack Overflow用户
提问于 2020-03-01 08:42:21
回答 2查看 46关注 0票数 0

我在一家医院工作,系统在更新时关闭。在没有批准或修改的情况下做出所有的命令。考虑到这是一家医院,这是个大问题。所以,我的问题是,我们如何在不关闭系统的情况下更新系统。我最感兴趣的是没有停机时间的滚动更新

EN

回答 2

Stack Overflow用户

发布于 2020-03-01 08:54:22

这是一个非常广泛的问题,但总的来说,是的,完全有可能在不关闭系统的情况下更新系统。

最简单的解决办法是有一个重复的系统。假设您目前正在使用System。当您想要进行更新时,您可以更新System。由于您不使用System,所以更新可能需要很长时间。

一旦更新完成,您可以测试出系统B,以确保更新没有破坏任何东西。同样,这对系统的工作没有影响。只有在您确信更新没有破坏任何东西之后,才会切换到使用系统B。

这种切换几乎是瞬间的。

如果稍后发现更新有问题,仍然可以切换回System,后者仍在运行旧版本。

对于下一次更新,再次更新当前未使用的系统(在本例中为system ),并遵循所有相同的步骤。

如果您有备份系统,您也可以这样做。更新备份系统,然后失败,然后更新主系统。只需注意这样一个事实,即当更新正在进行时,您没有备份系统。因此,如果主系统在更新过程中崩溃,您就有麻烦了。(谢天谢地,这并不像听起来那么糟糕,因为至少你已经在系统上有了一位合格的服务工程师,他可以立即开始推进更新,以便在线备份,或者修复主系统的问题。)

当您有一个冗余系统时,同样的情况也是如此。您可以暂时禁用冗余,然后更新禁用的系统,翻转,再做一次。当然,与最后一个选项一样,在更新过程进行时,您是在没有安全网的情况下进行操作。

如果你的系统是一个集群系统,那就更容易了。如果您有足够的资源,您可以从集群中取出一台机器,更新它,然后再将它添加到集群中,然后执行下一台机器,等等。(这被称为“滚动更新”,也是Netflix、谷歌、亚马逊、微软、Salesforce等公司永远无法停工的方式。)

如果您没有足够的资源,您可以为更新向集群中添加一台机器,然后回到您确实有足够资源的情况。

票数 1
EN

Stack Overflow用户

发布于 2020-03-01 08:56:52

是。每种组件都可以不经引导地更新。对于窗口,您总是可以推迟重新启动。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60473391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档