首页 > 数据库 >MongoDB 部署分片集群

MongoDB 部署分片集群

时间:2023-01-19 23:12:46浏览次数:40  
标签:true MongoDB 分片 192.168 集群 mongodb configsvr router data

部署配置服务器:configsvr

先生成.conf文件

mkdir -p /data/mongodb/configsvr
vim /data/mongodb/configsvr/configsvr.conf
 
systemLog:
  destination: file
  logAppend: true
  path: /data/mongodb/configsvr/configsvr.log
storage:
  dbPath: /data/mongodb/configsvr
  journal:
    enabled: true
processManagement:
  fork: true
net:
  port: 27018
  bindIp: 0.0.0.0
replication:
  replSetName: myconfig
sharding:
  clusterRole: configsvr

启动服务: mongod -f /data/mongodb/configsvr/configsvr.conf

配置副本集:

mongosh 127.0.0.1:27018
use admin
config = { _id:"myconfig", 
  configsvr: true,
  members:[
    {_id:0,host:"192.168.11.137:27018"},
{_id:1,host:"192.168.11.200:27018"} ] } rs.initiate(config) rs.status()

部署数据分片服务器:

副本名称:shard1

mkdir -p /data/mongodb/shardsvr1
vim /data/mongodb/shardsvr1/shardsvr.conf
 
systemLog:
  destination: file
  logAppend: true
  path: /data/mongodb/shardsvr1/shardsvr.log
storage:
  dbPath: /data/mongodb/shardsvr1/
  journal:
    enabled: true
processManagement:
  fork: true
net:
  port: 27017
  bindIp: 0.0.0.0
replication:
  replSetName: shard1
sharding:
  clusterRole: shardsvr

配置数据副本集:

mongosh 127.0.0.1:27017
use admin
config = { _id:"shard1", 
  members:[
    {_id:0,host:"192.168.11.137:27017"},
    {_id:1,host:"192.168.11.200:27017"}
  ]
}
rs.initiate(config)
 
rs.status()

 

部署Router (mongos)服务器:

mkdir -p /data/mongodb/router
vim /data/mongodb/router/router.conf
 
systemLog:
  destination: file
  logAppend: true
  path: /data/mongodb/router/router.log
processManagement:
  fork: true
net:
  port: 27019
  bindIp: 0.0.0.0
sharding:
  configDB: myconfig/192.168.11.137:27018,192.168.11.200:27018

启动命令:mongos -f /data/mongodb/router/router.conf

为了高可用,你可以在另一台机器,再启动一个router实例(router开启多个实例,是不需要组成副本集的)

mongosh 127.0.0.1:27019
use admin
sh.addShard("shard1/192.168.11.137:27017,192.168.11.200:27017")
sh.status()

sh.addShard 把副本集分片,添加到mongos当中

开启数据库分片功能:

sh.enableSharding("MyTestDB")

对集合进行分片初始化:

sh.shardCollection("MyTestDB.UserInfo" , {_id: 'hashed'})  //用哈希算法进行分片

.net连接router:

var client = new MongoClient("mongodb://router1IP:port,router2IP:port");

 

标签:true,MongoDB,分片,192.168,集群,mongodb,configsvr,router,data
From: https://www.cnblogs.com/IWings/p/17062105.html

相关文章

  • 基于docker搭建redis集群
    在docker已安装完毕的情况下,拉取redis镜像#这里拉取最新的redis镜像。当然也可以拉取指定版本的镜像dockerpullredis:5.0dockerpullredis创建redis容器#命令如下......
  • 通过命令管理ceph集群
      ceph集群维护  http://docs.ceph.org.cn/rados/ ceph集群配置、部署与运维   通过套接字进行单机管理  在ceph的节点上使用socket管理只针对ceph的节点......
  • 大数据必知必会:Zookeeper集群环境安装
    (大数据必知必会:Zookeeper集群环境安装)安装前准备集群环境下,至少需要3台服务器。IP地址主机名称10.0.0.5node110.0.0.6node210.0.0.7node3需要保......
  • redis分布式集群 -- Cluster
    Redis分布式系统的特点和限制多主多从,去中心化,从节点作为备用,复制主节点,不做读写操作,不提供服务;支持动态扩容节点;节点之间相互通信,相互选举,保证及时故障转移,不再依赖sen......
  • redis主从集群 -- Sentinel 哨兵
    Redis的主从集群是一个“一主多从”的读写分离集群。集群中的Master节点负责处理客户端的读写请求,而Slave节点仅能处理客户端的读请求。在采用单线程IO模型时,为了......
  • mongodb权限配置
    1、mongodb的mongo.conf文件启动参数(1)./mongod--port=27017--host=127.0.0.1--dbpath=db--logpath=27017.log--fork=truehttps://blog.csdn.net/GY325416/article/......
  • 探究BrainSplit-集群脑裂
    本篇文章将会以redis集群为例,分享在主从集群中会导致数据丢失的一个问题:BrainSplit-集群脑裂1.什么是集群脑裂所谓的脑裂,就是指在主从集群中,同时有两个主节点,它们都能......
  • 一台云主机怎么搭建Kafka集群?[基于Docker]
    前提:首先服务器内存,建议在4G以上。安装docker、docker-compose服务器执行curlcip.cc查看公网IPdocker-compose一键运行yml将下面的内容中的[yourserverip]—......
  • Windows Server上部署IoTdb 集群
    本文是参考官方的IoTDB集群版(1.0.0)的安装及启动教程:https://iotdb.apache.org/zh/UserGuide/V1.0.x/Cluster/Cluster-Setup.html,在WindowsServer2019上部署集群的实践......
  • Kafka快速入门(安装集群)
    安装部署1.集群规划hadoop102hadoop103hadoop104zkzkzkkafkakafkakafka2.集群部署0)官方下载地址:​​官网​​1)解压安装包tar-zxvfkafka_2.12-3.0.0.tgz-C/opt/module......