关于华为云:DevOps的3大核心基础架构

112次阅读

共计 3174 个字符,预计需要花费 8 分钟才能阅读完成。

原文链接:https://support.huaweicloud.com/reference-devcloud/devcloud_r…

因为近年 DevOps 概念的炽热,加之 DevOps 的涵盖面十分广,因而有很多文章和技术都在和 DevOps 强行关联,使很多想要理解学习 DevOps 的开发者疑惑不解。

其实,DevOps 的常识体系如果从顶层上来合成,可大分为 2 局部:方法论和工具链。

方法论这部分,因为 DevOps 的很多理念脱胎于麻利,所以你所能理解到的各种麻利理念,实际和办法都能够作为 DevOps 常识体系的一部分,这部分在本文中不做赘述。

本文次要探讨对于 DevOps 工具链这部分内容,对 DevOps 的工具进行一个总结与演绎。

简而言之,实现 DevOps 工具链,根本须要 3 个外围基础架构:

  • SCM 配置管理系统
  • Automation 自动化零碎
  • Cloud 云(或者说可伸缩的、自服务的、虚拟化零碎)

SCM 配置管理系统

配置管理是 DevOps 最底层的基础设施。无论是 Configuration As Code,还是 Infrastructure As Code,强调的都是用治理代码的形式来治理环境。将环境版本化,无论对于疾速创立,还是可稳固的反复创立这些 DevOps 的根本要求来说,都是最重要的根底。

配置管理系统有 GIT、SVN、Mercurial、GitHub、Bitbucket 等。对于 DevOps 施行来说,抉择哪种 SCM 的一个重要思考点,就是后续的 Automation 和 Cloud 这两个环节中的其它工具对这些工具的集成状况如何。作为近年来比拟受欢迎的 Git 来说,这所有都不是问题,是最好的抉择。

SCM 中所搁置的内容又能够再分成 2 个档次,别离为:

  • AppCode:即利用代码。
  • EnvCode:即环境相干的代码,这部分内容又能够进一步细化成环境配置(Config)和配置数据(ConfigData)。

    • 环境配置 :指那些针对以后利用基本上固定的环境配置。
    • 环境数据 :指那些须要在部署的同时依据状况调整的数据,如:配置文件,开发、测试、生产环境的地址等。

Automation 自动化零碎

自动化在 DevOps 中的作用显而易见,这部分的主线个别由各种类型的 Build 零碎来实现,如:Jenkins、Team City、Travis CI、CC 等等。只有这些还不够,为了可能实现利用从开发环境到生产环境的迁徙,咱们还必须解决如编译、自动化测试、依赖复原、容器构建、打包、编排等很多操作,因而还须要配置如 Junit、Xunit、FitNesse、Selenium、NuGet、NPM、JMeter 等许多其它的工具来实现。但这些工具只是在自动化零碎中实现某一部分的性能,个别都须要由 Build 零碎来驱动,并依赖于 SCM 中所提供的各种代码来实现的。

因而咱们当初通常抉择华为云 CodeArts 这样能帮忙团队实现 DevOps 端到端买通全流程的工具。在华为云 CodeArts 中提供了麻利需要治理、配置管理、测试计划、部署、以及自动化流水线的 DevOps 端到端服务。通过 CodeArts,用户能够一站式实现所有开发工作。

Cloud 云

云服务的呈现应该是催生 DevOps 的重要因素,没有云服务所提供的弹性、自服务等个性,很多 DevOps 的理念只能停留在纸面上。

对于 DevOps 施行来说,咱们须要理解的就是各种云所提供的 API,因为无论是自动化零碎还是后面的 SCM 的产出,最终都须要调用这些 API 来实现最终利用部署。

在华为云 CodeArts 中,咱们能够通过 CodeArts 间接调用华为云的其余私有云服务,例如弹性云服务器 ECS、云容器引擎 CCE、容器镜像服务 SWR 等,并可通过这些云服务帮忙用户实现丰盛多样的产品需要。

  • 通过编译构建工作的配置,将 Docker 镜像间接上传至 SWR 镜像仓库。
  • 通过调用 ECS 服务,间接将构建好的软件包部署到云主机中。原文链接:https://support.huaweicloud.com/reference-devcloud/devcloud_r…

因为近年 DevOps 概念的炽热,加之 DevOps 的涵盖面十分广,因而有很多文章和技术都在和 DevOps 强行关联,使很多想要理解学习 DevOps 的开发者疑惑不解。

其实,DevOps 的常识体系如果从顶层上来合成,可大分为 2 局部:方法论和工具链。

方法论这部分,因为 DevOps 的很多理念脱胎于麻利,所以你所能理解到的各种麻利理念,实际和办法都能够作为 DevOps 常识体系的一部分,这部分在本文中不做赘述。

本文次要探讨对于 DevOps 工具链这部分内容,对 DevOps 的工具进行一个总结与演绎。

简而言之,实现 DevOps 工具链,根本须要 3 个外围基础架构:

  • SCM 配置管理系统
  • Automation 自动化零碎
  • Cloud 云(或者说可伸缩的、自服务的、虚拟化零碎)

SCM 配置管理系统

配置管理是 DevOps 最底层的基础设施。无论是 Configuration As Code,还是 Infrastructure As Code,强调的都是用治理代码的形式来治理环境。将环境版本化,无论对于疾速创立,还是可稳固的反复创立这些 DevOps 的根本要求来说,都是最重要的根底。

配置管理系统有 GIT、SVN、Mercurial、GitHub、Bitbucket 等。对于 DevOps 施行来说,抉择哪种 SCM 的一个重要思考点,就是后续的 Automation 和 Cloud 这两个环节中的其它工具对这些工具的集成状况如何。作为近年来比拟受欢迎的 Git 来说,这所有都不是问题,是最好的抉择。

SCM 中所搁置的内容又能够再分成 2 个档次,别离为:

  • AppCode:即利用代码。
  • EnvCode:即环境相干的代码,这部分内容又能够进一步细化成环境配置(Config)和配置数据(ConfigData)。

    • 环境配置 :指那些针对以后利用基本上固定的环境配置。
    • 环境数据 :指那些须要在部署的同时依据状况调整的数据,如:配置文件,开发、测试、生产环境的地址等。

Automation 自动化零碎

自动化在 DevOps 中的作用显而易见,这部分的主线个别由各种类型的 Build 零碎来实现,如:Jenkins、Team City、Travis CI、CC 等等。只有这些还不够,为了可能实现利用从开发环境到生产环境的迁徙,咱们还必须解决如编译、自动化测试、依赖复原、容器构建、打包、编排等很多操作,因而还须要配置如 Junit、Xunit、FitNesse、Selenium、NuGet、NPM、JMeter 等许多其它的工具来实现。但这些工具只是在自动化零碎中实现某一部分的性能,个别都须要由 Build 零碎来驱动,并依赖于 SCM 中所提供的各种代码来实现的。

因而咱们当初通常抉择华为云 CodeArts 这样能帮忙团队实现 DevOps 端到端买通全流程的工具。在华为云 CodeArts 中提供了麻利需要治理、配置管理、测试计划、部署、以及自动化流水线的 DevOps 端到端服务。通过 CodeArts,用户能够一站式实现所有开发工作。

Cloud 云

云服务的呈现应该是催生 DevOps 的重要因素,没有云服务所提供的弹性、自服务等个性,很多 DevOps 的理念只能停留在纸面上。

对于 DevOps 施行来说,咱们须要理解的就是各种云所提供的 API,因为无论是自动化零碎还是后面的 SCM 的产出,最终都须要调用这些 API 来实现最终利用部署。

在华为云 CodeArts 中,咱们能够通过 CodeArts 间接调用华为云的其余私有云服务,例如弹性云服务器 ECS、云容器引擎 CCE、容器镜像服务 SWR 等,并可通过这些云服务帮忙用户实现丰盛多样的产品需要。

  • 通过编译构建工作的配置,将 Docker 镜像间接上传至 SWR 镜像仓库。
  • 通过调用 ECS 服务,间接将构建好的软件包部署到云主机中。
正文完
 0