centos7下mongodb分片配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7下mongodb分片配置相关的知识,希望对你有一定的参考价值。

  1. 服务器架构:
    序号                角色                ip地址                备注
    1                   服务器            192.168.8.81     (config  server)
    2                   路由                192.168.8.82     (mongos)
    3                   分片节点         192.168.8.83     (shard)
    4                   分片节点         192.168.8.84     (shard)
  2. 服务器配置(192.168.8.81):
    a. 修改配置文件:
    vim /etc/mongod.conf
    fork = true
    pidfilepath = /var/run/mongodb/mongod.pid
    logpath = /var/log/mongodb/mongod.log
    unixSocketPrefix = /var/run/mongodb
    dbpath = /var/lib/mongodb
    port=27017
    configsvr=true

    b. 启动服务:

    systemctl  start  mongod
  3. 路由配置(192.168.8.82):
    a. 修改配置文件:
    vim /etc /mongod.conf
    fork = true
    pidfilepath = /var/run/mongodb/mongod.pid
    logpath = /var/log/mongodb/mongod.log
    unixSocketPrefix = /var/run/mongodb
    #dbpath = /var/lib/mongodb  (注释掉数据库)
    port=27017
    configdb=192.168.8.81:27017

    b. 删除数据库中的文件:

    rm  -rf  /var/lib/mongodb/*

    c. 启动服务:

    mongos  -f  /etc/mongod.conf 
  4. 分片机配置(192.168.8.83/84):
    a. 修改配置文件:
    vim /etc/mongod.conf
    fork = true
    pidfilepath = /var/run/mongodb/mongod.pid
    logpath = /var/log/mongodb/mongod.log
    unixSocketPrefix = /var/run/mongodb
    dbpath = /var/lib/mongodb

    b. 启动服务:

    systemctl  start  mongod
  5. 测试:
    a. 路由机(192.168.8.82):
    a-1. 进入终端:
    mongo

    技术分享图片
    a-2. 添加分片机:

    sh.addShard("192.168.8.83:27017")
    sh.addShard("192.168.8.84:27017")

    技术分享图片
    a-3. 查看分片机状态:

    sh.status()

    技术分享图片
    a-4. 添加分片数据库:

    sh.enableSharding("testdb")

    技术分享图片
    a-5. 添加索引:

    sh.shardCollection("testdb.user",{name:1,age:1})

    技术分享图片
    a-6. 添加测试数据:

    for  (i = 1;i < 100000; i++) 
        {
                db.user.insert({name:‘user‘+i,age:(i%150),addr:‘#‘+i}
        }

    b. 分片机(192.168.8.83/84):
    b-1. 进入终端:

    mongo

    技术分享图片
    b-2. 查看经过分片处理的数据:

    use  testdb
    db.user.find()

    技术分享图片

以上是关于centos7下mongodb分片配置的主要内容,如果未能解决你的问题,请参考以下文章

基于CentOS7的mongodb分片群集

centos7部署Mongodb复制集结合分片(超详细)

在CentOS7上部署MongoDB分片群集

centos7 mongodb4.4分片集群部署

solr分布式索引实战分片配置读取:工具类configUtil.java,读取配置代码片段,配置实例

使用ansible一键部署MongoDB分片集群