terraform相关内容
我正在尝试通过 Terraform 实例化 3 个知道彼此 IP 地址的 aws_instance.这当然会导致循环依赖.我想知道克服这个问题的最佳方法是什么.我尝试了几种解决方案: 一起实例化 2 个实例,然后实例化 1 个依赖于这 2 个实例的实例.在第三个实例中,有一个 user_data 脚本,允许实例通过 ssh 连接到其他 2 个实例以设置必要的配置. 它有效,但我不喜欢它
..
我按照 terraform 运行.我错误地使用了 google_storage_bucket_iam_policy 而不是 google_storage_bucket_iam_binding 因此它没有添加新策略,而是替换了所有现有策略. 数据“google_iam_policy"“部署脚本管理策略"{捆绑 {角色=“角色/storage.objectAdmin"成员= [“serviceAcc
..
这是我的输入 json 文件: {“输入":[{“acct_id":“foo-bar-15",“display_name":“富吧",“project-role-pairs":{“test-1234":“roles/logging.logWriter",“test-2345":“roles/storage.objectViewer"}},{“acct_id":“foo-bar-16",“disp
..
我有以下配置: 变量“private_subnets"{默认 = [“子网-A",“子网-B"]}资源“random_shuffle"“az"{输入 = ["${var.private_subnets}"]结果计数 = 1}模块“服务器"{源 = "./modules/aws-ec2"instance_count = 3name = "${var.env}-server"堆栈=“服务器"角色=“
..
如何传递 variable.tf 中提到的 "list" 或 "map" 类型的变量的值.下面提到的 input.tfvars 文件中的语法是否有错误? 目标不是硬编码 variables.tf 或 main.tf 文件中的任何值.在 Terraform.io 文档中,我验证了可以以这种格式提供值. 这是来自网站: 列表可以显式或隐式定义: # 隐式使用括号 [...]变量“ci
..
我正在尝试使用 Terraform 配置架构,并确保应用程序对周围发生的任何事情都尽可能了解. 我的目标是有一个应用程序使用亚马逊的 SDK 来询问哪些 RDS 实例可供它使用,然后连接到其中一个.这样,不需要外部信息(db-instance-identifier 或 Tag). 应用程序只会描述 RDS 实例,并且由于运行它的 EC2 将被 Terraform 授予仅对特定 RDS
..
我正在使用 Terraform 在 Azure 上部署 3 层应用程序:前端、后端和数据库.它运作良好.该应用程序是一个产品,我需要为多个客户提供多个实例. 我的问题是,我很难理解将多组值 (variables.tf) 应用于同一个脚本,以获得多个环境. 我希望有以下结构: main.tf 客户1 变量.tf 客户2 变量.tf 然后选择我是部署 custome
..
我在 Terraform 配置中通过 keybase.io PGP 生成凭据.我可以确认新用户通过 aws-cli 访问成功. 但是,控制台访问仍然被禁用.有没有办法在启用控制台访问的情况下使用 Terraform 创建用户? 我很欣赏这对于 Terraform 来说有点反模式,但我希望我的新用户能够登录到控制台 UI 以进行验证/调试. 更新 1 地形模块: htt
..
我正在尝试在 local-exec 配置程序中引用本地脚本.该脚本位于模块目录上方的几个级别.使用 ${path.module}/../../scripts/somescript.ps1 会产生 path not found 错误. 将脚本目录移动到模块目录下可以解决问题,但不幸的是,在我的情况下这不是一个有效的选项.工作场景:${path.module}/scripts/somescrip
..
在我的 main.tf 我有以下内容: 数据 "template_file" "lambda_script_temp_file" {模板 = "${file("../../../fn/lambda_script.py")}"}数据“模板文件"“图书馆临时文件"{模板 = "${file("../../../library.py")}"}数据“模板文件"“初始化临时文件"{模板 = "${file
..
core_instance_group {instance_type = "c4.large"instance_count = 1ebs_config {大小 = "40"类型=“gp2"volumes_per_instance = 1}出价价格 = "0.30" 我需要bid_price = "max on-demand".不确定如何在 terraform 中传递此参数. 解决方案 我
..
Terraform 版本:v0.11.8 用例 尝试使用 terraform 终止资源,运行输出命令时出错. 代码: 输出“frontend_rendered"{value = "${data.template_file.user_data.rendered}"} 调试输出 module.test.output.test_rendered:资源'data.templat
..
Terraform 不允许部署应用服务环境,因此我使用 azurerm_template_deployment 作为解决方法.但是,我想在稍后创建的应用服务计划资源中引用应用服务环境 ID.如何使用此方法获取和保存应用服务环境的 ID? 我在应用服务计划资源中使用depends_on标签来确保它在应用服务环境之后创建,但我不知道如何从创建中获取id并保存到变量中.我认为这会涉及到ARM模板的
..
升级到 Terraform v0.12.0 版本并使用“terraform 0.12upgrade"更新配置后 我收到以下 terraform init 错误 别名设置为 main.tf 中的变量,并从 azure 传入或替换. 配置存在一些问题,如下所述. Terraform 配置必须在初始化之前有效,因此Terraform 可以确定需要哪些模块和提供程序已安装.
..
这是我之前询问的以下内容的延续. 我要识别terraform执行环境的公网ip并加入安全组 我的 terraform 目录结构如下. root/├ main.tf├ test.sh├ 模块/aws│ └ ssh.tf/│ └ variables.tf/ test.sh #!/bin/sh -xeecho {\"ip\":\""`curl ipinfo.io/ip`"\"} ma
..
我正在尝试使用 Terraform 的外部提供程序来运行 PowerShell 脚本. 我无法从 Terraform 向脚本传递参数. 我正在使用以下代码来运行脚本: 变量“file_path"{类型 = “字符串"description = "输入powershell文件路径"默认 = "../../Services/azurerm_iam_role/Powershell_Scri
..
我正在尝试实现一个 Terraform 脚本来创建多个子网. 资源“azurerm_subnet"“test_subnet"{名称 = “testSUBNET"resource_group_name = "${local.resource_group_name}"virtual_network_name = "${azurerm_virtual_network.lab_vnet.name}"地址
..
我们有一堆实例(我知道......牛,不是宠物,但在这种情况下,这些真的是宠物) 资源“aws_instance"“read_00"{计数 = "${var.read_00_count}"资源“aws_instance"“read_01"{计数 = "${var.read_01_count}" 我们有一个 ELB,我们希望根据它们的计数变量动态添加实例,如下所示: 资源“aws_elb"“r
..
我今天写了一些使用“循环"的配置,但后来我才想知道这是否是正确的路径,因为 terraform 将状态文件中的资源保存为列表/数组. 考虑以下配置: 本地人{users_list = [“ab",“cd",“ef"]}资源“aws_iam_user"“用户"{count = "${length(local.users_list)}"名称 = "${local.users_list["${c
..
我想在一个业余项目中创建 4GB 的自定义图像以节省成本.我已经能够使用以下方法在 Terraform 中成功设置 Azure 提供的 Ubuntu 18.04 base 映像的大小: resource "azurerm_managed_disk" "example-disk" {...create_option = "FromImage"disk_size_gb = "4"}资源“azurer
..