web-dev-qa-db-ja.com

DYNAMODBの自動スケールTerraForm Import

TerraformからDynamoDBの自動スケールを作成しました。これをTerraformにインポートします。しかし、それはオブジェクトが存在しないと言います。私は他のTerraformにも同様のコマンドを使用しました。しかし、このため、自動スケーリングは存在しません。読み書き対象の問題はありません。インポートすることができます。

コマンド:

terraform import aws_appautoscaling_policy.dynamodb_table_read_policy dynamodb/table/Table_v3/dynamodb:table:ReadCapacityUnits/DynamoDBReadCapacityUtilization:table/Table_v3
 _

Terraformコード:

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.DYNAMODB_TABLE_READ_POLICY:IDからのインポート:IDからのインポート "DynamoDB/Table/Table_v3/DynamoDB:table:table:table:table:table_v3" ... AWS_APPAUTOSCALING_POLICY.DYNAMODB_TABLE_READ_POLICY:準備済み! aws_appautoscaling_policy for import aws_appautoscaling_policy.dynamodb_table_read_policy:既存のオブジェクトを "AWS_APPAUTOSCALING_POLICY_READ_POLICY"にインポートしようとしている間、既存のオブジェクトをインポートしようとしている間、存在しないリモートオブジェクトがインポートできない場合は、存在しないリモートオブジェクトをインポートできません。 Providerは、↑指定されたIDを使用してオブジェクトが存在しないことを検出しました。既存のオブジェクトのみをインポートできます。 IDが正しいこと、およびプロバイダの設定された領域またはエンドポイントに関連付けられているか、または「TerraForm Apply」を使用して、このリソースに新しいリモートオブジェクトを作成します。

1
Developer404

あなたのPolicyName(すなわちDynamoDBReadCapacityUtilization:table/Table_v3)奇妙に見えます。悲しいことに、あなたがTFの外でスケーリングポリシーを正確に作成した方法についての情報を提供していないので、実行を提案します。

aws application-autoscaling describe-scaling-policies  --service-namespace dynamodb
 _

PolicyNameを確認してください。

1
Marcin