我已经创建了从terraform中自动缩放的dynamodb,我想将其导入到terraform。但它说这个物体并不存在。我对其他地形使用了类似的命令,它起到了作用。但为此,该公司表示,自动缩放并不存在。读写目标没有问题。能够导入。
命令:
terraform import aws_appautoscaling_policy.dynamodb_table_read_policy dynamodb/table/Table_v3/dynamodb:table:ReadCapacityUnits/DynamoDBReadCapacityUtilization:table/Table_v3
地形代码:
resource "aws_appautoscaling_target" "dynamodb_table_read_target" {
max_capacity = var.read_max_capacity
min_capacity = var.read_min_capacity
resource_id = "table/${var.table_name}"
scalable_dimension = "dynamodb:table:ReadCapacityUnits"
service_namespace = "dynamodb"
}
resource "aws_appautoscaling_policy" "dynamodb_table_read_policy" {
name = "DynamoDBReadCapacityUtilization:${aws_appautoscaling_target.dynamodb_table_read_target.resource_id}"
policy_type = "TargetTrackingScaling"
resource_id = aws_appautoscaling_target.dynamodb_table_read_target.resource_id
scalable_dimension = aws_appautoscaling_target.dynamodb_table_read_target.scalable_dimension
service_namespace = aws_appautoscaling_target.dynamodb_table_read_target.service_namespace
target_tracking_scaling_policy_configuration {
predefined_metric_specification {
predefined_metric_type = "DynamoDBReadCapacityUtilization"
}
target_value = var.read_target_util
}
}
错误:
aws_appautoscaling_policy.dynolddb_table_read_policy:从导入身份证件"dynamodb/table/table_v3/dynamodb:table:ReadCapacityUnits/DynamoDBReadCapacityUtilization:table/table_v3";。。。aws_appautoscaling_policy.dynoldb_table_read_policy:导入已准备好!准备好导入的aws_appautoscaling_policyaws_appautoscaling_policy.dynoldb_table_read_policy:刷新状态[id=DynamoDBReadCapacityUtilization:表/table_v3]╷ │错误:无法导入不存在的远程对象│ │尝试时将现有对象导入"aws_appautoscaling_policy.dynolddb_table_read_policy";,提供者检测到不存在具有│给定的id。仅预先存在可以导入对象;检查id是否正确与提供程序的配置区域或端点关联,或使用"地形应用";到│为此资源创建一个新的远程对象。
您的PolicyName
(即DynamoDBReadCapacityUtilization:table/Table_v3
(看起来很奇怪。遗憾的是,由于您没有提供任何关于您是如何在TF之外创建扩展策略的信息,我建议运行:
aws application-autoscaling describe-scaling-policies --service-namespace dynamodb
以及验证CCD_ 3。