如何在CouchDB中设置节点区域

如何在CouchDB中设置节点区域,couchdb,cluster-computing,Couchdb,Cluster Computing,根据,为了将节点放入区域(类似于BigCoach),我们需要修改\u节点数据库,使用http://127.0.0.1:5986/_nodesendpoint,如果我理解清楚的话。我没有找到任何关于如何修改现有数据库属性的提示。有什么办法吗?可能我误解了。我必须更新\u节点数据库中的每个节点文档,因此我可以在每个文档上使用PUT,添加区域“:“value”属性。每个节点必须用区域属性标记,并更新:5986/\u节点数据库中的节点文档,添加表单的键值对: “区域”:“{zone name}” 首先,

根据,为了将节点放入区域(类似于BigCoach),我们需要修改
\u节点
数据库,使用
http://127.0.0.1:5986/_nodes
endpoint,如果我理解清楚的话。我没有找到任何关于如何修改现有数据库属性的提示。有什么办法吗?

可能我误解了。我必须更新
\u节点
数据库中的每个
节点
文档,因此我可以在每个文档上使用PUT,添加
区域“:“value”
属性。

每个节点必须用
区域
属性标记,并更新
:5986/\u节点
数据库中的节点文档,添加表单的键值对:

“区域”:“{zone name}”

首先,从集群成员资格获取节点信息

$ curl -s -X GET "http://localhost:5984/_membership" --user <admin-user>
最后,在每个节点的local.ini配置中,定义一致的集群范围设置,如:

[群集]位置=:2,:1

CouchDB将确保一个碎片的两个副本将托管在区域属性设置为
metro-dc-a
的节点上,一个副本将托管在区域属性设置为
metro-dc-b
的新节点上


应该与修改CouchDB中的任何文档一样,使用PUT,对吗?如中所述,PUT动词用于创建新数据库。POST用于向其中添加新文档。PUT还用于添加新文档和更新现有文档。是的,文档,而不是DBs…那么您的问题是什么?
$ curl -X GET http://localhost:5986/_nodes/couchdb@192.168.1.10 --user <admin-user>
$ curl -X PUT http://localhost:5986/_nodes/couchdb@192.168.1.10 --user <admin-user> -d '{
  "_id": "couchdb@192.168.1.10",
  "_rev": "1-967a00dff5e02add41819138abb3284d",
  "zone": "metro-dc-a"
}'