检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
Provider Provider Terraform的配置文件以 ".tf" 或".tf.json"结尾,主要由provider,resource,data source和变量组成。 每个 Provider 代表一个服务提供商,Terraform 通过插件机制与Provider进行交互。Provider通过关键字
此API用于在指定的资源栈下生成一个执行计划,执行计划描述了当前资源栈中记录的资源状态和模板描述的目的资源状态之间的区别(如,资源A将以以下配置文件生成,资源B将以下参数从XXX修改成YYY) 调用此API触发创建执行计划之后,可以通过GetExecutionPlanMetadata来跟踪执行计划的状态
depends_on 在同一个 Terraform 配置文件中可以包含多个资源。通过在资源中引用其他资源的属性值,Terraform可以自动推断出资源的依赖关系。然而,某些资源的依赖关系对于Terraform是不可见的,这就需要使用 depends_on 来创建显式依赖。您可以使用
terraform apply -var-file="testing.tfvars" 变量定义文件的扩展名为 ".tfvars",变量定义文件的语法与配置文件的语法相同,但仅用于指定变量名称: vpc_name = "my_vpc" vpc_cidr = "192.168.0.0/16" av
配置指南 Provider Resource Data Source 变量 Metadata Extension 父主题: 资源编排
test的值为""时,就将其忽略。 其他语法 单行注释以#或//开头; 多行注释以/*开始,以*/结束,不支持嵌套块注释。 Terraform配置文件使用UTF-8编码,对于标识符、注释和字符串都支持非ASCII字符。 多行字符串以<<EOF开头,中间是字符串内容,最后以EOF结尾。EOF也可以替换为其他字符。例如:
变量 输入变量 输出变量 本地变量 父主题: 配置指南
Extension Extension简介 Extension使用 多语义化 参数预加载 父主题: 配置指南
Metadata Metadata说明 depends_on count for_each provider lifecycle 父主题: 配置指南
Data Source Data Source Data Source 可以认为是特殊的Resource,通过关键字 "data" 进行声明。Data Source 用于查询已经存在资源的属性和信息,例如可以通过 "Ubuntu 18.04 server 64bit" 的镜像名称查询得到对应镜像的ID及其他属性:
Metadata说明 Metadata是Terraform支持的内置元参数,可以在 provider,resource,data块中使用。本章节主要介绍 resource块支持的元参数,主要包括: depends_on:用于指定资源的依赖项 count:用于创建多个相同配置的资源
输出变量 输出变量可以理解为模块的返回值,通过关键字 "output" 进行声明。输出变量是一种对外公开某些信息的方法,既可以在根模块中运行 terraform apply/output 命令输出特定的值,又可以在子模块中将资源的属性值提供给父模块。 声明输出变量 按照约定,输出变量通常在名为
本地变量 本地变量可以理解为模块中的临时变量,其作用范围在所声明的模块内,通过关键字 "locals" 进行声明。本地变量适用于配置中有重复定义相同值或表达式的场景,可以减少代码冗余,并且易于修改。同时过度使用本地变量会导致变量的实际值被隐藏,代码晦涩,不利于维护,因此建议合理使用本地变量。
lifecycle 每个资源实例都具有创建 、更新和销毁三个阶段,在一个资源实例的生命周期过程中都会经历其中的2至3个阶段。通过元参数 lifecycle 可以对资源实例的生命周期过程进行改变,lifecycle 支持以下参数: create_before_destroy 默认情
count 默认情况下,Terraform的 resource块只配置一个资源。当需要创建多个相同的资源时,如果配置多个独立的 resource块就显得很冗余,且不利于维护。可以使用 count 或 for_each 参数在同一个 resource块中管理多个相同的资源。在同一个
for_each for_each 在功能上与 count 相似,for_each 使用键值对或字符串集合的形式快速地将值填入到对应的属性中,不仅可以优化脚本结构也有利于理解多实例间的关系。 在使用映射类型表达时,您可以使用 "each.key" 和 "each.value" 来
Extension简介 Extension用于承载RFS系统的扩展能力,这些扩展文件用户可以直接操作和编写。 Extension是RFS支持的内置元参数,可以在模板中配置使用,方便用户更好的配置参数。本章节主要介绍Extension相关参数 ,主要包括: i18n:代表要使用多语义化功能
Extension使用 使用Extension注意: 1.在zip压缩包根目录下新建.extension文件夹 2.".extension"文件夹下新建后缀名为.rfs.json的扩展文件,当前只支持扩展功能写在单个文件中 父主题: Extension
Resource Resource 是Terraform中最重要的元素,通过关键字 "resource" 进行声明。Provider中支持的云服务都有一个或多个资源与之对应,如huaweicloud_compute_instance表示ECS,huaweicloud_vpc表示V
多语义化 参数多语言支持对variable的参数名字、描述和类型进行词条翻译,当前支持zh_cn、en_us两种语义 i18n中示例如下: "i18n": { "zh_cn": [ { "variable_name":