写点什么

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

评论

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

TASKCTL 容器签出失败解决方法

敏捷调度TASKCTL

大数据 DevOps 分布式 ETL 自动化运维

天翼云战略发布“5G+天翼云+AI”三生万物 赋能5G时代数字化转型升级

天翼云开发者社区

深入JVM内置锁 synchronized 底层

janyxe

JVM synchronized synchronized锁升级过程

数据连接一切,开启融合数据云新时代——星环科技春季新品发布周盛大开启

星环科技

Carina 本地存储入选 CNCF 云原生全景图

BoCloud博云

开源 cncf 本地存储

App能收集哪些个人信息?

InfoQ IT百科

App分发是什么意思?

InfoQ IT百科

怎么做App分发?

InfoQ IT百科

Envoy熔断限流实践(一)基于Rainbond插件实现熔断

北京好雨科技有限公司

Kubernetes PaaS envoy rainbond

如何应对“科技人才热”?华为云联合慧科集团加速培养模式创新

华为云开发者联盟

教育 华为云 高校 华为云路网数字化服务 慧科

不care工具,在大数据平台中Hive能自动处理SQL

华为云开发者联盟

sql 大数据 mapreduce hive 数据分析

一个比Postman好用的工具,不试一下?

Liam

前端 后端 Jmeter Postman swagger

新基建下纵览全局,2+4+31+X实力出镜

天翼云开发者社区

云计算 云技术

百尺竿头更进一步 – Amazon Aurora 的读写能力扩展之 ShardingSphere-Proxy 篇

亚马逊云科技 (Amazon Web Services)

Tech 专栏

Hoo虎符研究院 |ETH2.0合并在即 速来围观流动性质押赛道的潜力项目

区块链前沿News

eth 虎符 Hoo 虎符交易所

Java篇-序列化与反序列化

是老郭啊

Java 对象 序列化 反序列化

容器化应用:我们都经历了什么

Rayzh

Docker Kubernetes 云原生 Cloud Native

TASKCTL 作业流程无触发设计

敏捷调度TASKCTL

大数据 DevOps 分布式 自动化部署 ETL任务

GPU市场规模和各子市场趋势分析

Finovy Cloud

人工智能 gpu

Android C++系列:C++最佳实践5 const

轻口味

c++ android ndk jni 4月月更

一文详解:企业数字化的未来基石——微服务

穿过生命散发芬芳

微服务 4月月更

【MARS TALK 05】今日头条 App 基于火山引擎MARS研发流程最佳实践

字节跳动终端技术

android 今日头条 字节跳动 研发

Carina 的根基与诞生背景|深入了解 Carina 系列 第一期

BoCloud博云

开源 本地存储

Docker 实战教程之从入门到提高 (八)

汪子熙

Docker 容器 docker image 容器镜像 4月月更

中国云终端市场发展报告发布天翼云稳居领导者地位

天翼云开发者社区

案例 认证

java高级用法之:JNA中的回调

程序那些事

Java Netty 程序那些事 4月月更

真香!盘点云主机三种典型应用场景

天翼云开发者社区

云主机

毕设:设计电商秒杀系统

王大胖

厉害了!天翼云电脑开启5G商用第一站

天翼云开发者社区

IM开发技术分享:浅谈IM系统中离线消息、历史消息的最佳实践

JackJiang

网络编程 TCP协议 即时通讯IM im开发

如何提升研发效能实现 10 倍研发效能提升

阿里云云效

云计算 阿里云 云原生 研发效能 研发

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