Mongo 集群部署

1. 集群架构 #

  • mongos:提供路由数据库集群请求的入口,所有的请求都通过 mongos 进行协调,不需要在应用程序添加一个路由选择器,mongos 自己就是一个请求分发中心,它负责把对应的数据请求转发到对应的 shard 服务器上。在生产环境通常有多 mongos 作为请求的入口,防止其中一个挂掉所有的 mongodb 请求都没有办法操作。
  • config server:为配置服务器,存储所有数据库元信息(路由、分片)的配置。mongos 本身没有物理存储分片服务器和数据路由信息,只是缓存在内存里,配置服务器则实际存储这些数据。mongos 第一次启动或者关掉重启就会从 config server 加载配置信息,以后如果配置服务器信息变化会通知到所有的 mongos 更新自己的状态,这样 mongos 就能继续准确路由。在生产环境通常有多个 config server 配置服务器,因为它存储了分片路由的元数据,防止数据丢失!
  • shard:分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程。将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载。基本思想就是将集合切成小块,这些块分散到若干片里,每个片只负责总数据的一部分,最后通过一个均衡器来对各个分片进行均衡(数据迁移),从3.6版本开始,每个 shard 必须部署为副本集(replica set)架构。

2. 集群部署规划 #

name ip mongos config server shard cluster 1 shard cluster 2
node-01 127.0.0.1 27090 27080 27117 27217
node-02 127.0.0.1 27091 27081 27118 27218
node-03 127.0.0.1 27092 27082 27119 27218

config server 配置服务器建议部署为包含3个成员的副本集模式,出于测试目的,您可以创建一个单成员副本集; shard 分片请使用至少包含三个成员的副本集。出于测试目的,您可以创建一个单成员副本集; mongos 没有副本集概念,可以部署1个、2个或多个。

3. 下载安装文件 #

下载文件

  • 以 Ubuntu 为例: https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-5.0.5.tgz

  • 其他系统下载:https://www.mongodb.com/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
部署 MongoDB 分片集群,需要按照以下步骤进行操作: 1. 安装 MongoDB:在每个分片服务器和配置服务器上安装 MongoDB。可以从 MongoDB 官方网站(https://www.mongodb.com/try/download/community)下载最新的 MongoDB 版本,并按照官方文档提供的说明进行安装。 2. 配置配置服务器(config server):选择三个服务器作为配置服务器的节点。在每个节点上创建一个配置服务器实例,并将它们配置为副本集。详细的配置步骤可以参考 MongoDB 官方文档中的 "Deploy a Config Server Replica Set" 部分。 3. 启动配置服务器副本集:启动配置服务器副本集,确保副本集中的每个节点都正常运行,并且选举了一个主节点。 4. 启动分片服务器(shard server):选择多个服务器作为分片服务器的节点。在每个节点上创建一个 mongod 实例,并将其配置为副本集。详细的配置步骤可以参考 MongoDB 官方文档中的 "Deploy a Sharded Cluster" 部分。 5. 向分片集群添加分片:将分片服务器添加到分片集群中。你可以使用 `mongos` 实例连接到任意一个分片服务器,然后使用 `sh.addShard()` 命令将分片服务器添加到集群中。详细的操作步骤可以参考 MongoDB 官方文档中的 "Add Shards to a Cluster" 部分。 6. 定义分片键和路由规则:在集群中定义分片键,并根据分片键的取值范围定义路由规则。这样 `mongos` 实例就能根据分片键将数据路由到正确的分片服务器上。你可以使用 `sh.shardCollection()` 命令来定义分片键和路由规则。详细的操作步骤可以参考 MongoDB 官方文档中的 "Shard a Collection" 部分。 7. 验证和测试:最后,确保整个分片集群正常运行。你可以插入测试数据并查询数据,以确保数据正确地分布在不同的分片服务器上。 请注意,在部署 MongoDB 分片集群时,需要仔细阅读 MongoDB 官方文档并按照其中的说明进行操作。这样可以确保正确配置和部署分片集群,并获得最佳性能和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值