【发布时间】:2015-03-16 06:46:33
【问题描述】:
我正在建立一个包含五个物理节点的 riak 集群。除了一个未通过 admin-riak 测试 外,其他四个都可以通过所有测试。几个 riak-admin 命令上的集群状态如下所示
do-admin@DBNode1:~$ sudo riak-admin member-status
=============== Membership ============================
Status Ring Pending Node
-------------------------------------------------------------------------------
valid 20.3% -- 'riak@dbnode1.do.ug'
valid 20.3% -- 'riak@dbnode2.do.ug'
valid 20.3% -- 'riak@dbnode3.do.ug'
valid 20.3% -- 'riak@dbnode4.do.ug'
valid 18.8% -- 'riak@dbnode5.do.ug'
-------------------------------------------------------------------------------
Valid:5 / Leaving:0 / Exiting:0 / Joining:0 / Down:0
dot-admin@DBNode1:~$ sudo riak-admin ring-status
================================== Claimant ===================================
Claimant: 'riak@dbnode2.do.ug'
Status: up
Ring Ready: true
============================== Ownership Handoff ==============================
No pending changes.
============================== Unreachable Nodes ==============================
All nodes are up and reachable
do-admin@DBNode1:~$ sudo riak-admin cluster status
---- Cluster Status ----
Ring ready: true
+------------------------+------+-------+-----+-------+
| node |status| avail |ring |pending|
+------------------------+------+-------+-----+-------+
| riak@dbnode1.do.ug |valid | up | 20.3| -- |
| (C) riak@dbnode2.do.ug |valid | up | 20.3| -- |
| riak@dbnode3.do.ug |valid | up | 20.3| -- |
| riak@dbnode4.do.ug |valid | up | 20.3| -- |
| riak@dbnode5.do.ug |valid | up | 18.8| -- |
+------------------------+------+-------+-----+-------+
Key: (C) = Claimant; availability marked with '!' is unexpected
do-admin@DBNode1:~$ curl -v http://dbnode1.dot.ug:8098/types/default/props
* Hostname was NOT found in DNS cache
* Trying 192.168.172.38...
* Connected to dbnode1.dot.ug (192.168.172.38) port 8098 (#0)
> GET /types/default/props HTTP/1.1
> User-Agent: curl/7.35.0
> Host: dbnode1.dotshule.ug:8098
> Accept: */*
>
< HTTP/1.1 200 OK
< Vary: Accept-Encoding
* Server MochiWeb/1.1 WebMachine/1.10.5 (jokes are better explained) is not blacklisted
< Server: MochiWeb/1.1 WebMachine/1.10.5 (jokes are better explained)
< Date: Sat, 17 Jan 2015 21:05:22 GMT
< Content-Type: application/json
< Content-Length: 428
<
* Connection #0 to host dbnode1.dotshule.ug left intact
{"props":{"allow_mult":false,"basic_quorum":false,"big_vclock":50,"chash_keyfun":{"mod":"riak_core_util","fun":"chash_std_keyfun"},"dvv_enabled":false,"dw":"quorum","last_write_wins":false,"linkfun":{"mod":"riak_kv_wm_link_walker","fun":"mapreduce_linkfun"},"n_val":3,"notfound_ok":true,"old_vclock":86400,"postcommit":[],"pr":0,"precommit":[],"pw":0,"r":"quorum","rw":"quorum","small_vclock":50,"w":"quorum","young_vclock":20}}
dot-admin@DBNode1:~$ sudo riak-admin test
Node 'riak@dbnode1.dot.ug ' is not reachable from 'riak_test@dbnode1.dot.ug'.
除了 **riak-admin 测试 ** 在所有其他节点上都是这样,所有节点上的所有测试结果都相同。对于节点三
dot-admin@DBNode3:~$ sudo riak-admin test
Successfully completed 1 read/write cycle to 'riak@dbnode3.dotshule.ug'
我怀疑这个集群是否准备好用于存储数据,因为在这个Basho website resource上,他们说你可以使用任何方法来测试节点是否准备好。如果一种方法成功而另一种方法失败,他们并没有说节点仍然很好。所以我被困在是否继续使用集群上。令人惊讶的是,该节点已成功执行所有操作以将其加入集群!我已尝试再次从头开始创建此节点,但没有帮助!
如果有任何帮助,我会很高兴。
【问题讨论】:
-
Riak 启动后配置文件中的节点名是否改变了? riak-admin test 命令应该通过 env.sh 脚本从配置文件中提取节点名称。当 member_status 显示
riak@dbnode1.do.ug时,它得到dbnode1.dot.ug这一事实似乎意味着它已被更改。 -
不,这是一个编辑错误,所有节点都是这个命名法
riak@dbnodeN.do.ug
标签: curl erlang cluster-computing riak