在本地安装和配置Terraform
在使用Terraform配置文件进行云基础设施的定义、预览和部署之前,您需要安装并配置Terraform。
安装Terraform
本文以在Linux或Windows系统中使用程序包安装Terraform为例,更多安装方式,请参见Terraform 安装。
进入Terraform官网下载适用于您的操作系统的程序包。
配置Terraform运行环境。
Linux
执行以下命令将程序包解压到/usr/local/bin。
# 将/terraform_1.9.5_linux_amd64.zip替换为程序包所在路径 sudo unzip /terraform_1.9.5_linux_amd64.zip -d /usr/local/bin
Windows
程序包解压之后,例如解压后的目录为D:\tool\terraform。
在桌面右键单击此电脑,选择属性 -> 高级系统设置 -> 环境变量 -> 系统变量/用户变量。
在系统变量/用户变量中单击Path,选择编辑 -> 新建,输入Terraform的解压目录(如D:\tool\terraform),单击确定完成配置。
运行
terraform
验证路径配置。terraform
命令运行后将显示可用的Terraform选项的列表,如下所示,表示安装完成。
配置Terraform身份认证
Terraform身份认证是指在通过Terraform操作阿里云基础设施之前,对阿里云Terraform Provider进行身份验证。只有在身份认证成功后,才能与阿里云API进行通信,并创建和管理阿里云的基础设施资源。阿里云Terraform Provider提供多种身份认证方式,有关更多身份认证信息,请参见相关文档Terraform 身份认证。
本文以在环境变量中使用RAM用户AccessKey配置身份认证为例:
由于阿里云账号(主账号)拥有资源的所有权限,其AccessKey一旦泄露风险巨大,所以建议您使用满足最小化权限需求的RAM用户的AccessKey。具体操作方式请参见创建AccessKey。
根据业务需求为RAM用户授予最小化权限,具体操作请参见创建自定义权限策略。
创建环境变量,存放身份认证信息。
Linux
重要使用export命令配置的临时环境变量仅当前会话有效,当会话退出之后所设置的环境变量将会丢失。若需长期保留环境变量,可将export命令配置到对应操作系统的启动配置文件中。
# AccessKey Id export ALICLOUD_ACCESS_KEY="LTAIUrZCw3********" # AccessKey Secret export ALICLOUD_SECRET_KEY="zfwwWAMWIAiooj14GQ2*************" # 资源将要部署的地域 export ALICLOUD_REGION="cn-beijing"
Windows
在桌面右键单击此电脑,选择属性 -> 高级系统设置 -> 环境变量 -> 系统变量/用户变量。
在系统变量/用户变量中,单击新建,创建以下环境变量。
变量名
变量描述
变量值
ALICLOUD_ACCESS_KEY
AccessKey Id
示例:LTAIUrZCw3********
ALICLOUD_SECRET_KEY
AccessKey Secret
示例:zfwwWAMWIAiooj14GQ2*************
ALICLOUD_REGION
资源将要部署的地域
示例:cn-beijing
配置Terraform Init加速方案(可选)
编写完Terraform配置文件后,在配置文件所在的目录中执行terraform init
,Terraform将根据配置文件中指定的Provider、Provisioner,或与Provider版本相关的资源或数据源,自动加载最新的或指定的Provider版本。
当您遇到因网络延迟等因素导致的Terraform init超时,从而无法正常下载Provider的情况时,可以通过配置阿里云镜像站来解决。阿里云Provider提供了两个下载源:source = hashicorp/alicloud和 source = aliyun/alicloud。自Terraform CLI 0.13.2版本起,已提供设置网络镜像的功能,具体配置方式请参见Terraform Init 加速方案配置。