正在生成
详细信息:
检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Modules 一个Terraform配置文件中通常包含多个Resource,Data Source以及变量,为了简化配置和降低维护复杂度,Terraform提供了Modules功能。Module相当于一个Terraform模块,是对多个资源的封装及抽象。 调用模块 在配置文件中声明
结尾,主要由provider,resource,data source和变量组成。 每个 Provider 代表一个服务提供商,Terraform 通过插件机制与Provider进行交互。Provider通过关键字 "provider" 进行声明,Provider的配置参数请参考这里。 执行 terraform
Resource 是Teraform中最重要的元素,通过关键字 "resource" 进行声明。Provider中支持的云服务都有一个或多个资源与之对应,如huaweicloud_compute_instance表示ECS,huaweicloud_vpc表示VPC等。资源之间的关系可以通过关系型资源进行关联,如我们可以使用
创建MySQL数据库 应用场景 MySQL是目前最受欢迎的开源数据库之一,其性能卓越,搭配LAMP(Linux + Apache + MySQL + Perl/PHP/Python),成为WEB开发的高效解决方案。 本教程将指导您如何通过Terraform脚本创建一个RDS for
基本操作 应用场景 对象存储服务OBS(Object Storage Service)提供海量、安全、高可靠、低成本的数据存储能力,可供用户存储任意类型和大小的数据。适合企业备份/归档、视频点播、视频监控等多种数据存储场景。 相关资源 huaweicloud_obs_bucket
给RDS实例绑定EIP 应用场景 云数据库RDS实例创建成功后,可以绑定弹性公网IP,来实现通过公共网络访问数据库实例。以下教程将指导您如何通过Terraform脚本给RDS实例绑定和解绑弹性公网IP。 实例在创建、变更规格、恢复、重启或冻结状态下不能绑定和解绑弹性公网IP。 相关资源
文件被损坏或者被删除,Terraform会认为其管理的资源也发生了变更和移除。此时再执行 'apply' 命令将会按照模块的定义变更或者重建资源,直到模块对资源的定义与 state 中的映射保持一致。如果实际的资源依然存在于云平台中,这将会导致资源的重复创建或者创建失败。 在团队协作中,如果想维护同一套资源,需要将资源的配置文件和
for_each for_each 在功能上与 count 相似,for_each 使用键值对或字符串集合的形式快速地将值填入到对应的属性中,不仅可以优化脚本结构也有利于理解多实例间的关系。 在使用映射类型表达时,我们可以使用 "each.key" 和 "each.value"
输出变量 输出变量可以理解为模块的返回值,通过关键字 "output" 进行声明。输出变量是一种对外公开某些信息的方法,既可以在根模块中运行 terraform apply/output 命令输出特定的值,又可以在子模块中将资源的属性值提供给父模块。 声明输出变量 按照约定,输出变量通常在名为
Data Source Data Source 可以认为是特殊的Resource,通过关键字 "data" 进行声明。Data Source 用于查询已经存在资源的属性和信息,例如我们可以通过 "Ubuntu 18.04 server 64bit" 的镜像名称查询得到对应镜像的ID及其他属性:
t bucket (必填)存储桶名称 key (必填)对象名称 source (可选)待上传对象的源文件路径 后续操作 您可以将自己的域名与OBS桶访问域名进行绑定,可以实现通过自定义域名访问存储在OBS中的文件。同时也可以配置CDN服务实现加速功能。请参考使用自定义域名托管静态网站。
lifecycle 每个资源实例都具有创建 、更新和销毁三个阶段,在一个资源实例的生命周期过程中都会经历其中的2至3个阶段。通过元参数 lifecycle 可以对资源实例的生命周期过程进行改变,lifecycle 支持以下参数: create_before_destroy 默认情
基本语法 Terraform配置语言主要基于HCL语法,具有配置简单,可读性强等特点,并且兼容JSON语法。本文主要介绍Terraform配置语言的基本语法及常见函数。 Terraform配置语言主要由参数(Argument),块(Block),表达式(Experssion)和函数(Functions)组成。
terraform apply -var-file="testing.tfvars" 变量定义文件的扩展名为 ".tfvars",变量定义文件的语法与配置文件的语法相同,但仅用于指定变量名称: vpc_name = "my_vpc" vpc_cidr = "192.168.0.0/16"
典型网络配置 应用场景 在创建VPC之前,您需要根据具体的业务需求规划VPC的数量,子网的数量、IP网段划分和互联互通方式等。详细的网络规划请参考虚拟私有云最佳实践。 本教程将创建一个VPC用于托管Web应用或网站,其私网网段为192.168.0.0/16,按照业务模块划分3个子
其他命令 terraform validate 该命令用于快速检查配置文件中的语法错误,无需通过 plan/apply 命令便可定位错误的详细位置和原因。 检验正确 $ terraform validate The configuration is valid. 检验错误 $ terraform
基本命令 terraform init terraform init 命令是我们执行的第一条命令,主要用于初始化工作目录,完成Provider、Backend、Modules等模块的加载。 $ terraform init Initializing the backend...