os-win/os_win/utils/compute
Lucian Petrut 6c6955f9f2 Limit Failover Cluster WMI provider usage
The Failover Cluster WMI provider is quite unreliable, especially
in recent Windows Server 2016 versions.

After failovers, some valid WMI queries fail with "Invalid Property"
errors, which really looks like a WMI provider bug. Event listeners
are affected as well, for which reason we're missing VM failover events.

This change refactors "clusterutils", switching to the underlying
C library.

The new failover event listener cannot provide the source of the
migrated instances, so we're keeping the old one as well for backwards
compatibility, for now.

The only other places in which we're still using WMI are the methods
that add or destroy VM cluster roles.

The reason is that we'd have to explicitly create the the cluster
resources and group, probably set some resource dependencies and
properties. For now, it's easier/safer to just stick with the WMI
method (which really shouldn't fail).

Also, destroying VM cluster groups using clusapi's DestroyClusterGroup
function behaves strange. VMs get recreated asyncronuously and put in
suspended state, breaking everything. We're avoiding it for now.

Closes-Bug: #1798069

Change-Id: I63d1aa3a6f9fb12d08478eb41fe973b1582b540c
2018-10-25 11:49:55 +03:00
..
__init__.py Refactors utils into specific folders 2015-09-21 13:11:23 +03:00
_clusapi_utils.py Limit Failover Cluster WMI provider usage 2018-10-25 11:49:55 +03:00
clusterutils.py Limit Failover Cluster WMI provider usage 2018-10-25 11:49:55 +03:00
livemigrationutils.py vmutils: Planned VMs separation 2017-07-03 11:14:53 +03:00
migrationutils.py vmutils: Planned VMs separation 2017-07-03 11:14:53 +03:00
rdpconsoleutils.py Creates baseutils module 2016-02-25 16:18:49 +02:00
vmutils.py Add wmi job terminate timeout cfg opt 2018-09-06 09:56:14 +03:00
vmutils10.py vmutils: Fixes setting disk QoS on Hyper-V 6.2 2017-09-14 15:25:24 +00:00