×

微信扫一扫,快捷登录!

DevOps的三大核心基础架构

标签: 暂无标签
本帖最后由 adminlily 于 2019-12-15 14:59 编辑

实现DevOps工具链只需要3个核心基础架构:

SCM配置管理系统

Automation自动化系统

Cloud云/可伸缩的、自服务的、虚拟化系统



▲ DevOps3大核心基础架构




01
SCM配置管理系统
软件配置管理(Software Configuration Management,SCM)是指通过执行版本控制、变更控制的规程,以及使用合适的配置管理软件,来保证所有配置项的完整性和可跟踪性。配置管理是对工作成果的一种有效保护。

软件配置管理是DevOps最底层的基础设施,无论是Configuration As Code 还是 Infrastructure As Code 都强调,通过代码管理的方式来管理环境,环境版本化是DevOps中快速创建和重复创建最重要的基础。

周期表左侧第二列就是各种可供选择的软件配置管理系统,如:GIT,SVN,Mercurial,GitHub,Bitbucket等。

对于实施DevOps来说,选择哪种SCM的一个重要考虑点就是后续Automation和Cloud两个环节中其它工具的集成情况如何。

SCM中所放置的内容又可细分为:

▲ SCM内容


环境配置:针对当前应用的固定环境配置;

环境数据:部署时根据情况调整的数据,如:配置文件,开发/测试/生产环境的地址等。


02Automation自动化系统
自动化(Automation)是指所有的操作都不需要人工参与,全部依赖系统自动完成,比如上述的持续交付过程必须自动化才有可能完成快速迭代。DevOps需要构建相应的工具链,将工作任务自动化,才能实现自动化的持续交付流水线。

自动化在DevOps中一般由各种类型的Build系统来实现,如:Jekins,Team City,Travis CI,CC等。为了完成应用从开发环境到生产环境的迁移,开发者必须处理编译、自动化测试、依赖恢复、容器构建、打包、编排等众多操作。

这一过程就需要Junit,Xunit,FitNesse,Selenium,NuGet,NPM等额外配置工具协助实现。但这些工具只是在Automation中实现某一部分的功能,归根结底,仍然是由Build系统驱动,并依赖于SCM中所提供的各种代码来实现。


03Cloud云
云(Cloud)是指一个独特的IT环境,用于远程提供可扩展和可测量的IT资源。在用户看来,云上的资源是可以无限扩展的,并且可以随时获取,按需使用。这种服务可以是与软件、互联网相关的,也可以是任意其他的服务。

云计算是DevOps诞生的重要基础。没有云提供的可伸缩的、自服务的、虚拟化系统,DevOps理念只能是纸上谈兵。

▲ 云基本概念与模型

云所提供的API对DevOps理念的落地非常重要,SCM的产出与Automation都需要调用云API来完成应用部署。

通过云API,只需少量的代码即可快速操作云产品;

在熟练的情况下,使用云API 完成一些频繁调用的功能可以极大提高效率;

通过API可以组合功能,实现更高级的功能,易于自动化,易于远程调用,兼容性强,对系统要求低。


▲ 用户调用云API


云是目前IT领域的热点,企业的IT系统架构实施云化的主要目标是提升IT资源的利用率、降低IT成本,促进企业IT建设从粗旷型方式到集约型方式的转变。提供代码托管、编译构建、部署发布、运维监控、项目管理等覆盖软件研发全生命周期服务,让软件构建、测试和发布变得更快捷、可靠,全面助力企业快速提升研发效率和产品交付能力。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x




上一篇:云计算时代,你所不了解的 DevOps
下一篇:易保网络:透过双十一看DevOps在保险行业的实践
monkey

写了 325 篇文章,拥有财富 1713,被 3 人关注

您需要登录后才可以回帖 登录 | 立即注册
B Color Link Quote Code Smilies

成为第一个吐槽的人

Powered by IT 运维管理
返回顶部