• couchdb集群搭建


    最近在搭建couchdb集群时,遇到不少坑,如果你参照官方文档搭建集群时会不成功,至少我是这样的。在这里以ubuntu 16.04配置couchdb集群为例,写个总结,以备遗忘。

    环境安装

    其他环境的安装请参考windowsmac OS X.

    sudo apt-get --no-install-recommends -y install

    build-essential pkg-config erlang

    libicu-dev libmozjs185-dev libcurl4-openssl-dev

    下载 apache-couchdb-2.0.0.tar.gz

    下载apache-couchdb-2.0.0.tar.gz并解压,解压后的目录COUCHDB_HOME

    编译安装couchDB

    cd COUCHDB_HOME

    ./configure

    make release

    安装成功后的couchdb发布在COUCHDB_HOME/rel/couchdb.

    集群配置

    注意:所有的集群节点设置为相同的用户名和密码。 

    修改配置:COUCHDB_HOME/rel/couchdb/etc/local.ini为:

    [chttpd]

    bind_address = 0.0.0.0

    [admins]

    admin = password # 用户名和密码

    修改配置:COUCHDB_HOME/rel/couchdb/etc/vm.agrs,假设本节点的ip为192.168.199.236,则修改为:

    -name couchdb@192.168.199.236

    修改配置:COUCHDB_HOME/rel/couchdb/releases/2.0.0/sys.config为:

    1. [
    2. {lager, [
    3. {error_logger_hwm, 1000},
    4. {error_logger_redirect, true},
    5. {handlers, [
    6. {lager_console_backend, [debug, {
    7. lager_default_formatter,
    8. [
    9. date, " ", time,
    10. " [", severity, "] ",
    11. node, " ", pid, " ",
    12. message,
    13. " "
    14. ]
    15. }]}
    16. ]},
    17. {inet_dist_listen_min, 9100},
    18. {inet_dist_listen_max, 9200}
    19. ]}
    20. ].

    启动couchdb

    1. COUCHDB_HOME/rel/couchdb/bin/couchdb

    访问http://192.168.199.236:5984/,如返回:

    1. {
    2. couchdb: "Welcome",
    3. version: "2.0.0",
    4. vendor: {
    5. name: "The Apache Software Foundation"
    6. }
    7. }

    则表示启动成功。

    集群节点添加

    如果添加192.168.199.189,在192.168.199.189上按照上述步骤走一遍,将ip更换为192.168.199.189即可。

    在192.168.199.236节点上添加192.168.199.189节点:

    1. curl -X POST -H "Content-Type: application/json" http://admin:password@127.0.0.1:5984/_cluster_setup -d '{"action": "enable_cluster", "bind_address":"0.0.0.0", "username": "admin", "password":"password", "port": 5984, "remote_node": "192.168.199.189", "remote_current_user": "admin", "remote_current_password": "password" }'
    2. curl -X POST -H "Content-Type: application/json" http://admin:password@127.0.0.1:5984/_cluster_setup -d '{"action": "add_node", "host":"192.168.199.189", "port": "5984", "username": "admin", "password":"password"}'
    3. curl -X POST -H "Content-Type: application/json" http://admin:password@127.0.0.1:5984/_cluster_setup -d '{"action": "finish_cluster"}'

    访问http://127.0.0.1:5984/_membership时能看到如下返回的数据:

    1. {
    2. all_nodes: [
    3. "couchdb@192.168.199.189",
    4. "couchdb@192.168.199.236"
    5. ],
    6. cluster_nodes: [
    7. "couchdb@192.168.199.189",
    8. "couchdb@192.168.199.236"
    9. ]
    10. }

    这表示集群搭建成功。或如果在192.168.199.236上的couchdb中添加一个数据库表,如果能在192.168.199.189上的couchdb中看到,表示安装成功。

    https://www.zybuluo.com/contribute/note/663385

  • 相关阅读:
    最简单方式理解为什么MongoDB索引选择B-树,而 Mysql 选择B+树
    单点登录基本原理
    我是这样理解HTTP和HTTPS区别的
    数据库mvvc的简单理解
    mysql数据库一些知识点
    一条SQL完成跨数据库实例Join查询
    api接口安全性设计
    Redis-Scan命令
    分布式缓存的基本原理
    记录主从延迟造成数据查询不准确的问题
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13313609.html
Copyright © 2020-2023  润新知