You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

生产环境主节点Riak与Stanchion服务无法启动求助

Riak与Stanchion服务异常终止故障排查与解决

问题现象

生产环境中Riak与Stanchion服务突然停止,控制台日志报错如下:

2023-11-07 03:41:14.547 [info] <0.160.0>@riak_core_app:stop:114 Stopped application riak_core.
2023-11-07 03:41:14.547 [error] <0.164.0> Supervisor riak_core_vnode_sup had child undefined started with riak_core_vnode:start_link() at undefined exit with reason killed in context shutdown_error
2023-11-07 03:41:14.547 [error] <0.164.0> Supervisor riak_core_vnode_sup had child undefined started with riak_core_vnode:start_link() at undefined exit with reason bad argument in call to ets:lookup(ets_riak_kv_entropy, {index,{riak_kv,1233142006497949337234359077604363797834693083136}}) in riak_kv_entropy_info:update_index_info/2 line 161 in context shutdown_error
2023-11-07 03:41:14.547 [error] <0.164.0> Supervisor riak_core_vnode_sup had child undefined started with riak_core_vnode:start_link() at undefined exit with reason bad argument in call to ets:lookup(ets_riak_kv_entropy, {index,{riak_kv,1187470080331358621040493926581979953470445191168}}) in riak_kv_entropy_info:update_index_info/2 line 161 in context shutdown_error

已尝试重启服务、删除ring目录文件并重新加入集群,问题未解决。

故障分析

日志核心错误为ets:lookup(ets_riak_kv_entropy, ...)参数异常,说明Riak熵计算模块依赖的ETS表(ets_riak_kv_entropy)损坏或未正确初始化,导致vnode进程启动失败,最终触发riak_core应用终止。

解决方案

1. 彻底清理熵相关数据

  • 停止所有节点的Riak与Stanchion服务:
    sudo service riak stop
    sudo service stanchion stop
    
  • 删除每个节点的熵数据目录(默认路径为/var/lib/riak/entropy,需根据实际配置调整):
    rm -rf /var/lib/riak/entropy/*
    

2. 重置集群元数据缓存

  • 清理ring目录及riak_core元数据:
    rm -rf /var/lib/riak/ring/*
    rm -rf /var/lib/riak/data/riak_core/*
    

3. 重新初始化集群

  • 启动主节点并确认状态:
    sudo service riak start
    riak-admin status
    
  • 启动其他节点并加入集群:
    sudo service riak start
    riak-admin cluster join riak@<主节点IP或主机名>
    riak-admin cluster plan
    riak-admin cluster commit
    

4. 验证服务恢复

  • 检查集群节点状态:
    riak-admin member-status
    
  • 启动Stanchion服务并验证:
    sudo service stanchion start
    stanchion-admin status
    

额外排查项

  • 检查节点磁盘空间,避免因磁盘满导致数据写入失败:
    df -h
    
  • 查看系统日志(/var/log/messages或/var/log/syslog),排查是否存在内存不足、磁盘IO错误等底层系统异常。

内容的提问来源于stack exchange,提问作者SujayW

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 02:25:04