• mongodb cluster


    假设三台机器,ip分别为192.168.1.10,192.168.1.11,192.168.1.12,分别在每台电脑上下载并解压mongodb,关闭防火墙或者开放防火墙端口

    一、安装shard

    配置文件,假设地址为/etc/mongod.conf,配置如下

    processManagement:
      fork: true
      pidFilePath: /var/run/mongodb/shard/mongod.pid
    sharding:
      clusterRole: shardsvr
    
    
    replication:
      replSetName: shard
      oplogSizeMB: 100
    net:
      port: 27017
      bindIp: 192.168.1.<ip最后一段>
    #storage:
      dbPath: /home/mongodb/data/db
      journal:
        enabled: true
    systemLog:
    
      destination: file
      path: /home/mongodb/data/shard.log
    
      logAppend: true

    三台机器,除了ip,其他配置都一样,注意目录若不存在,则需要先mkdir

    然后分别运行一个mongodb实例

    mongod --config /etc/mongod.conf

    二、安装config

    三台机器的配置改为如下

    processManagement:
      fork: true
      pidFilePath: /var/run/mongodb/config/mongod.pid
    
    sharding:
    
      clusterRole: configsvr
    
    replication:
    
      replSetName: config
    
    net:
    
      port: 28017
      port: 29017

    #storage:
      dbPath: /home/mongodb/data/config
      journal:
        enabled: true
    systemLog:
    
      destination: file
      path: /home/mongodb/config/shard.log
    
      logAppend: true
     

    然后再分别运行mongodb实例

    三、配置mongos

    三天机器的配置改为如下

    processManagement:
      fork: true
      pidFilePath: /var/run/mongodb/mongos/mongod.pid
    sharding:
      configDB: config/192.168.1.10:28017,192.168.1.11:28017,192.168.1.13:28017
    net:
      port: 29017
      bindIp: 192.168.1.<?>
    systemLog:
      destination: file
      path: /home/mongodb/data/mongos.log
      logAppend: true

    然后每台机器使用mongos运行实例

    mongos --config /etc/mongod.conf

    四、连接cluster

    随便连接一个节点,并进入admin数据库

    mongo 192.168.1.11:29017/admin

    查看当前数据库

    db

    添加分片

    db.runCommand({addShard: "shard/192.168.1.10:27017,192.168.1.11:27017,192.168.1.12:27017",name:"s1",maxSize:40960});

    name为replica set 的唯一名称,maxSize为每个节点最大存储(MB)

    此时可查看刚才添加的分片

    db.runCommand({listShards: 1})
  • 相关阅读:
    ssh反向代理+正向代理
    用 Java 撸了一款 SSH 客户端,真香啊!
    python清洗字符串
    欢迎来到 ZooKeeper 动物世界
    开篇:免费开源的趣讲 ZooKeeper 教程(连载)
    记忆中的像素块褪色了吗?用开源的体素编辑器重新做个 3D 的吧!
    不用再等后端的接口啦!这个开源项目花 2 分钟就能模拟出后端接口
    区块链技术在国外基础教育中的应用
    区块链在教育中的应用
    《敏捷开发培训考试》考试题目及答案
  • 原文地址:https://www.cnblogs.com/sjjsxl/p/6566491.html
Copyright © 2020-2023  润新知