Terraform是一种开源工具,用于安全高效地预览、配置和管理云基础架构和资源。本文介绍Terraform的基本概念、使用优势和应用场景。
基本概念
Terraform是一个云上资源编排工具,实现基础设施即代码。
Terraform能够让您在阿里云上轻松使用简单模板语言定义、预览和部署云基础架构。更多信息,请参见Configuration Syntax。
Terraform是一个安全、高效地部署、更改、版本化基础设施和应用程序的工具,可以用来管理多层次的资源。
Terraform统一管理从上层的软件到底层的网络、系统的配置。
Terraform可以创建、修改、删除ECS、VPC、RDS、SLB等多种阿里云云产品资源。
有关Terraform应用场景的具体介绍,请参见应用场景。
Terraform资源 | Terraform工具 |
Terraform的资源分为2类:
以下举例说明如何使用Resource和Data Source。
关于容器服务ACK的Resources和Data Resources的相关信息,请参见通过Terraform使用ACK。 | Terraform工具分为3部分:
您可以下载Terraform工具。具体操作,请参见在本地安装和配置Terraform和在Cloud Shell中使用Terraform。 |
阿里云是中国第一家与Terraform集成的云厂商,阿里云Provider(terraform-provider-alicloud)目前已经提供了超过163个Resource和113个Data Source,覆盖计算、存储、网络、负载均衡、CDN、容器服务、中间件、访问控制、数据库等超过35款产品,已经满足了大量大客户的自动化上云需求。
关于Terraform的更多信息,请参见Terraform。
使用优势
将基础架构部署到多个云
Terraform适用于多云方案,将类似的基础架构部署到阿里云、其他云提供商或者本地数据中心。开发人员能够使用相同的工具和相似的配置文件同时管理不同云提供商的资源。
自动化管理基础架构
Terraform能够创建配置文件的模板,以可重复、可预测的方式定义、预配和配置ECS资源,减少因人为因素导致的部署和管理错误。通过使用Terraform,您能够多次部署同一模板,创建相同的开发、测试和生产环境。
基础架构即代码
可以用代码来管理维护资源。允许保存基础设施状态,从而使您能够跟踪对系统(基础设施即代码)中不同组件所做的更改,并与其他人共享这些配置。
降低开发成本
您可通过按需创建开发和部署环境来降低成本。此外,您可以在系统更改之前进行评估。
通过Terraform使用ACK
ACK支持通过Terraform管理以下Resource和Data Source。
表 1. Resources
名称 | 描述 |
管理ACK边缘托管版集群。 | |
管理ACK节点池。 | |
管理ACK集群内RBAC权限。 | |
管理ACK托管版集群。 | |
管理ACK专有版集群。 | |
管理ACK Serverless集群。 | |
管理集群组件。 |
表 2. Data Sources
名称 | 描述 |
开通容器服务ACK。 | |
列举所有的ACK边缘托管版集群。 | |
列举所有的ACK专有版集群。 | |
列举RAM用户拥有的所有权限。 | |
列举所有的ACK托管版集群。 | |
列举所有的ACK Serverless集群。 | |
列举集群组件元数据信息。 | |
列举集群可用的组件。 | |
列举可用的Kubernetes版本信息。 |