炙伦云终端分享嘉宾:
三、标准化构建平台,持续交付跑起来!
经过标准化建设后,企业内部大部分的系统开发、测试、部署实施规范就差不多大体落地了,接下来我们需要做什么呢?
虽然我们把标准化落实了,但是开发、测试和运维部署依然是孤立和隔离的,版本迭代效率并没有得到太大的提升,例如:
1. 版本测试、部署依赖文档,团队缺乏协助,然而在现实中,文档通常只是为执行部署者写的备忘录,是难以被他人理解的;
2. 手工部署环境,既不可重复也不可靠,在调试部署错误的过程中浪费很多时间;
3. 尽管手工部署枯燥且极具重复性,但风险高,仍需要有相当程度的专业知识,成本高昂的资深技术人员被困于其中,无法投入到更加有价值的工作;
4. 配置的环境管理依然是手工模式,没有版本跟踪,需要每一个环境的部署都需要文档和口头交流反复确认;手工运行已有的集成测试;
5. ……
持续交付可以解决上述提到的大部分的问题,一般来说,持续交付包括以下 3 个方面的内容:持续集成和持续部署,持续反馈;接下来会跟大家逐步解析。
3.1 什么是持续集成?
持续集成,又称为Continuous Integration(CI),根据敏捷大师Martin Fowler的定义:?
持续集成是一种软件开发实践。在持续集成中,团队成员频繁集成他们的工作成果,一般每人每天至少集成一次,也可以多次。每次集成会经过自动构建(包括自动测试)的检验,以尽快发现集成错误。?
从这个定义,我们可以理解到持续集成的关键思想:
1. 持续集成非常快非常廉价,让 Find Bugs 的时间大幅度降低,提高版本交付效率;
2. 持续集成让开发者可以有更多的时间在Fix Bugs,而非 Find Bugs;
3. 持续集成在流水线是全自动化的过程,无需太多的人工干预;
4. 持续集成是开发团队每个成员的职责,所有版本开发的成果都需要经过集成校验,提高质量;
在 IT 行业,每隔十年左右,都会出现一次可能重构市场、改写未来的技术变革,一些公司能够抓住这些机会...
More它的弹性在于:可以支持服务器虚拟化与桌面虚拟化的混合;可以支持多种hyper-v, KVM 等...
More也有挺多私有云+桌面云的需求的,能有openstack +VDI那是更好了。...
More