Mongodb主、副、仲裁节点集群安装(附带开启用户认证)

mongodb 的集群方式主要分为三种Replica Set / Sharding / Master-Slaver ,这里只说明最简单的集群搭建方式(生产环境),如果有多个节点可以此类推或者查看官方文档。

Replica Set

       中文翻译叫做副本集。其实简单来说就是集群当中包含了多份数据,保证主节点挂掉了,备节点能继续提供数据服务,提供的前提就是数据需要和主节点一致。如下图:

       Mongodb(M)表示主节点,Mongodb(S)表示备节点,Mongodb(A)表示仲裁节点。主备节点存储数据(M,S),仲裁节点不存储数据。客户端同时连接主节点与备节点,不连接仲裁节点。

       默认设置下,主节点提供所有增删查改服务,备节点不提供任何服务。但是可以通过设置使备节点提供查询服务,这样就可以减少主节点的压力,当客户端进行数据查询时,请求自动转到备节点上。这个设置叫做Read Preference Modes,同时Java客户端提供了简单的配置方式,可以不必直接对数据库进行操作。

       仲裁节点是一种特殊的节点,它本身并不存储数据,主要的作用是决定哪一个备节点在主节点挂掉之后提升为主节点,所以客户端不需要连接此节点。这里虽然只有一个备节点,但是仍然需要一个仲裁节点来提升备节点级别。

介绍完了集群方案,那么现在就开始搭建了。

1、将三台计算机同时下载,解压安装文件

 下载命令:apt-get install mongo

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.6.tgz

2、同时创建mongodb数据文件夹  

mkdir -p /mongodb/data/master   
mkdir -p /mongodb/data/slaver   
mkdir -p /mongodb/data/arbiter    
#三个目录分别对应主,备,仲裁节点 

3、建立配置文件(M,S,A)

 (一) 主节点配置文件 

 #master.conf  
 dbpath=/mongodb/data/master  
 logpath=/mongodb/log/master.log  
 pidfilepath=/mongodb/master.pid  
 directoryperdb=true  
 logappend=true  
 replSet=testrs  
 bind_ip=172.17.79.42
 port=27017
 oplogSize=10000
 fork=true
 noprealloc=true
 #auth=true
 #keyFile =/home/mongodb/master/mongo.keyfile

 (二) 从节点配置文件 

 #slaver.conf  
 dbpath=/mongodb/data/slaver  
 logpath=/mongodb/log/slaver.log  
 pidfilepath=/mongodb/slaver.pid  
 directoryperdb=true  
 logappend=true  
 replSet=testrs  
 bind_ip=172.17.79.42
 port=27018
 oplogSize=10000
 fork=true
 noprealloc=
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MongoDB仲裁节点和数据节点是两种不同的角色。仲裁节点要用于解决本集节点选举时的投票决策,而数据节点则负责存储和处理实际的数据。通常情况下,将仲裁节点和数据节点分开部署可以提高可用性和性能,因为它们的工作负载和资源需求不同。 然而,有些情况下,可以在同一台服务器上同时安装仲裁节点和数据节点。这种情况通常发生在资源有限的环境,例如开发环境或小型应用部署。在这种情况下,尽管在同一台服务器上同时运行仲裁节点和数据节点可能会对性能产生一定的影响,但仍然可以满足基本的高可用性要求。 要在同一台服务器上同时部署仲裁节点和数据节点,需要进行一些配置调整。首先,需要确保仲裁节点和数据节点使用不同的端口号,以免冲突。其次,应根据服务器的资源情况,适当调整MongoDB的配置参数,例如内存大小、线程数等,以平衡仲裁节点和数据节点之间的资源分配。 此外,在同一台服务器上部署仲裁节点和数据节点时,还需要密切监视服务器的资源利用率和性能表现,及时进行调整和优化。如果发现性能问题或资源瓶颈,可以考虑将仲裁节点和数据节点分开部署到不同的服务器上,以提升性能和可用性。 总之,虽然通常建议将仲裁节点和数据节点分开部署,但在资源有限的情况下,可以在同一台服务器上安装和运行它们。在这种情况下,需要进行一些配置调整和资源优化,以满足基本的高可用性要求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值