Terraform VM CPU and Memory Change Issue

Hi , I have setup a microcloud 3 node intra network system.
Each node has 256 gb ram and 4TB disc. I will create about 50-60 vms. I think using terraform will be good for managing my vms ip, cpu , memory, disc etc.

I got stucked for a problem. I can’t handle the situation when changing the CPU and Ram on terrafom because it says VM should be Stopped when changing. But after it changed Vm should be start again. Also only the vm should be stop and start which parameters changed other VMs should be stable.

here is my main.tf file

# VM Definitions
variable "vms" {
  default = [
    {
      name  = "testcloud-devops-vm2"
      ip    = "10.0.28.170"
      cpu   = 2
      ram   = "4GiB"
    },
    {
      name  = "testcloud-devops-vm3"
      ip    = "10.0.28.171"
      cpu   = 2
      ram   = "8GiB"
    },
    {
      name  = "testcloud-devops-vm4"
      ip    = "10.0.28.172"
      cpu   = 4
      ram   = "8GiB"
    },
    {
      name  = "testcloud-devops-vm5"
      ip    = "10.0.28.173"
      cpu   = 2
      ram   = "16GiB"
    },
    {
      name  = "testcloud-devops-vm6"
      ip    = "10.0.28.174"
      cpu   = 2
      ram   = "8GiB"
    }
  ]
}

locals {
  vm_map = { for vm in var.vms : vm.name => vm }
}

# Manage VMs
resource "lxd_instance" "vm" {
  for_each = local.vm_map

  name           = each.value.name
  remote         = "vm-20"
  type           = "virtual-machine"
  profiles       = ["default"]
  allow_restart  = true
  image          = "ubuntu-22.04-testcloud-image-v1.1"

  limits = {
    cpu    = each.value.cpu
    memory = each.value.ram
  }

  device {
    name = "root"
    type = "disk"
    properties = {
      path = "/"
      pool = "remote"
      size = "156GB"
    }
  }

  config = {
    "boot.autostart" = true
    "cloud-init.network-config" = <<EOF
network:
  version: 2
  ethernets:
    enp5s0:
      addresses:
        - ${each.value.ip}/24
      gateway4: 10.0.28.1
      nameservers:
        addresses:
          - 8.8.8.8
          - 8.8.4.4
      dhcp4: false
EOF
  }

  lifecycle {
    ignore_changes = [
      running,
      status,
      ipv4_address,
      ipv6_address,
      mac_address,
      interfaces,
      location,
    ]
  }
}

# Output all VM IPs after apply
output "vm_ips" {
  value = { for name, vm in lxd_instance.vm : name => vm.ipv4_address }
}

Is it possible to manage VMs source without interrupting other  and manual command or start stop VMs. 

Thanks.