Skip to content

Regression: remove powered-off node from cluster #2064

Description

@zzhou1
adm@tw-6:~> sudo poweroff

adm@tw-3:~> sudo -E crm -F cluster remove tw-6
INFO: Removing node tw-6 from cluster
ERROR: '4'
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/crmsh/bootstrap.py", line 2501, in bootstrap_remove
    utils.check_all_nodes_reachable("removing a node from the cluster")
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/crmsh/utils.py", line 2559, in check_all_nodes_reachable
    raise DeadNodeError(msg, summary)
crmsh.utils.DeadNodeError: There are offline nodes also unreachable: tw-6.
Please bring them online before removing a node from the cluster.
Or use `crm cluster remove <offline_node> --force` to remove the offline node.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/sbin/crm", line 53, in <module>
    rc = main.run()
  File "/usr/lib/python3.13/site-packages/crmsh/main.py", line 375, in run
    return main_input_loop(context, user_args)
  File "/usr/lib/python3.13/site-packages/crmsh/main.py", line 246, in main_input_loop
    rc = handle_noninteractive_use(context, user_args)
  File "/usr/lib/python3.13/site-packages/crmsh/main.py", line 203, in handle_noninteractive_use
    if context.run(' '.join(l)):
       ~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/crmsh/ui_context.py", line 93, in run
    rv = self.execute_command() is not False
         ~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/crmsh/ui_context.py", line 276, in execute_command
    rv = self.command_info.function(*arglist)
  File "/usr/lib/python3.13/site-packages/crmsh/ui_cluster.py", line 594, in do_remove
    bootstrap.bootstrap_remove(rm_context)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/crmsh/bootstrap.py", line 2504, in bootstrap_remove
    remove_node_from_cluster(cluster_node, dead_node=True)
    ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/crmsh/bootstrap.py", line 2188, in remove_node_from_cluster
    node_ip = get_cluster_node_ip(node)
  File "/usr/lib/python3.13/site-packages/crmsh/bootstrap.py", line 2135, in get_cluster_node_ip
    ip_list = utils.get_iplist_from_name(node)
  File "/usr/lib/python3.13/site-packages/crmsh/utils.py", line 2138, in get_iplist_from_name
    return nodeinfo[nodeid]
           ~~~~~~~~^^^^^^^^
KeyError: '4'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions