用地形云建造管道

用地形云建造管道

时间:2021-2-6 作者:admin

拥有一个健壮和有效的CI/CD管道是实现云本机应用程序更短的sprint和有效迭代的关键。为了定期和成功地推送更新,您必须将许多东西合并到管道中,包括测试和安全性。

TerraForm用于构建、维护和更新云基础设施。它从您的桌面运行,并直接与云服务提供商(如AWS)通信。

虽然Terraform提供了将基础设施和策略作为代码进行处理所需的所有功能,但它远不是没有挑战的。其中最突出的挑战是在流程中需要协作努力,因为仍然需要手动更改。

从地形局部到地形云

引进TerraForm云是为了解决前面提到的挑战,特别是当准备工作需要由团队而不是单个专家来完成时。许多开发人员使用Terraform来管理基础设施,因此迁移到TerraformCloud并不是那么困难。

事实上,HashiCorp让本地Terraform用户很容易迁移到TerraformCloud。首先创建TerraformCloud用户帐户,然后从本地Terraform安装收集状态数据。您可以使用Terraform登录命令将两者连接起来。

在继续迁移之前,需要停止本地Terraform。确保所有运行都已完成,并且一旦迁移启动,CI作业就不会运行。将团队中的每个人都迁移到TerraformCloud中。

然后,可以通过检索terraform.tfstate你早些时候收集并运行terraform init。您需要对配置进行一些更改,特别是配置文件的后端块。

在更新配置文件后,运行terraform init开始迁移。系统将提示您将状态复制到远程后端(即TerraformCloud)。回答YES这一过程将自行进行。接下来您需要做的就是将TerraformCloud工作区配置为您的特定需求。

就这样!此时,您可以充分利用TerraformCloud及其特性。

地形云的特点与优势

这就引出了我们的下一个观点:迁移到TerraformCloud的真正好处。随着Terraform在云中运行,您将立即体会到的最大好处是,您现在可以让多个团队成员在Terraform上工作。

实际上,TerraformCloud强调了这个面向团队的远程工作流。团队成员可以共享责任和意识,如何提供云资源和如何执行策略。版本控制和远程状态管理是可以开箱即用的特性之一。

远程Terraform执行进一步支持这个面向团队的工作流,这是TerraformCloud的一个本机特性。远程操作或执行在自己的虚拟机上运行;VM被设计为一次性的,以限制开销。

您还可以测试和检查Sentinel策略的运行情况,并具有绝对的一致性。

由于可以以一致的方式避免错误和潜在错误,新的资源配置运行可以更加顺畅。由于团队中的每个人都可以监视远程操作,因此没有任何单一的失败点需要担心。

说到版本控制,版本控制系统(VersionControlSystem,VCS)与TerraformCloud的集成在另一个层次上。VC存储库可以有特定的分支和子目录,并且可以链接到特定的Terraform配置。对VCS存储库所做的更改反映在Terraform运行中。

VC还允许TerraformCloud通过对存储库进行更改来运行推测性计划,然后将结果作为拉请求检查发布。然后,团队中的每个人都可以查看拉请求检查,并在需要时进行建议的更改。这些特性仅限于支持的VCS,但考虑到您可以获得的回报,建议您切换到VCS。

最重要的是,TerraformCloud仍然是一个易于与其CLI一起使用的工具。TerraFormCloud可以在云中和本地运行,这使得它能够提供两个世界中最好的。TerraformCloud的企业版甚至支持大型的多团队管理。

有趣的是TerraformCloud的CLI如何使用当前的工作目录–在本地设置中–将工作区变量存储在云中。在将策略或代码推送到远程存储库之前,可以执行检查。这对于团队效率来说是巨大的,因为开发人员可以更有效地独立工作,同时作为一个团队无缝地工作。

基础设施管理的工作空间

TerraformCloud的健壮性的关键在于它如何使用工作区。Terraform的本地版本使用一个持久工作目录,该目录保存配置和状态数据以及变量。可以使用不同的工作目录在不同的基础结构组上工作,但在某些方面这个过程仍然很繁琐。

TerraformCloud的情况并非如此,它使用工作区来执行相同的任务。工作区可以拥有管理各自基础设施所需的一切,Terraform在每次运行时都将在上下文中使用工作区。

这包括存储状态数据,这是一个巨大的好处。不再将状态数据与其来源的工作目录混合。工作区始终提供上下文,并允许TerraformCloud将状态数据与配置文件匹配。为了使它更好,工作区可以使用以下方法共享远程操作、变量和其他信息terraform_remote_state.

即使您大部分时间在本地工作,迁移到TerraformCloud仍然是非常有益的。VCS存储库的集成和工作空间的使用对任何规模的团队都是有益的。另一个非常推荐迁移的特性是私有模块注册表,它允许以同样细致的方式对可重用模块进行标准化和管理。基于团队的权限系统完成了设置,并使TerraformCloud成为构建CI/CD管道的完美工具。

福州APP开发哪家强?

版权所有:https://www.eraycloud.com 转载请注明出处