No disk usage for Proxmox QEMU VMs

CMK version: 2.4.0p10
OS version: Docker

Error message:
N/A

Output of “cmk --debug -vvn dev”:

value store: loading from disk
Checkmk version 2.4.0p10
+ FETCHING DATA
  Source: SourceInfo(hostname='dev', ipaddress='192.168.0.47', ident='piggyback', fetcher_type=<FetcherType.PIGGYBACK: 4>, source_type=<SourceType.HOST: 1>)
[cpu_tracking] Start [7fd406a88ce0]
Read from cache: NoCache(path_template=/dev/null, max_age=MaxAge(checking=0.0, discovery=0.0, inventory=0.0), simulation=False, use_only_cache=False, file_cache_mode=1)
1 piggyback files for 'dev'.
Read piggyback file '/omd/sites/cmk/tmp/check_mk/piggyback/dev/foo.com'
0 piggyback files for '192.168.0.47'.
Get piggybacked data
[cpu_tracking] Stop [7fd406a88ce0 - Snapshot(process=posix.times_result(user=0.0, system=0.0, children_user=0.0, children_system=0.0, elapsed=0.010000000707805157))]
[cpu_tracking] Start [7fd406a37f50]
+ PARSE FETCHER RESULTS
<<<proxmox_ve_vm_info:cached(1757460066,90):sep(0)>>> / Transition NOOPParser -> HostSectionParser
<<<proxmox_ve_mem_usage:cached(1757460066,90):sep(0)>>> / Transition HostSectionParser -> HostSectionParser
<<<proxmox_ve_vm_backup_status:cached(1757460066,90):sep(0)>>> / Transition HostSectionParser -> HostSectionParser
<<<proxmox_ve_vm_snapshot_age:cached(1757460066,90):sep(0)>>> / Transition HostSectionParser -> HostSectionParser
<<<piggyback_source_summary:sep(0)>>> / Transition HostSectionParser -> HostSectionParser
<<<labels:sep(0)>>> / Transition HostSectionParser -> HostSectionParser
  HostKey(hostname='dev', source_type=<SourceType.HOST: 1>)  -> Add sections: ['labels', 'piggyback_source_summary', 'proxmox_ve_mem_usage', 'proxmox_ve_vm_backup_status', 'proxmox_ve_vm_info', 'proxmox_ve_vm_snapshot_age']
Received no piggyback data
Proxmox VE Memory Usage Usage: 84.28% - 13.5 GiB of 16.0 GiB (warn/crit at 80.00%/90.00% used)
Proxmox VE VM Info   VM ID: 103, Status: running, Type: qemu, Host: brain
Proxmox VE VM Snapshot age No snapshot found
[cpu_tracking] Stop [7fd406a37f50 - Snapshot(process=posix.times_result(user=0.0, system=0.0, children_user=0.0, children_system=0.0, elapsed=0.0))]
[piggyback] Successfully processed from source 'foo.com', execution time 0.0 sec | execution_time=0.010 user_time=0.000 system_time=0.000 children_user_time=0.000 children_system_time=0.000 cmk_time_agent=0.010

I don’t have the “Proxmox VE Disk Usage” in piggyback data of my VMs. I think this service is called proxmox_ve_disk_usage

Any idea why?

Thanks

The disk usage is only available for LXC containers. Qemu VMs don’t have this data.
You see this also inside the Proxmox GUI, like here in this screenshot.

2 Likes

Thanks that makes sense. I guess in such case it’s better to install the agent on each VM.

1 Like

I looked a bit more at it and I found a way to retrieve more info of QEMU VMs. If the VM has QEMU Guest Agent installed we could then use qm guest cmd <id> get-fsinfo.

Looks like this in my case:

[
   {
      "disk" : [
         {
            "bus" : 0,
            "bus-type" : "scsi",
            "pci-controller" : {
               "bus" : 0,
               "domain" : 0,
               "function" : 0,
               "slot" : 5
            },
            "target" : 0,
            "unit" : 0
         }
      ],
      "mountpoint" : "/boot",
      "name" : "sda1",
      "total-bytes" : 88422400,
      "total-bytes-privileged" : 95762432,
      "type" : "ext4",
      "used-bytes" : 26929152
   },
   {
      "disk" : [
         {
            "bus" : 0,
            "bus-type" : "scsi",
            "pci-controller" : {
               "bus" : 0,
               "domain" : 0,
               "function" : 0,
               "slot" : 5
            },
            "target" : 0,
            "unit" : 0
         }
      ],
      "mountpoint" : "/",
      "name" : "sda3",
      "total-bytes" : 63026442240,
      "total-bytes-privileged" : 66422804480,
      "type" : "ext4",
      "used-bytes" : 22340747264
   }
]

Do you think this could be added to piggyback data?

There is also get-osinfo that could be useful qm guest cmd 103 get-osinfo:

{
   "id" : "alpine",
   "kernel-release" : "6.12.41-0-virt",
   "kernel-version" : "#1-Alpine SMP PREEMPT_DYNAMIC 2025-08-07 06:15:54",
   "machine" : "x86_64",
   "name" : "Alpine Linux",
   "pretty-name" : "Alpine Linux v3.22",
   "version-id" : "3.22.1"
}

And info returns the supported commands if others are useful:

{
   "supported_commands" : [
      {
         "enabled" : true,
         "name" : "guest-network-get-route",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-load",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-cpustats",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-diskstats",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-ssh-remove-authorized-keys",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-ssh-add-authorized-keys",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-ssh-get-authorized-keys",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-osinfo",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-timezone",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-users",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-host-name",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-exec",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-exec-status",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-memory-block-info",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-set-memory-blocks",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-memory-blocks",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-set-user-password",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-fsinfo",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-set-vcpus",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-vcpus",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-network-get-interfaces",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-suspend-hybrid",
         "success-response" : false
      },
      {
         "enabled" : true,
         "name" : "guest-suspend-ram",
         "success-response" : false
      },
      {
         "enabled" : true,
         "name" : "guest-suspend-disk",
         "success-response" : false
      },
      {
         "enabled" : true,
         "name" : "guest-fstrim",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-fsfreeze-thaw",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-fsfreeze-freeze-list",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-fsfreeze-freeze",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-fsfreeze-status",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-file-flush",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-file-seek",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-file-write",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-file-read",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-file-close",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-file-open",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-shutdown",
         "success-response" : false
      },
      {
         "enabled" : true,
         "name" : "guest-info",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-set-time",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-get-time",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-ping",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-sync",
         "success-response" : true
      },
      {
         "enabled" : true,
         "name" : "guest-sync-delimited",
         "success-response" : true
      }
   ],
   "version" : "10.0.0"
}