couchdb入门指南2——配置(包含集群设置)

时间:2024-05-19 06:56:44

1前言

通过本文你将学习如何配置couchdb,其中包括集群的设置。

对于couchdb的配置我们可以在页面中进行设置:
couchdb入门指南2——配置(包含集群设置)
你也可以在本地etc文件中进行配置
couchdb入门指南2——配置(包含集群设置)
couchdb入门指南2——配置(包含集群设置)

2couchdb配置

couchdb入门指南2——配置(包含集群设置)
n表示集群的数目,一般不推荐大于3
q表示本地分块副本的数目,它会将数据库中的数据分块12份进行存储
当设置了集群模式,如果其他服务器被终止或关机,运行的节点数目只要大于等于1都是可行的,数据服务仍会进行。
couchdb入门指南2——配置(包含集群设置)
attachment_stream_buffer_size表示附件缓存的大小,在满足自己计算机读写能力的情况下,增大该值会带来性能的提升。
其它选项一般都是采用默认设置,更改可能会带来稳定性的隐患

3集群设置

3.1防火墙设置

在设置集群前你需要确认你准备分配的节点存储端口号可以相互之间通信;
确保每台服务器之间没有防火墙的设置

3.2集群设置向导

3.2.1你可以在页面中设置集群,当安装完成之后,访问 http://127.0.0.1:5984/_utils#setup地址会有设置集群的向导页面。
系统将要求您将CouchDB设置为单节点实例或设置集群。

当您单击“设置群集”时,系统会再次要求您提供管理员凭据,然后按IP地址添加节点。要获得更多节点,请在其他计算机上执行相同的安装过程。在添加节点之前,请确保指定希望添加到集群的节点总数。

在文件etc / vm.args中,将-name [email protected]更改为 -name [email protected]<this-nodes-ip-address| FQDN>定义了该节点,并且每个节点必须分开。对于群集设置,系统中的每个节点必须具有唯一的名称。也可以是有效的FQDN,不一定是IP。

在添加节点以形成集群之前,必须使它们侦听可从集群中其他节点访问的IP地址。每个节点执行一次:
curl -X PUT http://127.0.0.1:5984/_node/[email protected]/_config/admins/admin -d ‘“password”’
curl -X PUT http://127.0.0.1:5984/_node/[email protected]/_config/chttpd/bind_address -d ‘“0.0.0.0”’
现在,您可以在第一个节点的设置屏幕中输入其IP地址。并确保输入管理员用户名和密码。并在所有节点上使用相同的管理员用户名和密码。

添加所有节点后,单击“设置”,Fauxton将为您完成集群配置。

请参阅http://127.0.0.1:5984/_membership以获取集群中所有节点的列表。

现在,您的集群已准备就绪且可用。您可以将请求发送到任何一个节点并获取所有数据。

为了进行适当的生产设置,您现在需要在节点之前设置一个HTTP代理,以实现负载平衡。我们建议使用HAProxy。请参阅我们的HAProxy配置示例。您只需要调整IP地址和端口即可。

3.2.2同样你可以使用命令行来设置,步骤如下:
在CouchDB公开_cluster_setup端点。安装和初始设置后,我们可以设置集群。在每个节点上,我们需要运行以下命令来设置节点:
curl -X POST -H “Content-Type: application/json” http://admin:[email protected]:5984/_cluster_setup -d ‘{“action”: “enable_cluster”, “bind_address”:“0.0.0.0”, “username”: “admin”, “password”:“password”, “node_count”:“3”}’

之后,我们可以将所有节点连接在一起。选择一个节点作为“设置协调节点”以运行所有这些命令。这是一个“设置协调节点”,用于管理设置,并要求所有其他节点都能看到它,反之亦然。设置不适用于不可用的节点。设置完成后,“设置协调节点”的概念将消失。从那时起,集群将不再具有“设置协调节点”。要添加节点,请对要添加的每个节点运行以下命令:
curl -X POST -H “Content-Type: application/json” http://admin:[email protected]:5984/_cluster_setup -d ‘{“action”: “enable_cluster”, “bind_address”:“0.0.0.0”, “username”: “admin”, “password”:“password”, “port”: 15984, “node_count”: “3”, “remote_node”: “”, “remote_current_user”: “”, “remote_current_password”: “” }’
curl -X POST -H “Content-Type: application/json” http://admin:[email protected]:5984/_cluster_setup -d ‘{“action”: “add_node”, “host”:"", “port”: , “username”: “admin”, “password”:“password”}’

这将把两个节点连接在一起。对于要添加到集群中的每个节点,请继续运行上述命令。完成后,运行以下命令来完成设置并添加缺少的数据库:
curl -X POST -H “Content-Type: application/json” http://admin:[email protected]:5984/_cluster_setup -d ‘{“action”: “finish_cluster”}’
最后我们查看我们的集群设置
curl http://admin:[email protected]:5984/_membership
couchdb入门指南2——配置(包含集群设置)