Merge "Improve removal of additional ceph-mon on USM rollback"

This commit is contained in:
Zuul 2024-09-10 13:10:09 +00:00 committed by Gerrit Code Review
commit 4bea98b405

View File

@ -8,7 +8,6 @@ import filecmp
import glob
import os
import shutil
import socket
import subprocess
import software.constants as constants
@ -203,23 +202,24 @@ class RemoveCephMonHook(BaseHook):
"""
Remove additional ceph-mon added for each controller
"""
PMON_FILE = "/ostree/1/etc/pmon.d/ceph-fixed-mon.conf"
PMON_FILE = "/etc/pmon.d/ceph-fixed-mon.conf"
def run(self):
system_type = utils.get_platform_conf("system_type")
system_mode = utils.get_platform_conf("system_mode")
nodetype = utils.get_platform_conf("nodetype")
hostname = socket.gethostname()
# additional monitors were added only for AIO-DX
if (system_type == constants.SYSTEM_TYPE_ALL_IN_ONE and
system_mode != constants.SYSTEM_MODE_SIMPLEX and
nodetype == constants.CONTROLLER):
cmd = ["ceph", "mon", "rm", hostname]
cmd_remove_mon_controller_0 = ["timeout", "30", "ceph", "mon", "rm", "controller-0"]
cmd_remove_mon_controller_1 = ["timeout", "30", "ceph", "mon", "rm", "controller-1"]
try:
subprocess.check_call(cmd)
LOG.info("Removed mon.%s from ceph cluster." % hostname)
subprocess.check_call(cmd_remove_mon_controller_0)
subprocess.check_call(cmd_remove_mon_controller_1)
LOG.info("Removed mon.controller-0 and mon.controller-1 from ceph cluster.")
except subprocess.CalledProcessError as e:
LOG.exception("Failure removing mon.%s from ceph cluster: %s" % (hostname, str(e)))
LOG.exception("Failure removing mon.controller-0 and mon.controller-1 from ceph cluster: %s" % str(e))
raise
os.unlink(self.PMON_FILE)
LOG.info("Removed %s from pmon." % self.PMON_FILE)