变更管理的最佳实践可使用自动化来完成以下几点:
1、部署尽可能在用户少的时候。
2、每次部署前备份原始数据。
3、采用渐进式发布机制。
4、迅速而准确地检测到问题的发生。...5、当出现问题时,安全迅速地回退改动。
常用部署方式存在以下几种:
蓝绿部署
滚动部署
灰度部署/金丝雀部署
蓝绿部署
正常将项目分为两组, 蓝组和绿组, 正常运转的情况下每组承载 50% 的流量....当准备发布服务时, 将蓝组流量设置为0%, 将绿组空闲出来, 将服务部署到绿组的机器, 然后利用SLB将流量切换到绿组的机器, 让绿组来运行业务, 没问题的话流量全部导向绿组, 把蓝组也进行服务更新
?...优点
更新过程无需停机,风险较少
回滚方便,只需要更改路由或者切换DNS服务器,效率较高
缺点
需要部署两套机器,费用开销大
在非隔离的机器(Docker、VM)上操作时,可能会导致蓝绿环境被摧毁风险...负载均衡器/反向代理/路由/DNS处理不当,将导致流量没有切换过来情况出现
滚动部署
生产中的N台机器都为版本A的机器, 部署取出一个或者多个服务器停止服务,执行更新版本B,更新后重新将其投入使用,继续不断更新其他机器