Terraform是一种开源工具,用于安全高效地预览、配置和管理云基础架构和资源。本文为您演示如何通过Terraform创建RDS Custom实例。
支持资源列表
支持Terraform编排和使用的RDS Custom资源清单如下,更多信息请参见RDS。如果您还不了解Terraform,请参见Terraform产品介绍。
RDS Custom资源 | 说明 | 使用示例 |
管理RDS Custom实例资源。 | ||
管理RDS Custom部署集资源。 |
配置权限
使用Terraform,您需要一个阿里云账号和账号的访问密钥(AccessKey)。为确保您的阿里云账号及云资源使用安全,如非必要应避免直接使用阿里云主账号来访问云数据库RDS。建议您创建一个RAM用户,获取该用户的AccessKey,并向其授予相应权限。
创建RAM用户:
访问RAM用户列表,单击创建用户。
设置登录名称为rds-test-operator,选择访问方式为使用永久 AccessKey 访问。
单击确定,创建RAM用户并保存AccessKey ID与AccessKey Secret信息。
完成授权:
访问RAM用户列表,单击目标RAM用户操作列的添加权限。
为该RAM用户添加如下权限。
AliyunRDSFullAccess:管理云数据库服务(RDS)的权限。
AliyunECSFullAccess:管理云服务器服务(ECS)的权限。
AliyunBSSOrderAccess:在费用中心(BSS)查看订单、支付订单及取消订单的权限。
AliyunVPCFullAccess:具有VPC的完全控制权限。
AliyunCloudShellFullAccess:管理云命令行(cloudshell)的权限。
说明本文以使用阿里云Cloud Shell创建RDS Custom实例为例,您也可以按需选择权限策略或进行自定义策略,更多信息请参见创建自定义权限策略。
单击确认新增授权,完成授权操作。
操作步骤
准备Terraform运行环境
您可以选择以下任意方式来使用Terraform,本文以阿里云Cloud Shell为例。
Cloud Shell:阿里云Cloud Shell中预装了Terraform的组件,并已配置好身份凭证,您可直接在Cloud Shell中运行Terraform的命令。适用于低成本、快速、便捷地访问和使用Terraform的场景。
在Terraform Explorer中使用Terraform:阿里云提供了Terraform的在线运行环境,您无需安装Terraform,登录后即可在线使用和体验Terraform。适用于零成本、快速、便捷地体验和调试Terraform的场景。
在本地安装和配置Terraform:适用于网络连接较差或需要自定义开发环境的场景。
编写并运行模板
Terraform通过命令实现对Terraform模板中所定义的资源进行创建、修改、查看和删除。本文以创建RDS Custom实例为例进行说明。
登录Cloud Shell。
编写Terraform模板,命名为main.tf,并增加如下信息。
您可以使用vim命令直接编写模板,如果开通了OSS存储,您可以直接将配置模板上传到为Cloud Shell创建的bucket中。
本文以成都地域为例,在运行之前您需要添加对应环境变量。
export ALICLOUD_REGION="cn-chengdu"
执行
terraform init
命令初始化配置。当返回结果中出现
Terraform has been successfully initialized!
时,表示初始化已成功完成。执行
terraform plan
命令预览配置。执行
terraform apply
根据模板配置创建RDS Custom实例。当出现如下内容时,输入yes继续创建。
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value:
当出现
Apply complete!
时,表示创建成功。...... alicloud_rds_custom.default: Still creating... [3m0s elapsed] alicloud_rds_custom.default: Creation complete after 3m6s [id=rc-r9b0jievjz3u18s6****] Apply complete! Resources: 5 added, 0 changed, 0 destroyed.
查看结果。
登录RDS管理控制台,在左侧导航栏单击RDS Custom > Custom实例列表, 然后在上方选择地域,查看已创建的RDS Custom实例。
清理资源
当您不再需要上述通过Terraform创建或管理的资源时,请执行以下操作以释放资源。
执行如下命令,清理所有资源。关于
terraform destroy
的更多信息,请参见Terraform常用命令。terraform destroy
当出现如下内容时,输入yes继续清理。
Do you really want to destroy all resources? Terraform will destroy all your managed infrastructure, as shown above. There is no undo. Only 'yes' will be accepted to confirm. Enter a value:
当出现
Destroy complete!
时,表示资源清理成功。
附录:Terraform示例
以上文中所创建的RDS Custom实例为例,通过修改main.tf
文件的内容来管理RDS Custom实例。
修改了
main.tf
文件的内容后,需要按照上文步骤依次执行terraform plan
和terraform apply
使配置生效。实例配置生效后,可以在RDS管理控制台的RDS Custom中查看相应的变更。