Roy Golan has submitted this change and it was merged.
Change subject: core: VM Monitoring abstract fetching/analyzing/monitoring
......................................................................
core: VM Monitoring abstract fetching/analyzing/monitoring
this patch introduces the core changes the monitoring stack.
the work breaks down responsibilities and changes internal locking
characteristics:
* Data(VM/s) fetching:
classes: VmListFetcher.java, VmStatisticsFetcher.java
in-charge of fetching vms list/stats together with the db counter-part
and store for analysis on VdsManager
* State analysis:
classes: VmAnalyzer.java
invoked with 2 view of a VM, a stored on (dbVm) and a running
one(vdsmVm), analyzing what changed and marking with flags
for further actions down the line. currently some actions are
performed in-lined in the class - they should be moved out.
* Actions dispatching:
classes: VmsMonitoring.java
invoke all Vm analyzers in hand and iterate over their report
and take actions - fire VDSM commands (destroy,run/rerun,migrate), report complete
actions,
hand-over migration and save-to-db
* New Locking characteristics:
classes: VmManager.java
responsible to lock a Vm entity (relation by Vm Guid) for exclusive
dispatching a VDSM call OR a analysis && dispatching (i.e monitoring
cycle)
i.e. CreateVmVdsCommand will hold the lock, thus preventing only this
single VM from being monitored.
Bug-Url:
https://bugzilla.redhat.com/show_bug.cgi?id=1099068
Change-Id: I1adf0a95007140e89b080b5160ba93e340ee3ba6
Signed-off-by: Roy Golan <rgolan(a)redhat.com>
---
M
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsEventListener.java
M
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/IVdsEventListener.java
M
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VDSCommandType.java
M
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/vdscommands/VdsIdAndVdsVDSCommandParametersBase.java
M
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/HostMonitoring.java
M
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/ResourceManager.java
M
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsManager.java
A
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VmAnalyzer.java
A
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VmsListFetcher.java
M
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VmsMonitoring.java
A
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VmsStatisticsFetcher.java
A
backend/manager/modules/vdsbroker/src/test/java/org/ovirt/engine/core/vdsbroker/VmAnalyzerTest.java
A
backend/manager/modules/vdsbroker/src/test/java/org/ovirt/engine/core/vdsbroker/VmTestPairs.java
A
backend/manager/modules/vdsbroker/src/test/java/org/ovirt/engine/core/vdsbroker/VmsListFetcherTest.java
M
backend/manager/modules/vdsbroker/src/test/java/org/ovirt/engine/core/vdsbroker/VmsMonitoringTest.java
15 files changed, 2,373 insertions(+), 1,480 deletions(-)
Approvals:
Roy Golan: Verified
Omer Frenkel: Looks good to me, approved
--
To view, visit
http://gerrit.ovirt.org/28662
To unsubscribe, visit
http://gerrit.ovirt.org/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I1adf0a95007140e89b080b5160ba93e340ee3ba6
Gerrit-PatchSet: 22
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Roy Golan <rgolan(a)redhat.com>
Gerrit-Reviewer: Martin Peřina <mperina(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: Omer Frenkel <ofrenkel(a)redhat.com>
Gerrit-Reviewer: Oved Ourfali <oourfali(a)redhat.com>
Gerrit-Reviewer: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Roy Golan <rgolan(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server