MongoDB分片集群搭建

本文详细介绍了如何在MongoDB环境下搭建分片集群,包括配置副本集、config复制集、mongos节点,以及添加、管理分片和解决常见错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MongoDB分片集群搭建

如果不清楚什么是分片集群,可以看我上一篇发布的文章MongoDB分片集群详解

在这里插入图片描述

环境信息

以下是我在测试环境中虚拟机的配置,如果你的虚拟机ip不同可以对应的更改,但是要确保这三台虚拟机之间可以ping通

#操作系统:centos6.8
mongodb版本:mongodb-linux-x86_64-rhe162-4.0.6.tgz
#3台虚拟机
192.168.57.201、192.168.57.202、192.168.57.203
#2个分片复制集
分片集群1:(192.168.57.201:27017、192.168.57.202:27017、192.168.57.203:27017)
分片集群2:(192.168.57.201:27018、192.168.57.202:27018、192.168.57.203:27018)
#1个config复制集
config复制集:(192.168.57.201:28018、192.168.57.202:28018、192.168.57.203:28018)
1个mongos节点

config搭建复制集是为了保证config节点的高可用性,避免config挂了,mongos找不到数据存储的地方

搭建mongodb分片复制集

⚠️:如果配置中没有的的文件夹,需要手动创建,例如下面的/opt/mongo/data/db文件夹

  • shard1集群步骤

    • 添加复制集配置文件:mongo.conf,三台虚拟机都要加

      # 添加复制集配置文件
      fork=true
      dbpath=/opt/mongo/data/db
      port=27017
      bind_ip=0.0.0.0
      logpath=/opt/mongo/logs/mongodb.log
      logappend=true
      # 副本集名称
      replSet=goat_repl
      smallfiles=true
      # 分片集群必须要有的属性
      shardsvr=true
      
    • 添加复制集配置文件: mongo2.conf,同样三台虚拟机都要加

      # 添加复制集配置文件
      fork=true
      dbpath=/opt/mongo/data/db
      # 注意这里的port要改为27018
      port=27018
      bind_ip=0.0.0.0
      logpath=/opt/mongo/logs/mongodb.log
      logappend=true
      # 副本集2的名称要与副本集1名称不同
      replSet=goat_repl2
      smallfiles=true
      # 分片集群必须要有的属性
      shardsvr=true
      
    • 去到mongod所在目录下,启动两个副本集

      # mongo.conf替换为自己的配置文件路径
      ./mongod -f mongo.conf
      ./mongod -f mongo2.conf
      
    • 登陆副本集,添加初始化配置

      # 进入mongo客户端
      # 配置goat_repl副本集
      ./mongo -port 27017
      
      
      # 配置goat_repl2副本集
      ./mongo -port 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值