Управление узлами
Добавление узла
Перейдите к 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 покажет то же самое, поэтому добавлять узел нужно только один раз.
Удаление узла
Прежде чем удалить узел, убедитесь, что вы переместили все шарды с этого узла.
Чтобы удалить 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"
Copyright © 2025 The Apache Software Foundation — Licensed under the Apache License 2.0
https://docs.couchdb.org/en/3.5.1/cluster/nodes.html