BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

HashiCorp、Contino企业Terraform推荐实践指南分享

| 作者 Daniel Bryant 关注 740 他的粉丝 ,译者 罗远航 关注 1 他的粉丝 发布于 2018年1月29日. 估计阅读时间: 6 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!

HashiCorp发布了一个Terraform推荐算法实践指南来帮助那些希望拥抱云技术和架构即代码(IaC, Infrastructure as Code)的企业。其中提供了一个典型的推荐Terraform工作流(其中涉及到组织角色),还给出了一个“供应成熟度模型(provisioning maturity model)”,同时它还提供了许多建议来指导企业如何从一个阶段过渡到下一个阶段来对当前的实践进行演进。该指南是由HashiCorp与Contino共同合作完成的。HashiCorp是诸多开源以及商业基础架构工具的创造者,例如:TerraformPackerVaultContino是HashiCorp系统集成的合作伙伴。

HashiCorp发表了一篇博客,该博客宣布了该指南的发布,并指出了基于云端的服务能够使得开发团队更大程度地独立于传统基础架构的底层操作约束。然而,从传统的私有数据中心的“机架”物理基础设施迁移到软件定义一切(Software Defined Everything,SDx)的数据创建和管理架构中存在着技术上和组织上的双重挑战。比如说,通过编程API或SDK对计算资源进行协调管理以及使用软件定义网络(SDN)和软件定义存储(SDS)。

HashiCorp Terraform使得工程师能够以一种“安全的、可预测的”方式将基础架构指定为声明性代码计划以及供应环境。现在有许多关于使用Terraform来结构化代码以及合作的经验报告和推荐的最佳实践,包括Charity Majors的系列博客、 Yevgeniy Brikman的博客文章。后者是 O'Reilly系列书籍《Terraform: Up and Running》 的校对者以及修订者。

然而,当我们咨询任何推荐的实践时,我们都该注意到,由于框架本身还在不断地发展中,而昨天的推荐时间很快就会被融入到Terraform本身的工作流中,或者被视作一种不必要的解决方案用以克服对框架的误解。

尽管Terraform是一个开源工具,但是也有商业级的Terraform企业产品,并且该指南聚焦于指导企业采用Iac(以及Terraform Enterprise)。然而,对于希望采用Iac方法来对云基础架构进行管理的组织来说,其中仍然有许多有用的工作流和相关的推荐实践。

该指南分为三个部分:

  • 第一部分:推荐工作流概览。该部分是对Terraform的代码即架构工作流的协作基础架构的整体概述。其中阐述了基础架构是如何被组织的、被管理的,并且阐述了人们是如何与其进行交互的。
  • 第二部分:评价你们目前的供应实践。这一部分提出了一系列问题来帮助大家评价一个组织的基础架构供应实践的状态。该指南针对该问题提出了一个四阶段基础架构成熟度模型。
  • 第三部分:如何演进供应实践。这一部分内容讲述了该如何利用四阶段操作成熟度模型来提升供应实践。

指南中的第一部分讨论了将IaC引进企业的组织上以及技术上的挑战,并且给出了规模化管理基础架构的四个主要角色:中心IT(Central IT),负责定义公共基础设施和对应的执行策略;组织架构师( Organisation Architect),定义全局基础架构是如何划分和委托给业务部门的团队的;工作空间所有者(Workspace Owner),他们是拥有指定工作空间的个体,并且是领域内生产变革的主要支持者;工作空间贡献者(Workspace Contributor),他们通过将(非生产)更新作为代码配置,把该更改提交给工作空间。

它为每个角色都提供了推荐的实践,它使用了一个工作空间的基本概念,工作空间表示的是需要运行的东西的集合,例如:Terraform配置、变量以及状态数据,工作空间被用于管理以及代理控制。

指南中的第二部分阐述了一个IaC“供应成熟度模型”,其中包括:手动、半自动、架构即代码以及协作式架构即代码。该指南还向组织提出了一系列问题,以便组织能够进行自我评估。在这部分内容的基础上,第三部分内容阐述了将组织从当前成熟度阶段过渡到下一个阶段中所必须的步骤。

例如,指南中有一节内容介绍了如何“从半自动演进到架构即代码”,这部分内容涵盖了版本控制的推荐用法、学习创建Terraform模块的指南(允许重用的组件化Terraform单元)以及如何定义组织的指导方针和相关政策。

这些指南很大程度上是基于来自以下云服务提供商的十分有用的架构指南和推荐实践:

Terraform指南中总结了几个更高级的推荐实践的主题,其中包括:将Terraform与图像构建工具(如Packer)以及配置管理框架(如Chef)进行集成、编写自定义Terraform Providers将Terraform运行于CI/CD构建流水线以及Terraform Provider开发计划的意义。

HashiCorp和Contino的Terraform推荐实践指南可以在Terraform文档网站进行访问。

查看英文原文:HashiCorp and Contino Share Enterprise Terraform Recommended Practices

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT