我将 Terraform 与 AWS 结合使用,并且能够使用 aws_storagegateway_gateway 资源创建 AWS Storage Gateway 文件网关。
网关将创建,状态为“在线”,但控制台中尚未添加缓存磁盘,这是正常的,因为必须在创建网关后完成。VM 确实有一个磁盘,并且可以在控制台中添加它,并且在控制台中这样做可以完美地工作。
但是,一旦创建了网关,我就会尝试使用 Terraform 添加磁盘,并且似乎无法让代码工作,或者很可能不明白如何让它工作。
尝试使用 aws_storagegateway_cache 资源,但我在 disk_id 上收到错误,并且不知道如何让它从网关创建的代码中返回。
可能有人有一个工作示例,说明如何在创建网关后使用 Terraform 添加缓存磁盘,或者知道如何获取 disk_id 以便我可以添加它?
添加代码
provider "aws" {
access_key = "${var.access-key}"
secret_key = "${var.secret-key}"
token = "${var.token}"
region = "${var.region}"
}
resource "aws_storagegateway_gateway" "hmsgw" {
gateway_ip_address = "${var.gateway-ip-address}"
gateway_name = "${var.gateway-name}"
gateway_timezone = "${var.gateway-timezone}"
gateway_type = "${var.gateway-type}"
smb_active_directory_settings {
domain_name = "${var.domain-name}"
username = "${var.username}"
password = "${var.password}"
}
}
resource "aws_storagegateway_cache" "sgwdisk" {
disk_id = "SCSI"
gateway_arn = "${aws_storagegateway_gateway.hmsgw.arn}"
}
output "gatewayid" {
value = "${aws_storagegateway_gateway.hmsgw.arn}"
}
我得到的错误是:
- aws_storagegateway_cache.sgwdisk:添加 Storage Gateway 缓存时出错:InvalidGatewayRequestException:指定的磁盘不存在。状态码:400,请求ID:fda602fd-a47e-11e8-a1f4-b383e2e2e2f6
我试图像上面那样对 disk_id 进行硬编码或使用变量。在变量上,我不知道它是返回还是存在,所以这可能是新问题。