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配置多台服务器之间的免密登陆以及登陆别名
841 1
|
3月前
|
人工智能 监控 API
ai龙虾 OpenClaw 阿里云/本地部署:+GLM-5-Turbo适配优化+百炼API配置及避坑指南
2026年,OpenClaw(俗称“龙虾”)已从技术极客的工具演进为广泛应用的生产力载体,其核心价值在于通过工具调用、任务拆解、多步骤串联实现自动化工作流。但实际使用中,通用大模型常出现工具调用断链、指令理解偏差、长任务稳定性不足等问题——这类需要持续工具调用、复杂指令拆解、长时间运行的“龙虾任务”,对模型的专项能力提出了更高要求。
1525 0
|
9月前
|
Kubernetes Devops 应用服务中间件
基于 Azure DevOps 与阿里云 ACK 构建企业级 CI/CD 流水线
本文介绍如何结合阿里云 ACK 与 Azure DevOps 搭建自动化部署流程,涵盖集群创建、流水线配置、应用部署与公网暴露,助力企业高效落地云原生 DevOps 实践。
1073 2
|
弹性计算 人工智能 运维
Terraform从入门到实践:快速构建你的第一张业务网络(上)
本次分享主题为《Terraform从入门到实践:快速构建你的第一张业务网络》。首先介绍如何入门和实践Terraform,随后演示如何使用Terraform快速构建业务网络。内容涵盖云上运维挑战及IaC解决方案,并重磅发布Terraform Explorer产品,旨在降低使用门槛并提升用户体验。此外,还将分享Terraform在实际生产中的最佳实践,帮助解决云上运维难题。
1332 1
Terraform从入门到实践:快速构建你的第一张业务网络(上)
|
存储 SQL 运维
中国联通网络资源湖仓一体应用实践
本文分享了中国联通技术专家李晓昱在Flink Forward Asia 2024上的演讲,介绍如何借助Flink+Paimon湖仓一体架构解决传统数仓处理百亿级数据的瓶颈。内容涵盖网络资源中心概况、现有挑战、新架构设计及实施效果。新方案实现了数据一致性100%,同步延迟从3小时降至3分钟,存储成本降低50%,为通信行业提供了高效的数据管理范例。未来将深化流式数仓与智能运维融合,推动数字化升级。
723 0
中国联通网络资源湖仓一体应用实践
|
12月前
|
监控 Go 开发者
深入解析 go 语言中的 select 语句
在 Go 语言中,`select` 是专为并发编程设计的控制结构,用于在多个 channel 操作间进行非阻塞选择。它类似于 `switch`,但所有 case 分支必须是 channel 的 I/O 操作。本文通过通俗易懂的语言和丰富代码示例,详细讲解 `select` 的各种用法,包括基本语法、空 `select`、多分支选择、`default` 分支、特点总结及最佳实践,适合初学者和有经验的开发者学习参考。掌握 `select`,能有效提升 Go 并发编程的灵活性与效率。
368 6
|
存储 Linux 持续交付
史上最全 Terraform 入门教程,助你无坑入门!
【10月更文挑战第26天】这是一个全面的 Terraform 入门教程,涵盖了 Terraform 的基本概念、安装步骤、基础配置、变量和输出变量的使用、模块的定义与使用,以及状态管理。通过实例讲解如何创建本地文件资源和 AWS S3 桶,帮助初学者快速上手并掌握 Terraform 的核心功能。
4379 8
|
存储 关系型数据库 MySQL
MySQL 上亿大表,如何深度优化?
【8月更文挑战第11天】随着大数据时代的到来,MySQL 作为广泛使用的关系型数据库管理系统,经常需要处理上亿级别的数据。当数据量如此庞大时,如何确保数据库的查询效率、稳定性和可扩展性,成为了一个亟待解决的问题。本文将围绕 MySQL 上亿大表的深度优化,分享一系列实用的技术干货,帮助你在工作和学习中应对挑战。
1472 1
|
网络协议
阿里云服务器搭建DNS解析服务步骤
在阿里云搭建DNS解析服务,首先注册阿里云账号并购买适合的云服务器。获取服务器公网IP后,配置服务器并安装DNS软件如Bind9。接着设置DNS解析,包括定义顶级和子域名的指向。最后,通过ping测试或浏览器访问验证DNS解析功能是否正常。
1883 19

热门文章

最新文章