我如何返回到 riak-shell 的 运行 实例?

How do I get back to the running instance of riak-shell?

当 ssh 失去与服务器的连接时,我处于 ​​riak-shell。重新连接后,我执行以下操作:

sudo riak-shell

并得到:

An instance of riak-shell is already running

因此,我重新启动了有问题的 riak 节点。这似乎并没有解决问题。我没有看到任何使用 ps -aux 来杀死的东西。根据文档,一次只能有一个实例 运行。这是有道理的,但是当我从另一个节点 运行 riak-shell 并尝试连接到任何节点时,我现在得到以下信息:

Error: invalid function call : connection_EXT:connect ["riak@<<<ip_address_elided>>>"]
You can connect to a specific node (whether in your riak_shell.config
or not) by typing 'connect "dev1@127.0.0.1";' substituting your
node name for dev1.

You may need to change the Erlang cookie to do this.

See also the 'reconnect' command.
Unhandled message received is {#Ref<0.0.0.135>,disconnected}

riak-shell(3)>

我在这个过程中没有更改 cookie,cookie 看起来是一样的(至少在 /etc/riak/riak_shell.config)。 (我正在 运行在 AWS 上安装 Riak TS AMI。)

riak-shell 运行s 在它自己的 Erlang VM 中——完全独立于 riak 节点

(您不需要从您的节点所在的机器 运行 riak-shell - 它使用正常的 riak-erlang-clientriak 通信)

如果您在 Linux 上执行 ps aux | grep riak_shell_app,它将为您提供杀死该实例所需的进程号: 08:30:45:~ $ ps aux | grep riak_shell_app vagrant 4671 0.0 0.3 493260 34884 pts/4 Sl+ Aug17 0:03 /home/vagrant/riak_ee/dev/dev1/erts-5.10.3/bin/beam.smp -- -root /home/vagrant/riak_ee/dev/dev1 -progname erl -- -home /home/vagrant -- -boot /home/vagrant/riak_ee/dev/dev1/releases/2.1.1/start_clean -run riak_shell_app boot debug_off /home/vagrant/riak_ee/dev/dev1/bin/../log/riak_shell/riak_shell -noshell -config /home/vagrant/riak_ee/dev/dev1/bin/../etc/riak

我写了很多,让我知道你的进展情况: https://github.com/basho/riak_shell/graphs/contributors