Cluster verify: don't assume we're verifying all nodes/instances
authorAdeodato Simo <dato@google.com>
Tue, 3 May 2011 14:22:09 +0000 (15:22 +0100)
committerGuido Trotter <ultrotter@google.com>
Fri, 20 May 2011 10:37:05 +0000 (10:37 +0000)
commitcf692cd05e00300fdee186c50237d28e39133c9c
treef8ff83d56f82cfbab73852b98f454ee31af47c32
parentc711d09e689565b3b7b1d25fd2f5b61a8cddb6d9
Cluster verify: don't assume we're verifying all nodes/instances

This commit fixes a few initial simple cases in which it was assumed that
we're always working over the whole cluster. With this change, we
differentiate between "nodes/instances to verify" and "checks that need
cluster-wide information".

In particular:

  - retrieve hypervisor parameters always from all instances
  - always specify full node list in NV_NODELIST
  - retrieve OOB path from all nodes
  - verify DRBD devices against the full set of instances (this ensures
    minors get properly verified even if an instance is split between groups)
  - look up node groups against the set of all nodes (to avoid tracebacks
    in case instances are split between groups)
  - determine whether running instances are unknown by checking against the
    full list of instances

Behavior in all cases stays the same if still running over the whole
cluster.

Signed-off-by: Adeodato Simo <dato@google.com>
Signed-off-by: Guido Trotter <ultrotter@google.com>
Reviewed-by: Iustin Pop <iustin@google.com>
lib/cmdlib.py