内部做一个新的环境,在更新生产环境前先把生产服务等先在这个服务上过一遍,确认没问题后再上生产,这个环境叫什么环境?这种流程叫什么流程?

9 天前
 chaoyebugao

想了解大家发布生产前会不会有这样一个环境?我这目前没有,每次发布的服务一多就手忙脚乱,神经紧绷,一点都不丝滑。现在我这的做法是:

  1. 一两天前确定 [发布计划]
  2. 所有人准备 [发布说明] + 合并分支
  3. 然后由我打镜像,准备发布事项
  4. 更新生产镜像、SQL 、TerraForm 等事项
  5. 宣布更新完成,测试员回归

以上流程,是直接更生产,回归期间有问题直接修复,如果到了业务敏感时间段还得申请才能走 hotfix ,很多时候都会消耗一天的时间才能完成一次迭代。不是说发布前测试完就能在生产上避免问题,来自工程管理上的细节太多了,问题会像噪声一样溢出到生产。所以才想着一般是不是做一个这样的环境去做回归,然后才上生产,然后二次回归。

这样的环境叫什么?预发布环境?蓝绿部署?关键是,大家会不会这么做?

3430 次点击
所在节点    DevOps
50 条回复
leehaoze98
9 天前
@chaoyebugao 从线上剥离一台机器或者一个小集群,域名、各类中间件都是相同的,一个不对外提供服务的线上环境,一直在线上活着,只是没有流量而已。如果是微服务的形态,会通过流量染色把回归人员的流量转发到本次上线服务的预发布版本,量很大的服务还会有金丝雀发布,流量是一点点分配到新版本上的

走到这一步已经是在上线流程中了,再点下一步就是单台单边单集群推全量正式上线了,预发布是最后一道防线,在预发布回滚是很严重的事故。
willamtang
9 天前
dev-cons-prod
COW
9 天前
我们是逻辑上分离内部用户出来,都是一个生产环境,前面有一个集成测试环境。
i0error
9 天前
仿真。
dev test pre sim gray prod stable 我司😅
vaynecv
8 天前
预发环境/Pre
Inn0Vat10n
8 天前
阿里系, 这个环境叫预发
sslyxhz
8 天前
dev->test->staging->prod

不过都逐步去掉 staging 了
whoosy
8 天前
预发布
realpg
7 天前
@ZARRO #11
共用数据库不代表使用的账户是公共真实客户的账户
我们搞这个, 都是公司内部员工账户使用

预发布一定是跟线上一模一样的环境 用来发现只有发布到线上环境才可能出现的问题
显然你们这是把一个不应该预发布的版本弄到了预发布的版本上

去掉了预发布这一步, 你们这种用法直接会导致生产环境重大事故
chaoyebugao
4 天前
@realpg 非常赞同!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1166213

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX