Terraform Explorer 正式发布

简介: 阿里云推出可视化的Terraform调用工具——Terraform Explorer,简化云资源管理,提供可视化操作界面,免安装、免编写代码、免状态管理,助力开发者高效部署和管理基础设施。

可视化的Terraform调用工具

随着云计算和基础设施即代码(IaC)概念的日益普及,Terraform 已成为市场上主流的开源工具,用户可以通过代码的形式自动化地管理云资源,进而大大提高部署和管理云基础设施的效率。尽管Terraform功能很强大,企业级用户在使用的过程中,仍然需要关注状态管理、工作流的集成等额外复杂的工作,特别对于小白用户/非专业的云用户而言,使用起来还是存在挑战,主要问题如下:

  • Terraform 的 HCL(HashiCorp 配置语言)是一门全新的语言,学习和掌握的门槛相对较高,如果从零开始手动编写代码需要较高的成本;
  • Terraform环境的安装和配置比较繁琐;
  • Terraform的本地状态管理也存在安全隐患,可能会因为人为错误或系统问题导致数据丢失或损坏,本地状态文件也难以进行追踪和审计;


为了进一步简化基础设施的代码化管理,阿里云开放平台借助 Terraform 原生的能力推出了面向开发者的可视化操作界面——Terraform Explorer,用户无需深入研究 Terraform 脚本的细节,通过填写简单的表格,就可以基于预定义参数自动生成 Terraform 模版文件,快速构建、部署和管理云资源,从而使基础设施管理变得简单高效,帮助开发人员降低学习和操作难度,减少基础设施的部署和管理成本。该工具将包括以下关键特性:

  1. 环境免安装

Terraform Explorer 支持了对 Terraform 客户端的在线托管,并且在执行 Terraform 命令时支持对阿里云 Provider 的加速下载,您无需再关心 Terraform 的安装、配置以及 Provider 下载慢等环境问题。

  1. 代码免编写

Terraform Explorer 针对单个资源类型提供了通过表单自动生成模板配置文件的能力,您无需再担心 Terraform 代码不会写、编写麻烦等问题。同时也为每个资源类型配备了相关的示例模板,可以通过选择模板来实现一键运行。除此之外,Terraform Explorer 默认会帮您保存每一次任务执行使用到的模板和参数,当您发起新的调试任务时,可以选择从历史模板和参数中加载内容。

  1. 状态免管理

状态管理是 Terraform 重要组成部分,分为本地状态(local)和远端状态(remote)两种。Terraform Explorer 同样支持对这两种状态的管理,默认采用本地状态管理,但是会帮您托管每一次 Terraform 的运行状态,以确保同一份配置文件的反复多次运行,在保证状态安全的前提下,保留了 Terraform 原生的状态管理机制。

Terraform Explorer 的使用流程

1. 确认权限

在访问 Terraform Explorer 时,部分功能需要先完成授权,比如创建调试任务、预览、预览并执行、销毁资源、查看调试历史、查看资源详情等(如出现下图的提示,表明没有权限,需要增加授权)。


快速授权方法:

  1. 登录【访问控制】控制台,新增【权限策略】,通过脚本编辑的方法,增加如下的权限策略。

  1. 对相应的用户增加上一步骤新增的权限策略。

2. 选择资源类型

在下拉框中分别选择Terraform执行的Provider版本、产品、资源类型后,可以看到页面展示了资源类型调试所需填写的参数,可以通过填入对应的参数生成对应模版进行调试。

同时,Terraform Explorer 为每个资源类型增加了一个或者多个示例模板,如果您不想填写太多的参数或者想要创建多个资源时,可以在选择资源类型之后,选择具体某个示例模板,点击“发起调试”按钮,即可看到模板详情并发起调试。

3. 发起调试

输入资源类型的参数,点击【发起调试】按钮,Terraform Explorer 将会自动生成对应的配置文件——模版(即Terraform 配置文件,HCL 格式的文本文件),此时可以通过左侧的表单填写部分或者全部参数来不断完善这份配置文件。

每当通过“发起调试”按钮发起一次新的调试动作时,Terraform Explorer 将会创建一个新的调试任务。每个任务对应唯一的一个状态文件,因此同一时间只能执行一次预览或者执行操作。

4. 预览

模版确认没有问题后,点击【预览】按钮,Terraform Explorer 将创建一个新的调试任务或者在已有的调试任务中依次执行terraform initterraform plan命令,执行完毕后将生成一个 Terraform 执行计划,并将执行计划详情展示在页面中。您可预览执行计划并选择继续执行或者放弃执行。

每次的运行(预览或者预览并执行)都会生成一次调试记录,所有调试任务都会被记录在调试历史中,您可以选择历史任务并在最新的调试记录的基础上继续调试。

5. 执行

当执行计划符合您的预期后,您可以点击【执行】按钮来运行执行计划。Terraform Explorer 将根据您的选择执行 terraform apply命令,进而完成执行计划中所含资源的创建和变更操作。

当点击“预览并执行”按钮时,意味着生成执行计划后将跳过人工确认而自动执行,即 Terraform Explorer 将依次执行terraform initterraform planterraform apply命令。

6. 查看执行结果

【执行】成功后,Terraform Explorer将根据在模版中定义的阿里云资源(例如:ECS实例、RDS数据库实例)自动完成所定义资源的创建和配置,切换到【资源详情】页面,可以查看本次执行计划创建/变更的云资源详情,其中包含资源地址(资源类型名称)、资源ID(云资源的唯一标识)及用kvPairs键值对表示的云资源配置。

7. 继续调试

每个资源类型的所有调试任务都会被记录在调试历史中,您可以选择历史任务并在最新的调试记录的基础上点击继续调试,在已有的调试任务中依次执行terraform initterraform plan命令。

8. 资源销毁

当您调试完成想要销毁资源时,点击“销毁资源”按钮,Terraform Explorer 将通过terraform plan生成一个销毁资源的执行计划,在您确认要销毁后,Terraform Explorer 将通过terraform apply完成这个销毁执行计划的运行,进而释放任务中所包含的全部资源。

最后

欢迎所有对Terraform和阿里云感兴趣的开发者,积极地加入到阿里云开源生态的建设中来,在内容阵地上积极贡献Example,所有被采纳的Example都会呈现在Terraform Explorer上,让自己写的Example得到更多的人引用。

相关文章
|
消息中间件 安全 Unix
SSH配置多台服务器之间的免密登陆以及登陆别名
SSH配置多台服务器之间的免密登陆以及登陆别名
778 1
在mac OSX中安装启动zookeeper(采用brew安装方式)
项目需要,所以,在mac OSX中安装了一下zookeeper。
1211 0
|
8月前
|
Kubernetes Devops 应用服务中间件
基于 Azure DevOps 与阿里云 ACK 构建企业级 CI/CD 流水线
本文介绍如何结合阿里云 ACK 与 Azure DevOps 搭建自动化部署流程,涵盖集群创建、流水线配置、应用部署与公网暴露,助力企业高效落地云原生 DevOps 实践。
945 2
|
弹性计算 人工智能 运维
Terraform从入门到实践:快速构建你的第一张业务网络(上)
本次分享主题为《Terraform从入门到实践:快速构建你的第一张业务网络》。首先介绍如何入门和实践Terraform,随后演示如何使用Terraform快速构建业务网络。内容涵盖云上运维挑战及IaC解决方案,并重磅发布Terraform Explorer产品,旨在降低使用门槛并提升用户体验。此外,还将分享Terraform在实际生产中的最佳实践,帮助解决云上运维难题。
1265 1
Terraform从入门到实践:快速构建你的第一张业务网络(上)
|
10月前
|
人工智能 调度 项目管理
技术评审排程工具沉浸式解析:让项目协作更精准,技术评审不再成为瓶颈
技术评审是研发过程中把控质量、识别风险的重要环节,但缺乏系统排程常导致节奏混乱、沟通低效、意见落实不到位,进而引发项目延期和风险累积。本文详解技术评审排程管理的必要性、关键角色、流程节点与协作模式,并推荐实用工具与代码嵌入方法,助力团队实现高效评审、质量前置,让评审真正为交付赋能。
|
人工智能 运维 监控
阿里云携手神州灵云打造云内网络性能监测标杆 斩获中国信通院高质量数字化转型十大案例——金保信“云内网络可观测”方案树立云原生运维新范式
2025年,金保信社保卡有限公司联合阿里云与神州灵云申报的《云内网络性能可观测解决方案》入选高质量数字化转型典型案例。该方案基于阿里云飞天企业版,融合云原生引流技术和流量“染色”专利,解决云内运维难题,实现主动预警和精准观测,将故障排查时间从数小时缩短至15分钟,助力企业降本增效,形成可跨行业复制的数字化转型方法论。
672 6
|
存储 Linux 持续交付
史上最全 Terraform 入门教程,助你无坑入门!
【10月更文挑战第26天】这是一个全面的 Terraform 入门教程,涵盖了 Terraform 的基本概念、安装步骤、基础配置、变量和输出变量的使用、模块的定义与使用,以及状态管理。通过实例讲解如何创建本地文件资源和 AWS S3 桶,帮助初学者快速上手并掌握 Terraform 的核心功能。
4093 8
|
弹性计算 API 持续交付
基于 ROS 的 Terraform 托管服务轻松部署文本转语音系统 ChatTTS
基于 IaC 的理念,通过定义一个模板,使用 ROS 提供的 Terraform 托管服务进行自动化部署,可以非常高效快捷地部署任意云资源和应用(比如 ChatTTS 服务)。相比于手动部署或者通过 API、SDK 的部署方式,有着高效、稳定等诸多优势,也是服务上云的最佳实践。
598 58
基于 ROS 的 Terraform 托管服务轻松部署文本转语音系统 ChatTTS
|
前端开发
手写实现ES6的Promise.all()和Promise.race()函数
这篇文章介绍了如何手写实现ES6的`Promise.all()`和`Promise.race()`函数,提供了实现这两个Promise聚合函数的详细代码示例,并展示了如何使用它们。
316 3
手写实现ES6的Promise.all()和Promise.race()函数

热门文章

最新文章