检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
本地变量 本地变量可以理解为模块中的临时变量,其作用范围在所声明的模块内,通过关键字 "locals" 进行声明。本地变量适用于配置中有重复定义相同值或表达式的场景,可以减少代码冗余,并且易于修改。同时过度使用本地变量会导致变量的实际值被隐藏,代码晦涩,不利于维护,因此建议合理使用本地变量。
输入变量 输入变量可以理解为模块的参数,通过关键字 "variable" 进行声明。通过定义输入变量,您可以无需变更模块的源代码就能灵活修改配置。输入变量的值可以使用默认值,CLI 选项,环境变量等方式来设置。 定义输入变量 按照约定,输入变量通常在名为 variables.tf
输出变量 输出变量可以理解为模块的返回值,通过关键字 "output" 进行声明。输出变量是一种对外公开某些信息的方法,既可以在根模块中运行 terraform apply/output 命令输出特定的值,又可以在子模块中将资源的属性值提供给父模块。 声明输出变量 按照约定,输出变量通常在名为
变量 输入变量 输出变量 本地变量 父主题: 配置指南
变量引用 在编写模板时,通常会使用到变量引用的特性,像写函数一样,引用一个已定义好的变量或引用其他对象的成员变量。在AOS模板中也是一样的,您也可以引用其他已有的值。 为了使模板写作更加通顺,根据被引用的对象,将引用方法分为: 引用输入:使用get_input方式。 引用元素属性
json"结尾,主要由provider,resource,data source和变量组成。 每个 Provider 代表一个服务提供商,Terraform 通过插件机制与Provider进行交互。Provider通过关键字 "provider" 进行声明,Provider的配置参数请参考这里。 执行 terraform
RDS.MySQL.User 模型说明 数据库用户账户用来连接数据库实例,可以控制对客户的数据库实例的访问。以MySQL数据库为例,在创建数据库实例时,已经默认创建名为root的用户账户。 模型属性 表1 模型定义属性说明 属性 是否必选 描述 instanceId 是 RDS实例ID
RDS.MySQL.DataBase 模型说明 一个数据库实例可以包含多个由数据库用户创建的数据库,并且可以使用与独立数据库实例相同的客户端工具和应用程序进行访问。该元素的作用便是在指定的RDS实例内创建一个数据库。 模型属性 表1 模型定义属性说明 属性 是否必选 描述 instanceId
invisible: <是否回显> mappings 可选项,用于定义映射表。在基于模板创建堆栈时,可以根据输入的变量信息,通过get_in_map方法提取特定变量对应的内容。一个模板最多支持定义10个映射。 mappings格式: <映射名称>: <映射对象名称>:
参数类型 描述 refIP string 关系型数据库MySQL的访问IP地址 refPort integer 关系型数据库MySQL的访问端口 refName string 关系型数据库MySQL实例的名称 refID string 关系型数据库MySQL实例的ID chargeMode
string 关系型数据库PostgreSQL的访问IP地址 chargeMode string 关系型数据库PostgreSQL的包周期类型 refPort integer 关系型数据库PostgreSQL的访问端口 refID string 关系型数据库PostgreSQL实例的ID
DBSS.Instance 模型说明 DBSS.Instance用于创建数据库安全服务(DBSS)资源。 模型属性 表1 模型定义属性说明 属性 是否必选 描述 comment 否 备注信息 参数类型:string vpcId 是 租户进行防护的VPC的ID 参数类型:HuaweiCloud
com/api-ecs/zh-cn_topic_0020212668.html 输入publicip字段数据结构中的id和eip的值时,只能选择其中一个参数值输入。 父主题: 数据结构
_stack_set_vars中声明的全部参数集合必须和资源栈集中记录的参数集合保持一致,如果声明了资源栈集中不存在的参数会报错400,如果没有声明已经在资源栈集中记录的参数会报错400,如果声明了同一个参数会报错400。 注: 期望覆盖指定参数值,需要在vars_uri或者va
_stack_set_vars中声明的全部参数集合必须和资源栈集中记录的参数集合保持一致,如果声明了资源栈集中不存在的参数会报错400,如果没有声明已经在资源栈集中记录的参数会报错400,如果声明了同一个参数会报错400。 注: 期望覆盖指定参数值,需要在vars_uri或者va
"alias" 标识为非默认配置。在资源中使用元参数 provider 可以选择非默认的 provider块。例如需要在不同的地区管理资源,首先需要声明多个 provider块: provider "huaweicloud" { region = "cn-north-1" ... }
mappings mappings为可选项,用于定义映射表。在基于模板创建资源栈时,可以根据输入的变量信息,通过get_in_map方法提取特定变量对应的内容。一个模板最多支持定义10个映射。 mappings格式: <映射名称>: <映射对象名称>: <映射对象属性名称>:
Data Source Data Source Data Source 可以认为是特殊的Resource,通过关键字 "data" 进行声明。Data Source 用于查询已经存在资源的属性和信息,例如可以通过 "Ubuntu 18.04 server 64bit" 的镜像名称查询得到对应镜像的ID及其他属性:
inputs 如果想要模板更加的通用,就不能将元素的参数值都写成固定的。例如,启动虚拟机的镜像ID,建议将这个参数开放出来作为模板的输入,这样模板的使用者就可以自由的控制这个参数。并且在使用该模板,即部署资源栈时,才会设置真正需要使用的镜像ID。 inputs为可选项,用于定义基
属性信息基于策略元素类型展开,每种元素类型都有其相应的属性,具体属性详见元素列表。 属性的变量可以来自inputs,也可以通过get_attribute获取运行时的信息。 如果一个元素没有需要特别声明的属性,可以不定义properties。 策略作用对象 是 字符串 由大写字母、小写字