我正在尝试为常见任务创建一个公共user_data文件,例如文件夹创建和某些软件包安装,以及一个单独的user_data文件,用于特定于应用程序的配置
我正在尝试以下 -
user_data = "${data.template_file.userdata_common.rendered}", "${data.template_file.userdata_master.rendered}"
Run Code Online (Sandbox Code Playgroud)
有了这些配置 -
data "template_file" "userdata_common" {
template = "${file("${path.module}/userdata_common.sh")}"
vars {
"ALBTarget" = "${var.ALBTarget}"
"s3bucket" = "${var.s3bucket}"
"centrifydomain" = "${lookup(var.centrifydomain, format("%s-%s", lower(var.env),var.region))}"
"centrifyadgroup" = "${lookup(var.centrifyadgroup, format("%s-%s", lower(var.env),var.region))}"
}
}
Run Code Online (Sandbox Code Playgroud)
data "template_file" "userdata_master" {
template = "${file("${path.module}/userdata_master.sh")}"
vars {
"ALBTarget" = "${var.ALBTarget}"
"s3bucket" = "${var.s3bucket}"
"centrifydomain" = "${lookup(var.centrifydomain, format("%s-%s", lower(var.env),var.region))}"
"centrifyadgroup" = "${lookup(var.centrifyadgroup, format("%s-%s", lower(var.env),var.region))}"
}
}
Run Code Online (Sandbox Code Playgroud)
我做计划时得到以下错误 -
Failed to load root config module: Error parsing /terraform/main.tf: key ${data.template_file.userdata_common.rendered}"' expected start …Run Code Online (Sandbox Code Playgroud) 由于我是redis的新手,我需要一些关于如何在REDIS中存储以下复杂json的指导,以便我们可以从REDIS访问JSON的元素 -
"Reservations": [
{
"Instances": [
{
"Monitoring": {
"State": "disabled"
},
"PublicDnsName": "",
"State": {
"Code": 16,
"Name": "running"
},
"EbsOptimized": "false",
"LaunchTime": "xxxxxxxxx",
"PrivateIpAddress": "x.x.x.x",
"ProductCodes": [],
"VpcId": "xxxxx",
"StateTransitionReason": "",
"InstanceId": "i-xxxxxxx",
"EnaSupport": "true",
"ImageId": "ami-xxxxx",
"PrivateDnsName": "ip-xxxxxx.ec2.internal",
"KeyName": "xxxxxxv",
"SecurityGroups": [
{
"GroupName": "xxx",
"GroupId": "sg-xxxx"
},
{
"GroupName": "xxxxxx",
"GroupId": "sg-xxxxx"
},
{
"GroupName": "xxxxx",
"GroupId": "sg-xxxxxx"
},
{
"GroupName": "xxxxx",
"GroupId": "sg-xxxxxx"
}
],
"ClientToken": "xxxxx",
"SubnetId": "subnet-xxxxx",
"InstanceType": "t2.micro",
"NetworkInterfaces": [
{ …Run Code Online (Sandbox Code Playgroud)