Report failure to deactivate old master IP in exit code
authorKlaus Aehlig <aehlig@google.com>
Thu, 2 Apr 2015 09:46:03 +0000 (11:46 +0200)
committerKlaus Aehlig <aehlig@google.com>
Thu, 2 Apr 2015 11:05:35 +0000 (13:05 +0200)
If we failed to disable the old master IP, the master failover
did not fully succeed, hence that should be reported in the
exit code. Nevertheless, the best is to proceed, as it is
better to have working cluster, albeit only reachable via
the primary IP of the new master node (and not the cluster
master IP), than not have a cluster. Also note, that for
this reason master will start up even if it cannot set
the cluster master IP. So, while there, fix the warning
message as well.

Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Helga Velroyen <helgav@google.com>

lib/bootstrap.py

index e556521..2fe8196 100644 (file)
@@ -1059,10 +1059,11 @@ def MasterFailover(no_voting=False):
     utils.Retry(_check_ip, (1, 1.5, 5), total_timeout)
   except utils.RetryTimeout:
     warning = ("The master IP is still reachable after %s seconds,"
-               " continuing but activating the master on the current"
+               " continuing but activating the master IP on the current"
                " node will probably fail" % total_timeout)
     logging.warning("%s", warning)
     warnings.append(warning)
+    rcode = 1
 
   if jstore.CheckDrainFlag():
     logging.info("Undraining job queue")