OpenNebula / one

The open source Cloud & Edge Computing Platform bringing real freedom to your Enterprise Cloud 🚀
http://opennebula.io
Apache License 2.0
1.19k stars 473 forks source link

VM_SNAPSHOT_FACTOR is being ignored when computing SYSTEM_DISK_SIZE for VM snapshots #6632

Open OpenNebulaSupport opened 6 days ago

OpenNebulaSupport commented 6 days ago

Description When creating a system snapshot of the VM, the SYSTEM_DISK_SIZE reported on the VM instance template is not being accounted for. The size should be MEMORY + DISKS*VM_SNAPSHOT_FACTOR and it looks like only MEMORY is being accounted for.

To Reproduce

root@PC04:~# grep VM_SNAPSHOT_FACTOR /var/log/one/oned.log
VM_SNAPSHOT_FACTOR=1
VM_SNAPSHOT_FACTOR="1"
root@PC04:~# onevm show -j 144 | jq .VM.TEMPLATE
{
  "AUTOMATIC_DS_REQUIREMENTS": "(\"CLUSTERS/ID\" @> 0)",
  "AUTOMATIC_NIC_REQUIREMENTS": "(\"CLUSTERS/ID\" @> 0)",
  "AUTOMATIC_REQUIREMENTS": "(CLUSTER_ID = 0) & !(PUBLIC_CLOUD = YES) & !(PIN_POLICY = PINNED)",
  "CONTEXT": {
    "DISK_ID": "1",
    "NETWORK": "YES",
    "SSH_PUBLIC_KEY": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDugXwwA/iDAQof3+vYnRA4VUpZxpqwRWXs8g0RENk5AS1ONt01NmxDg4mr7dSQBjx/w6JFDtydfLul/bj96uw8peuAQNP5k2lu2rWV9BBI5ysKMK4MlzEgwfSuztCWMHJZNF4q8JjR/0SF0eTOyumMWsBWS2JKakdyf/YZU+O5S6RcavpiX2bJ0yEaLYXpugLecp73hKoW3B4MpZLpBQwSjk+M668MTAb/SAFd6UALhMorXSTBRmSDByk4JL4OMvLOotyfcFF9va2CCOifqUa6LmOjZvuYi5p/JfT2x/aGOBIXibv9EtjkxkBoqNpkfITvWHm4Gx/91m/5eSYRtxYZ dann1@rocket\nssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDugXwwA/iDAQof3+vYnRA4VUpZxpqwRWXs8g0RENk5AS1ONt01NmxDg4mr7dSQBjx/w6JFDtydfLul/bj96uw8peuAQNP5k2lu2rWV9BBI5ysKMK4MlzEgwfSuztCWMHJZNF4q8JjR/0SF0eTOyumMWsBWS2JKakdyf/YZU+O5S6RcavpiX2bJ0yEaLYXpugLecp73hKoW3B4MpZLpBQwSjk+M668MTAb/SAFd6UALhMorXSTBRmSDByk4JL4OMvLOotyfcFF9va2CCOifqUa6LmOjZvuYi5p/JfT2x/aGOBIXibv9EtjkxkBoqNpkfITvWHm4Gx/91m/5eSYRtxYZ dann1@rocket\n",
    "TARGET": "hda"
  },
  "CPU": "1",
  "DISK": [
    {
      "ALLOW_ORPHANS": "FORMAT",
      "CLONE": "YES",
      "CLONE_TARGET": "SELF",
      "CLUSTER_ID": "0",
      "DATASTORE": "t54729",
      "DATASTORE_ID": "104",
      "DEV_PREFIX": "vd",
      "DISK_ID": "0",
      "DISK_SNAPSHOT_TOTAL_SIZE": "0",
      "DISK_TYPE": "FILE",
      "DRIVER": "qcow2",
      "FORMAT": "qcow2",
      "IMAGE": "ALT Linux p10",
      "IMAGE_ID": "23",
      "IMAGE_STATE": "2",
      "IMAGE_UNAME": "oneadmin",
      "LN_TARGET": "NONE",
      "ORIGINAL_SIZE": "1948",
      "READONLY": "NO",
      "SAVE": "NO",
      "SIZE": "20480",
      "SOURCE": "/var/lib/one//datastores/104/9d5f4f132c2542f9741959736e6e2bdd",
      "TARGET": "vda",
      "TM_MAD": "qcow2",
      "TYPE": "FILE"
    }
  ],
  "GRAPHICS": {
    "LISTEN": "0.0.0.0",
    "PORT": "6044",
    "TYPE": "VNC"
  },
  "MEMORY": "128",
  "MEMORY_RESIZE_MODE": "BALLOONING",
  "NIC_DEFAULT": {
    "MODEL": "virtio"
  },
  "OS": {
    "ARCH": "x86_64",
    "FIRMWARE": "",
    "FIRMWARE_SECURE": "YES",
    "UUID": "00456a69-1cef-4849-9304-274412cc1fed"
  },
  "SNAPSHOT": [
    {
      "HYPERVISOR_ID": "snap-0",
      "NAME": "snapshot-0",
      "SNAPSHOT_ID": "0",
      "SYSTEM_DISK_SIZE": "128",
      "TIME": "1719416573"
    },
    {
      "HYPERVISOR_ID": "snap-1",
      "NAME": "snapshot-1",
      "SNAPSHOT_ID": "1",
      "SYSTEM_DISK_SIZE": "128",
      "TIME": "1719417199"
    }
  ],
  "TEMPLATE_ID": "141",
  "TM_MAD_SYSTEM": "qcow2",
  "VMID": "144"
}

Expected behavior

SYSTEM_DISK_SIZE=MEMORY + DISKS*VM_SNAPSHOT_FACTOR

Details

Progress Status