4.2. 节点管理

4.2.1. 添加节点

访问 http://server1:5984/_membership 查看节点名称以及它连接到的所有节点和已知节点。

curl -X GET "http://xxx.xxx.xxx.xxx:5984/_membership" --user admin-user
{
    "all_nodes":[
        "[email protected]"],
    "cluster_nodes":[
        "[email protected]"]
}
  • all_nodes 是此节点已知的全部节点。

  • cluster_nodes 是连接到此节点的节点。

要添加节点,只需执行以下操作

curl -X PUT "http://xxx.xxx.xxx.xxx/_node/_local/_nodes/[email protected]" -d {}

现在再次查看 http://server1:5984/_membership

{
    "all_nodes":[
        "[email protected]",
        "[email protected]"
    ],
    "cluster_nodes":[
        "[email protected]",
        "[email protected]"
    ]
}

您现在拥有一个 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/[email protected]"
{"_id":"[email protected]","_rev":"1-967a00dff5e02add41820138abb3284d"}

有了该 _rev,您现在可以继续删除节点文档。

curl -X DELETE "http://xxx.xxx.xxx.xxx/_node/_local/_nodes/[email protected]?rev=1-967a00dff5e02add41820138abb3284d"