DevOps部署和发布方法
-
在互联网和SaaS之前的时代,通常是,先有发布(Release),再有部署(Deployment)。研发团队发布一个版本,代表着开发完成并且测试完成是一个可以销售的软件,也代表着这个软件的上市。 将软件售卖之前,需要把版本复制到软盘、U盘或者刻录到光盘上,通常叫做发布到工厂(RTM,Release to manufacturing)。软件正式上市售卖代表着软件已经Gone Live,上线。 如果是面向个人的桌面系统软件,那么由个人担当部署的人员,将软件(来源于软盘、光盘、U盘)进行安装,安装后自行进行配置。如果是面向企业的软件,那么由甲方的IT工程师负责安装和配置,或者是由乙方的服务人员负责安装和配置。 还有另外一种情况,在甲方真正安装和配置软件之前,有一个用户验收测试(UAT,User Acceptance Test),在甲方的机房,先安装和配置一套,然后由甲方进行测试,如果测试通过,代表验收成功,就可以正式的去安装和配置。在互联网、移动互联网和SaaS时代,通常是,部署就代表着发布。敏捷DevOps时代,部署和发布解耦,变成了持续部署,按业务需要发布。 对于一些ToB的企业级软件,例如电信行业,通常是软件+硬件整体销售给运营商(例如中国移动),仍然会涉及到发送硬件(例如交换件、路由器)到运营商,然后设备商(例如华为)的服务人员在客户现场进行机房、硬件等的安装和配置,之后才会割接上线。 蓝绿部署是指有两个完全相同的、互相独立的生产环境,一个叫做“蓝环境”,一个叫做”绿环境“。绿环境是用户正在使用的生产环境。当要部署一个新版本的时候,先把这个新版本部署到蓝环境中,然后在蓝环境中运行冒烟测试,来检查是否正常工作,当一切准备就绪以后,向新版本迁移就非常简单了,只要修改一下路由配置,将用户流量从绿环境导向蓝环境就可以,这个时候蓝环境就变成了生产环境,这种切换通常在一秒钟之内就能搞定。如果出了问题,把路由器切回到绿环境上即可,然后在蓝环境中调试,找到问题的原因。所以蓝绿部署,是在部署之后,仅仅一次切换,立刻就向所有用户推出新版本,新功能对所有用户立刻生效可见。
西南地区IT社群(QQ)
- 云南
- 【昆明网页设计交流吧】243627302
- 【昆明nodejs交流吧】 243626749
- 【VUE】838405306
- 【云南程序员总群】343606807
- 【昆明UI设计】104031254
- 【云南软件外包】15547313
- 贵州
- 【PHP/java源码/站长交流群】55692114
- 四川
- 【成都Java/JavaWeb交流】86669225
- 【vaScript+PHP+MySql】116270060
- 【UI设计/设计交流学习群】135794928
- 重庆
- 【诺基亚 JAVA游戏博物馆】 559479780
- 【PHP,Java,Python,C++接单】 442103442
- 西藏