通过Terraform配置AWS_MQ_BRORK时,如何设置Deployment_Mode?
我正在尝试通过Terraform为Amazon MQ经纪人提供。我已经编写了用于部署类型的多AZ部署的代码,为Active_standby_multi_az。现在,我想使用Single_instance部署类型在测试环境中提供MQ经纪。因此,我参数化了deployment_mode字段并传递变量中的值。
这是我的变量列表:
variable "enviroment" {
default = "test"
}
variable "mq_multiAZ" {
default = "SINGLE_INSTANCE"
}
当我将变量(mq_multiaz)值替换为“ Active_standby_multi_az”时,以下代码绝对正常工作。但是,它无法与可变值“ single_instance”一起使用。另外,请注意 - 我们需要2个子网“ Active_standby_multi_az”部署,我们不能提及单个子网来工作“ single_instance”部署。
MQ_BROKER.TF:
resource "aws_mq_broker" "mymq_broker" {
broker_name = "${var.enviroment}-broker"
engine_type = "ActiveMQ"
engine_version = "5.15.9"
host_instance_type = "mq.t2.micro"
deployment_mode = "${var.mq_multiAZ}"
publicly_accessible = false
apply_immediately = false
security_groups = [aws_security_group.amazon_mq.id]
subnet_ids = [
data.aws_subnet.AppSubnetA.id,
data.aws_subnet.AppSubnetB.id,
]
user {
username = "${var.mq_master_user}"
password = "${var.mq_master_pwd}"
console_access = true
}
logs {
general = true
}
maintenance_window_start_time {
day_of_week = "SUNDAY"
time_of_day = "02:00"
time_zone = "UTC"
}
tags = {
Environment = "${var.enviroment}"
Name = "${var.enviroment}-broker"
}
}
我要为“ Single_instance”部署遇到的错误:
Error: BadRequestException: Specify a single subnet in [SINGLE_INSTANCE] deployment mode.
{
RespMetadata: {
StatusCode: 400,
RequestID: "716aafdf-578a-4eb7-bfe4-f0f08998b6db"
},
ErrorAttribute: "subnetIds",
Message_: "Specify a single subnet in [SINGLE_INSTANCE] deployment mode."
}
with aws_mq_broker.empays_broker,
on amazonMQ.tf line 1, in resource "aws_mq_broker" "empays_broker":
1: resource "aws_mq_broker" "empays_broker" {
I am trying to provision Amazon MQ broker through terraform. I have written code for multi AZ deployment with deployment type is ACTIVE_STANDBY_MULTI_AZ. Now I want to provision the MQ broker in Test environment with SINGLE_INSTANCE deployment type. hence I parameterized the deployment_mode field and passing the values in variables.
this is my variables list:
variable "enviroment" {
default = "test"
}
variable "mq_multiAZ" {
default = "SINGLE_INSTANCE"
}
The below code is absolutely working fine when I replaced the variable (mq_multiAZ) value to "ACTIVE_STANDBY_MULTI_AZ". however, it is not working with variable value "SINGLE_INSTANCE". also note- We require 2 subnets for "ACTIVE_STANDBY_MULTI_AZ" deployments, we can't mention single subnet to work "SINGLE_INSTANCE" deployment.
mq_broker.tf:
resource "aws_mq_broker" "mymq_broker" {
broker_name = "${var.enviroment}-broker"
engine_type = "ActiveMQ"
engine_version = "5.15.9"
host_instance_type = "mq.t2.micro"
deployment_mode = "${var.mq_multiAZ}"
publicly_accessible = false
apply_immediately = false
security_groups = [aws_security_group.amazon_mq.id]
subnet_ids = [
data.aws_subnet.AppSubnetA.id,
data.aws_subnet.AppSubnetB.id,
]
user {
username = "${var.mq_master_user}"
password = "${var.mq_master_pwd}"
console_access = true
}
logs {
general = true
}
maintenance_window_start_time {
day_of_week = "SUNDAY"
time_of_day = "02:00"
time_zone = "UTC"
}
tags = {
Environment = "${var.enviroment}"
Name = "${var.enviroment}-broker"
}
}
The error I am getting for "SINGLE_INSTANCE" deployment:
Error: BadRequestException: Specify a single subnet in [SINGLE_INSTANCE] deployment mode.
{
RespMetadata: {
StatusCode: 400,
RequestID: "716aafdf-578a-4eb7-bfe4-f0f08998b6db"
},
ErrorAttribute: "subnetIds",
Message_: "Specify a single subnet in [SINGLE_INSTANCE] deployment mode."
}
with aws_mq_broker.empays_broker,
on amazonMQ.tf line 1, in resource "aws_mq_broker" "empays_broker":
1: resource "aws_mq_broker" "empays_broker" {
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论