【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

HashiCorp 发布 Terraform 操作符管理 Kubernetes 基础设施

  • 2020-04-27
  • 本文字数:1177 字

    阅读完需:约 4 分钟

HashiCorp 发布 Terraform 操作符管理Kubernetes基础设施

HashiCorp发布了用于 Kubernetes 的 Terraform 操作符(Alpha 版本),用于将基础设施作为代码予以管理。安装该操作符之后,用户可以使用 Kubernetes 清单同步 Terraform 工作空间。然后,运行于 Kubernetes 中的应用程序就可以使用 ConfigMaps 引用 Terraform 输出了。目前,该操作符只适用于 Terraform Cloud。


因为开发人员希望使用 Kubernetes 接口在 AWS SQS 中像队列一样提供基础设施,该 Terraform 操作符正是出于实现这一需求。首先,用户需要在他们的 Terraform Cloud 组织中创建一个令牌(免费和付费版均可),并将其作为密钥保存在 Kubernetes 中。然后,用 Helm 安装这个操作符。一旦它运行起来,用户就可以开始使用 Kubernetes 清单创建 Terraform 工作空间了。该操作符可以创建、更新和检索源自于 Terraform 工作空间的值,在 Terraform 云中执行 run,并在 Kubernetes 中更新 Terraform 工作空间状态。


为了提供基础设施,需要首先定义一个 Terraform 模块,以便 Kubernetes 只为该模块发送输入参数。开发人员既不定义 Kubernetes 清单中的 Terraform 模板,也不与之交互。这样做旨在简化设计,并减少集群中自定义资源定义(crd)的数量。开发人员创建 Terraform 工作空间清单,并为想要使用的每个 Terraform 模块输入定义值。如果基础设施资源准备就绪,开发人员可以通过 ConfigMaps(如 AWS SQS 端点)访问模块输出,之后可以引用运行在 Kubernetes 中的应用程序中的定义的值。


对于 Terraform 工作空间对象中的每一处变更,除了 AWS 密钥之类的敏感信息之外,该操作符都会提取出来,并使用 auto-approve 参数自动应用。另外,若要删除资源,用户可以通过运行 kubectl delete workspace sqs-queue 命令,使用 Kubernetes API 删除 Terraform 工作空间。


在内部,Terraform 工作空间控制器将协调 Kubernetes 工作空间 CRD 与 Terraform 云工作空间。若要执行变更,可运行 terraform apply -auto-approve 自动执行,但是用户可以在应用它们之前使用 Sentinel 进行验证。出于安全考虑,该操作符的作用域限定于命名空间。用户需要通过访问令牌才能与 Terraform Cloud 交互,只允许访问命名空间可以降低风险。


在这个 Alpha 版中,该操作符只对 Terraform Cloud 有效。HashiCorp 的开发大使 Rosemary Wang 在最近的一次虚拟办公会中说:我们将它的应用范围限定于 Terraform Cloud,因为我们想彻底了解它的表现,不想给这个操作符添加太多的逻辑。如果社区需要对其他后端(如 AWS S3)的支持,Wang 希望 Terraform 开源版本的用户在 GitHub 库中提出问题,解释其应用场景。


此外,该 Terraform 操作符可以为本地环境提供基础设施,而不只是在云或 SaaS 提供商中提供。


要了解关于 Terraform 操作符的更多信息,请访问该GitHub页面


原文链接:


Managing Infrastructure From Kubernetes with the HashiCorp Terraform Operator


2020-04-27 09:001341

评论

发布
暂无评论
发现更多内容

架构师第 8 课作业及学习总结

小诗

「架构师训练营第 1 期」

重学JS | this的指向问题

梁龙先森

大前端 编程语言 28天写作

Python 100 天从新手到大师

GitHub指北

数字货币合约交易系统软件APP开发

系统开发

架构师训练营第 1 期 - 第 13 周 - 学习总结

wgl

「架构师训练营第 1 期」

大作业:知识点图谱

paul

Dubbo微服务调用时序图

Andy

第 12 周作业

Steven

架构师第 12 课作业及学习总结

小诗

「架构师训练营 4 期」 第二周 - 0201

凯迪

作业-第12周

arcyao

福田区实现数字人民币六个100%,农行推出ATM机存取现功能

CECBC

数字红包

架构师第 9 课作业及学习总结

小诗

「架构师训练营第 1 期」

人人都在谈的数字化转型,区块链技术能扮演何种角色?

CECBC

区块链

JVM 垃圾回收机制分析

Andy

数字人民币为何频频入榜金融机构“工作单”

CECBC

数字人民币

架构师第 7 课作业及学习总结

小诗

「架构师训练营第 1 期」

Prometheus官方文档【查询篇-运算符】

卓丁

Prometheus Monitor 监控告警 普罗米修斯 PromQL

架构师第 10 课作业及学习总结

小诗

接私活必备的 6 个开源项目

GitHub指北

大作业二

饭桶

架构师第 5 课作业及学习总结

小诗

「架构师训练营第 1 期」

Windows安装Mysql

千泷

大数据计算引擎Spark

积极&丧

大作业一

饭桶

架构师训练营大作业

Cheer

架构师第 13 课作业及学习总结

小诗

「架构师训练营第 1 期」

DAPP智能合约APP开发|DAPP智能合约软件系统开发

系统开发

依赖倒置与接口隔离原则

玄月

大作业二

「架构师训练营第 1 期」

架构师第 11 课作业及学习总结

小诗

「架构师训练营第 1 期」

HashiCorp 发布 Terraform 操作符管理Kubernetes基础设施_软件工程_Christian Melendez_InfoQ精选文章