riak_core 节点重新平衡待定
riak_core node rebalance pending
我有一个具有 3 个物理节点的 riak_core 环。当我加入集群中的前两个节点时(通过 riak_admin 集群计划;risk_admin 集群提交),risk_admin 成员状态显示集群处于有效状态,但所有节点(100% ) 仍然坐在第一个节点上,两个节点都显示待处理的 50%。
我原以为集群会相对快速地重新平衡,但在我重新启动其中一个节点之前什么也没有发生。当节点出现时,member-status 显示 25% 的节点被移动到第二个节点。另一次重启导致节点之间完全重新平衡 50% - 50%。
我删除了两个节点上的 data/ring 目录,并尝试将所有 3 个可用节点加入一个新集群 - 同样的事情发生了,但这次待处理节点的拆分大约为 33%/33%/34 %(如预期)。只有在我反弹节点几次后,集群才重新平衡。
这是预期的行为吗?我期待提交集群计划的行为会触发物理节点之间的 vnode 重定位?
澄清 - 这是全新的 riak_core 应用程序,没有 任何 实现切换的自定义功能。
--
请注意,这也被发送到 riak-user mailing list
我想我明白了 - 这完全是我的错。原来我在 node_watcher
.
中用错了名字
ok = riak_core_node_watcher:service_up(<wrong_name>, self()),
这可能导致集群信息无法通过环正确传播。一旦我解决了这个问题——这会自动解决在加入集群的新节点上动态分配节点的问题。
非常有趣的是,vnode 是在重启时分配的。
我有一个具有 3 个物理节点的 riak_core 环。当我加入集群中的前两个节点时(通过 riak_admin 集群计划;risk_admin 集群提交),risk_admin 成员状态显示集群处于有效状态,但所有节点(100% ) 仍然坐在第一个节点上,两个节点都显示待处理的 50%。
我原以为集群会相对快速地重新平衡,但在我重新启动其中一个节点之前什么也没有发生。当节点出现时,member-status 显示 25% 的节点被移动到第二个节点。另一次重启导致节点之间完全重新平衡 50% - 50%。
我删除了两个节点上的 data/ring 目录,并尝试将所有 3 个可用节点加入一个新集群 - 同样的事情发生了,但这次待处理节点的拆分大约为 33%/33%/34 %(如预期)。只有在我反弹节点几次后,集群才重新平衡。
这是预期的行为吗?我期待提交集群计划的行为会触发物理节点之间的 vnode 重定位?
澄清 - 这是全新的 riak_core 应用程序,没有 任何 实现切换的自定义功能。
--
请注意,这也被发送到 riak-user mailing list
我想我明白了 - 这完全是我的错。原来我在 node_watcher
.
ok = riak_core_node_watcher:service_up(<wrong_name>, self()),
这可能导致集群信息无法通过环正确传播。一旦我解决了这个问题——这会自动解决在加入集群的新节点上动态分配节点的问题。
非常有趣的是,vnode 是在重启时分配的。