DevOps:软件架构师行动指南1.3 DevOps视角

简介:

1.3 DevOps视角


一个重大的呼吁是缩短新功能推向市场的时间,减少部署过程中发生的错误,考虑到我们讨论的问题并且这些问题都存在已久,这种呼吁也就不足为奇了。DevOps有很多形式,是对现有实践不同程度的改编,但是各种不同形式都始终贯穿着两个主题:自动化及开发团队的职责。

1.3.1 自动化

图1-1显示了各种生命周期过程。从构建、测试到执行的步骤在某种程度上都可以实现自动化。我们将在适当的章节中讨论这些步骤中的每一步使用的工具,这里首先强调自动化的优点。在1.7节中讨论依赖于自动化的一些问题。

工具可以执行这个过程中每一步所需的操作,针对生产环境或者一些外部规格说明检查操作的有效性,把过程中发生的错误通知适当的人,并且保留操作历史,以用于质量控制、报告和审计等目的。

工具和脚本也可以强制推行组织层面的策略。假设组织有一项策略是,每个变更都要有与之相关的合理理由。那么在提交变更前,工具或脚本可以要求做变更的人提供理由。当然这个要求也可能被设法规避,但是让工具要求一个理由,将会增加对这个策略的符合度。

在工具成为一组过程的中心后,就必须对这些工具的使用进行管理。比如说,工具可以从脚本、配置变更或运维的终端调用。如果是复杂的终端命令,即使使用的只是几个命令,也建议把命令的使用脚本化。工具可以通过规格说明文件进行控制,例如Chef cookbooks或Amazon CloudFormation——今后还会有更多。脚本、配置文件和规格说明文件必须遵从与应用程序代码本身一样的质量控制。脚本和文件也应该进行版本控制,也应该进行错误检查。这个术语常常称为“基础设施即代码”(infrastructure-as-code)。

1.3.2 开发团队的职责

自动化将减少错误的发生,缩短部署时间。为了进一步缩短部署时间,考虑前面详细描述的运维人员的职责。如果开发团队接受DevOps的职责,即开发团队交付、支持并维护服务,那么因为所有所需的知识都保留在开发团队,所以向运维团队和支持人员转交知识也就少了。不需要转移知识也就省掉了部署过程中的大量协作步骤。

相关文章
|
5月前
|
设计模式 编译器 Go
掌握Go类型内嵌:设计模式与架构的新视角2
掌握Go类型内嵌:设计模式与架构的新视角
31 0
|
5月前
|
设计模式 Cloud Native JavaScript
掌握Go类型内嵌:设计模式与架构的新视角1
掌握Go类型内嵌:设计模式与架构的新视角
41 0
|
2月前
|
消息中间件 架构师 NoSQL
以架构师的视角,深入剖析如何设计订单超时自动取消的功能
我们在美团 APP 下单,假如没有立即支付,进入订单详情会显示倒计时,如果超过支付时间,订单就会被自动取消。 这篇文章,笔者想以架构师的视角,深入剖析如何设计订单超时自动取消的功能。
以架构师的视角,深入剖析如何设计订单超时自动取消的功能
|
8月前
|
架构师 BI OLAP
一口气说穿数据中台-给你架构师的视角
一口气说穿数据中台-给你架构师的视角
|
8月前
|
SQL 架构师 算法
一口气说透中台--给你架构师的视角
一口气说透中台--给你架构师的视角
|
11月前
|
SQL 存储 分布式计算
【数据湖仓架构】数据湖和仓库:Azure Synapse 视角
【数据湖仓架构】数据湖和仓库:Azure Synapse 视角
|
11月前
|
人工智能 Cloud Native 安全
带你读《云原生架构白皮书2022新版》——企业战略视角
带你读《云原生架构白皮书2022新版》——企业战略视角
129 0
|
11月前
|
运维 Cloud Native 安全
带你读《云原生架构白皮书2022新版》——业务发展视角
带你读《云原生架构白皮书2022新版》——业务发展视角
198 1
|
11月前
|
运维 Cloud Native 微服务
带你读《云原生架构白皮书2022新版》——组织能力视角
带你读《云原生架构白皮书2022新版》——组织能力视角
107 1
|
11月前
|
运维 监控 Cloud Native
带你读《云原生架构白皮书2022新版》——云原生技术架构视角
带你读《云原生架构白皮书2022新版》——云原生技术架构视角
331 1

热门文章

最新文章