写点什么

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:001547

评论

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

Gartner技术成熟曲线详解

Kafka中文社区

如何用建木CI生成Allure报表

Jianmu

CI/CD Allure 国产开源

打造“智慧之眼”与“创新之轮”,华睿科技助推制造业智能升级

科技新消息

腾讯云商用密码合规解决方案,亮相2021商用密码应用创新高端研讨会

腾讯安全云鼎实验室

商用密码 云上安全 数字生态 安全服务

使用 USE 方法分析系统性能瓶颈

耳东@Erdong

监控 28天写作 use 12月日更

如何有效使用预训练语言模型

云智慧AIOps社区

算法 智能运维 云智慧 语言模型 南加州大学

TCP 两次握手为什么无法阻止历史连接?

华为云开发者联盟

TCP 报文 握手 RST 报文 两次握手

学习乐器的好处

Tiger

28天写作

性能监控之 Golang 应用接入 Prometheus 监控

zuozewei

Prometheus 性能测试 性能监控 Go 语言 12月日更

Linxu云计算这样学效率更快,Linux基础篇,expect-正则表达式-sed-cut的使用

学神来啦

Linux centos sed linux运维 expect

Log4j2 消停了,Logback 开始塌房了?

程序猿DD

Java 日志 漏洞

DM 分库分表 DDL “乐观协调” 模式介绍丨TiDB 工具分享

PingCAP

模块七 王者荣耀商城异地多活架构设计

小朱

架构实战营

react源码解析16.concurrent模式

buchila11

React

AI新手语音入门:认识词错率WER与字错率CER

华为云开发者联盟

语音识别 词错率 WER 字错率 CER

服务器数量从21台降至3台,TDengine在跨越速运集团的落地实践

TDengine

数据库 tdengine 时序数据库

图解带你掌握`JVM`运行时核心内存区

华为云开发者联盟

Java JVM 内存 堆内存

前端开发之JS中编写For循环的方法

@零度

JavaScript 前端开发

PassJava 开源(五) :SpringCloud Alibaba 组件简介 #私藏项目实操分享#

悟空聊架构

SpringCloud 28天写作 passjava 悟空聊架构 12月日更

了解 Java 中的锁 Lock

Ayue、

ReentrantReadWriteLock ReentrantLock lock

小红书基于 StarRocks 构建广告数据中心的实践

StarRocks

数据库 数据分析 StarRocks

Java泛型可行与不可行

编程江湖

Java开发之线程、多线程,线程池面试题

@零度

多线程 线程池 JAVA开发

Flutter 完美的验证码输入框(2 种方法)【Flutter专题25】

坚果

flutter 28天写作 12月日更

Azkaban工作流调度

恒生LIGHT云社区

工作流 工作流调度 任务调度 Azkaban

“数”驰天下,华为云DRS 高效支撑T3出行平稳迁移

华为云开发者联盟

数据库 数据迁移 华为云DRS T3出行

拿捏SQL数据分析:从基础破冰到面试题解

博文视点Broadview

从科技出发,中科柏诚信云链为中小企业融资注入新动能

联营汇聚

react源码解析15.scheduler&Lane

buchila11

React

给弟弟的信第22封|写技术博客有哪些益处?

大菠萝

28天写作

群聊泄密敲响警钟,WorkPlus织密信息安全“防护网”

BeeWorks

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