1

我不知道系统发生了什么,但是当我发出riak start它突然不再启动时。我得到这个输出。

如果我发出 riak 控制台,我不会收到任何 ping 响应。我不知道该怎么办,所以请告知如何使系统重新联机。

root@aliceubuntu:/home/alice# riak start
!!!!
!!!! WARNING: ulimit -n is 1024; 4096 is the recommended minimum.
!!!!
riak failed to start within 15 seconds,
see the output of 'riak console' for more information.
If you want to wait longer, set the environment variable
WAIT_FOR_ERLANG to the number of seconds to wait.
root@aliceubuntu:/home/alice# riak console
Node 'riak@192.168.1.218' not responding to pings.
config is OK
!!!!
!!!! WARNING: ulimit -n is 1024; 4096 is the recommended minimum.
!!!!
Exec: /usr/lib/riak/erts-5.9.1/bin/erlexec -boot /usr/lib/riak/releases/1.4.1/riak              -config /etc/riak/app.config             -pa /usr/lib/riak/lib/basho-patches             -args_file /etc/riak/vm.args -- console
Root: /usr/lib/riak
Erlang R15B01 (erts-5.9.1) [source] [64-bit] [smp:2:2] [async-threads:64] [kernel-poll:true]

/usr/lib/riak/lib/os_mon-2.2.9/priv/bin/memsup: Erlang has closed.
                                                                   Erlang has closed
    {"Kernel pid terminated",application_controller,"{application_start_failure,riak_core,{bad_return,{{riak_core_app,start,[normal,[]]},{'EXIT',{{function_clause,[{orddict,fetch,['riak@192.168.1.218',[]],[{file,[111,114,100,100,105,99,116,46,101,114,108]},{line,72}]},{riak_core_capability,renegotiate_capabilities,1,[{file,[115,114,99,47,114,105,97,107,95,99,111,114,101,95,99,97,112,97,98,105,108,105,116,121,46,101,114,108]},{line,416}]},{riak_core_capability,handle_call,3,[{file,[115,114,99,47,114,105,97,107,95,99,111,114,101,95,99,97,112,97,98,105,108,105,116,121,46,101,114,108]},{line,202}]},{gen_server,handle_msg,5,[{file,[103,101,110,95,115,101,114,118,101,114,46,101,114,108]},{line,588}]},{proc_lib,init_p_do_apply,3,[{file,[112,114,111,99,95,108,105,98,46,101,114,108]},{line,227}]}]},{gen_server,call,[riak_core_capability,{register,{riak_core,vnode_routing},{capability,[proxy,legacy],legacy,{riak_core,legacy_vnode_routing,[{true,legacy},{false,proxy}]}}},infinity]}}}}}}"}

Crash dump was written to: /var/log/riak/erl_crash.dump
Kernel pid terminated (application_controller) ({application_start_failure,riak_core,{bad_return,{{riak_core_app,start,[normal,[]]},{'EXIT',{{function_clause,[{orddict,fetch,['riak@192.168.1.218',[]
root@aliceubuntu:/home/alice#
4

2 回答 2

4

所以这里的整个过程就是

  • 出于某种原因,机器 riak 上的 IP 已更改
  • IP 被硬编码在 /etc/riak/vm.args 和 /etc/riak/app.config

复活的过程如下:

  • 编辑并设置上述文件中的新 IP
  • sudo rm -rf /var/lib/riak/ring/* # delete the riak ring
  • 重新启动机器或执行以下步骤:
  • riak-admin cluster force-replace riak@127.0.0.1 riak@"主机名 -i" # replace the name
  • riak start # start the node

这个话题也和这个问题有关:Riak node no longer working after changed IP address

于 2013-10-31T17:59:03.017 回答
0

启动新 riak 节点的简单方法是在 riak 容器 bash 上运行 riak 控制台。

1. If riak is a container in your docker then follow this procedure (MAC)
a. get riak image id <docker ps --all>
b. run bash command <docker exec -it "riak-container-id" bash>
c. run <riak console> this initiates a new riak node console
d. open another terminal and run <riak-shell>
e. run command<connect use your node created at step c> it will look like 
riak@10.1.0.216

你去吧。

于 2018-10-25T06:48:35.290 回答