Actually disregard this latest patch - it is incorrect, as it silences kvmd startups as well, where we always want the warning (maybe we should even fail ?)
On Thu, Jan 21, 2016 at 7:00 PM, Viktor Bachraty <[email protected]> wrote: > EnsureKvmdOnNodes is called in both LUClusterSetParams, LUNodeSetParams > to make sure ganeti-kvmd is running/stopped according to the desired > configuration. This patch silences the KVM related warnings on non. -KVM > clusters. > > Signed-off-by: Viktor Bachraty <[email protected]> > --- > lib/cmdlib/common.py | 19 ++++++++++++------- > lib/cmdlib/node.py | 5 +++-- > 2 files changed, 15 insertions(+), 9 deletions(-) > > diff --git a/lib/cmdlib/common.py b/lib/cmdlib/common.py > index 2c44ac7..d2ccf9b 100644 > --- a/lib/cmdlib/common.py > +++ b/lib/cmdlib/common.py > @@ -1535,7 +1535,7 @@ def DetermineImageSize(lu, image, node_uuid): > return math.ceil(byte_size / 1024. / 1024.) > > > -def EnsureKvmdOnNodes(lu, feedback_fn, nodes=None): > +def EnsureKvmdOnNodes(lu, feedback_fn, nodes=None, silent=False): > """Ensure KVM daemon is running on nodes with KVM instances. > > If user shutdown is enabled in the cluster: > @@ -1558,6 +1558,9 @@ def EnsureKvmdOnNodes(lu, feedback_fn, nodes=None): > @param nodes: if supplied, it overrides the node uuids to start/stop; > this is used mainly for optimization > > + @type silent: bool > + @param silent: if we should issue a warning in case KVM daemon is > already in > + the desired state > """ > cluster = lu.cfg.GetClusterInfo() > > @@ -1585,16 +1588,18 @@ def EnsureKvmdOnNodes(lu, feedback_fn, nodes=None): > # Start KVM where necessary > if start_nodes: > results = lu.rpc.call_node_ensure_daemon(start_nodes, constants.KVMD, > True) > - for node_uuid in start_nodes: > - results[node_uuid].Warn("Failed to start KVM daemon in node '%s'" % > - node_uuid, feedback_fn) > + if not silent: > + for node_uuid in start_nodes: > + results[node_uuid].Warn("Failed to start KVM daemon in node '%s'" > % > + node_uuid, feedback_fn) > > # Stop KVM where necessary > if stop_nodes: > results = lu.rpc.call_node_ensure_daemon(stop_nodes, constants.KVMD, > False) > - for node_uuid in stop_nodes: > - results[node_uuid].Warn("Failed to stop KVM daemon in node '%s'" % > - node_uuid, feedback_fn) > + if not silent: > + for node_uuid in stop_nodes: > + results[node_uuid].Warn("Failed to stop KVM daemon in node '%s'" % > + node_uuid, feedback_fn) > > > def WarnAboutFailedSshUpdates(result, master_uuid, feedback_fn): > diff --git a/lib/cmdlib/node.py b/lib/cmdlib/node.py > index ddae675..4bb852b 100644 > --- a/lib/cmdlib/node.py > +++ b/lib/cmdlib/node.py > @@ -469,7 +469,8 @@ class LUNodeAdd(LogicalUnit): > else: > self.cfg.RemoveNodeFromCandidateCerts(self.new_node.uuid, > warn_fn=None) > > - EnsureKvmdOnNodes(self, feedback_fn, nodes=[self.new_node.uuid]) > + EnsureKvmdOnNodes(self, feedback_fn, nodes=[self.new_node.uuid], > + silent=True) > > # Update SSH setup of all nodes > if self.op.node_setup: > @@ -857,7 +858,7 @@ class LUNodeSetParams(LogicalUnit): > if self.old_role == self._ROLE_CANDIDATE: > RemoveNodeCertFromCandidateCerts(self.cfg, node.uuid) > > - EnsureKvmdOnNodes(self, feedback_fn, nodes=[node.uuid]) > + EnsureKvmdOnNodes(self, feedback_fn, nodes=[node.uuid], silent=True) > > # this will trigger job queue propagation or cleanup if the mc > # flag changed > -- > 2.7.0.rc3.207.g0ac5344 > >
