2015-05-13 10:15:20 |
Bogdan Dobrelya |
description |
Current implementation of dynamic node removal with corosync-cmapctl is unsafe. There is a case when nodes marked in UI for removal, but deploy was run via CLI for all nodes (just for some reason). Given circumstances, pacemaker provider will issue nodes remove commands for CMAP on live nodes, running pacemaker with corosync, which is wrong and never should be allowed. Doing so, would end up with broken corosync cluster.
The solution is to check if the provider are about to delete its own node from CMAP and either to skip this action, or at least stop pacemaker and corosync locally prior to issue any remove actions to cmap tool |
Current implementation of dynamic node removal with corosync-cmapctl is unsafe. There is a case when nodes marked in UI for removal, but deploy was run via CLI for all nodes (just for some reason). Given circumstances, pacemaker provider will issue nodes remove commands for CMAP on live nodes, running pacemaker with corosync, which is wrong and never should be allowed. Doing so, would end up with broken corosync cluster.
The solution is to check if the provider are about to delete its own node from CMAP and either to skip this action, or at least stop pacemaker and corosync locally prior to issue any remove actions to cmap tool
The complete solution could be to prohibit (or warn and skip) in CLI the deploy action for nodes marked for removal |
|