Why the VCenter monitor is so slow ?
We shutdown the machine through the guest OS and opennebula recognize it only after 2/3 minutes.
How can we do it faster ?
Or the better idea is - how can we send a custom command to opennebula to update it self.
monitoring time depends on different factors such as the number of clusters and VMs per resource pool being monitored and there’s plenty of information that is gathered through vCenter’s API and its subsystems like the performance manager for network and disk operations that are not quick operations per se.
For upcoming releases, we’re trying to improve monitoring times reducing API calls and using different approaches to get the monitoring info in a more efficient way though vCenter’s API, of course, have its limits.
In /etc/one/oned.conf you have the IM driver section where you can check how many clusters/hosts are monitored at the same time. Default is 15 so if you have more clusters than that you could increase that value, but currently and as far as I know there’s no more configuration parameters that I can suggest you to change.
Hello mcabreizo and thank you for your reply.
Honestly we cant wait to the next release.
We have a very urgent situation which I must to know if the VM is poweredOn or poweredOff,
We just want to send a simple API request from the JS to the API which tell the backend to monitor/poll one specific VM.
We started to digging the code (ruby) and we saw you have a function called “get_resource_monitoring” - it just returning the state without updating the DB.
We found a function in the VMM called “poll” - yet couldn’t guess if this function update the state of the machine.
I need help from you guys, just to update the machine state according to the VCenter,
it must be simple …
Guys I have the following specs:
- 1 Cluster
- 1 ESXi
- 100 VM’s
I set the configuration as the following:
- MANAGER_TIMER = 5
- MONITORING_INTERVAL = 2
- MONITORING_THREADS = 50
It takes 30 seconds to monitor 100 VM’s, it’s crazy, someone has solution ?