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. 删除节点¶
在删除节点之前,请确保已移动所有节点 shards 远离那个节点。
删除 node2
从服务器 yyy.yyy.yyy.yyy
,首先需要知道表示该节点存在的文档的修订:
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"