4.2. 节点管理¶
4.2.1. 添加节点¶
访问 http://server1:5984/_membership
查看节点名称以及它连接到的所有节点和已知节点。
curl -X GET "http://xxx.xxx.xxx.xxx:5984/_membership" --user admin-user
{
"all_nodes":[
"node1@xxx.xxx.xxx.xxx"],
"cluster_nodes":[
"node1@xxx.xxx.xxx.xxx"]
}
all_nodes
是此节点已知的全部节点。cluster_nodes
是连接到此节点的节点。
要添加节点,只需执行以下操作
curl -X PUT "http://xxx.xxx.xxx.xxx/_node/_local/_nodes/node2@yyy.yyy.yyy.yyy" -d {}
现在再次查看 http://server1:5984/_membership
。
{
"all_nodes":[
"node1@xxx.xxx.xxx.xxx",
"node2@yyy.yyy.yyy.yyy"
],
"cluster_nodes":[
"node1@xxx.xxx.xxx.xxx",
"node2@yyy.yyy.yyy.yyy"
]
}
您现在拥有一个 2 节点集群 :)
http://yyy.yyy.yyy.yyy:5984/_membership
将显示相同内容,因此您只需添加一次节点即可。
4.2.2. 删除节点¶
在删除节点之前,请确保已将所有 分片 从该节点移走。
要从服务器 yyy.yyy.yyy.yyy
中删除 node2
,您需要先了解代表该节点存在性的文档的修订版本。
curl "http://xxx.xxx.xxx.xxx/_node/_local/_nodes/node2@yyy.yyy.yyy.yyy"
{"_id":"node2@yyy.yyy.yyy.yyy","_rev":"1-967a00dff5e02add41820138abb3284d"}
有了该 _rev
,您现在可以继续删除节点文档。
curl -X DELETE "http://xxx.xxx.xxx.xxx/_node/_local/_nodes/node2@yyy.yyy.yyy.yyy?rev=1-967a00dff5e02add41820138abb3284d"