
MongoDB部署高可用集群
发布日期:2025-04-14 17:58:25
浏览次数:7
分类:精选文章
本文共 1069 字,大约阅读时间需要 3 分钟。
MongoDB高可用集群(分片+副本集)部署方案
一、准备工作
修改服务器hostname和hosts配置
- 修改3台服务器的hostname分别为
mongodb0
、mongodb1
和mongodb2
。 - 使用vim编辑
/etc/hostname
文件并设置相应hostname。 - 同时编辑
/etc/hosts
文件,配置3个节点的域名:10.5.30.19 mongodb0
10.5.30.14 mongodb1
10.5.30.18 mongodb2
关闭防火墙
- 通过命令关闭防火墙或设置防火墙规则,确保节点间通信畅通。
安装MongoDB
- 下载安装包:
mongodb-linux-aarch64-ubuntu1804-4.2.7.tgz
- 解压并重命名为
mongodb
:tar zxvf mongodb-linux-aarch64-ubuntu1804-4.2.7.tgzmv mongodb-linux-aarch64-ubuntu1804-4.2.7 mongodb
- 安装MongoDB并配置环境变量:
export PATH=/opt/mongodb/mongodb-4.2.7/bin:$PATHsource /etc/profile
- 确保所有节点完成相同操作后,验证MongoDB服务是否正常运行。
用户和权限设置
- 创建用户和用户组,统一使用
root:root
进行权限管理。
二、集群架构
1. 集群概述
- MongoDB的集群主要有三种模式:主从模式、副本集模式和分片模式。
- 副本集模式和分片模式均可根据业务需求选择。
- GB级别采用副本集模式,TB级别或以上采用分片模式。
2. 组件及概念说明
组件名称 | 组件说明 |
---|---|
Mongos Server | 数据库集群请求的入口,所有请求均由Mongos协调分发。 |
Config Server | 配置服务器,存储分片路由信息。防止单点故障,生产环境通常部署多个。 |
Shard Server | 负责具体数据块的存储和处理,实现数据分片。 |
Replica Set | 数据副本机制,提供数据冗余,防止数据丢失。 |
Arbiter | 复制集中的仲裁节点,不存储数据,确保投票机制正常运行。 |
3. 分片与副本集实现
- 分片(Sharding):将数据分布到多个分片服务器,通过均衡器对数据进行分配。
- 副本集(Replica Set):实现数据的副本备份,提高数据可用性和安全性。
- 仲裁者(Arbiter):维持复制集的投票机制,确保主节点的正常切换。
通过以上步骤,可以完成一个高可用性的MongoDB集群部署。
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2025年04月28日 06时18分24秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Mysql Row_Format 参数讲解
2025-04-15
mysql select as 多个_MySQL 中 根据关键字查询多个字段
2025-04-15
MySQL Server 5.5安装记录
2025-04-15
mysql server has gone away
2025-04-15
mysql slave 停了_slave 停止。求解决方法
2025-04-15
MySQL slow_query_log慢查询日志配置详解
2025-04-15
MySQL sql_mode=only_full_group_by问题解决办法
2025-04-15
MYSQL sql语句针对数据记录时间范围查询的效率对比
2025-04-15
mysql sysbench测试安装及命令
2025-04-15
mysql Timestamp时间隔了8小时
2025-04-15
Mysql tinyint(1)与tinyint(4)的区别
2025-04-15
mysql union orderby 无效
2025-04-15
mysql v$session_Oracle 进程查看v$session
2025-04-15
mysql VS mongoDB
2025-04-15