use*_*345 7 rabbitmq rabbitmqctl
我想重现网络分区情况下与所有的三种模式- ignore,autoheal和pause_minority.我怎样才能做到这一点?我尝试停止(/ sbin/service reboot)群集中的一个节点,但这不会导致任何网络分区.我还尝试在一个节点上删除mnesia以在群集中创建不一致的mnesia,但这也没有帮助.
为了模拟网络分区,您可以使用以下方法阻止传出连接 iptables
假设您有 3 个节点:
node1 - ip : 10.10.0.1
node2 - ip : 10.10.0.2
node3 - ip : 10.10.0.3
Run Code Online (Sandbox Code Playgroud)
创建集群后,以节点2为例,
iptables -A OUTPUT -d 10.10.0.1 -j DROP
Run Code Online (Sandbox Code Playgroud)
通过这种方式,您阻止了连接,节点将进入网络分区。
然后
iptables -F
Run Code Online (Sandbox Code Playgroud)
以恢复网络。