`
chenhua_1984
  • 浏览: 1252179 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

mongodb的Replica Set

阅读更多

 

     Replica Set 是有自动故障恢复的主从集群,与主从集群最大的区别就是没有固定的主节点,整个集群会选举出一个主节点,当其不能工作时切换到其他的节点

     副本集总会有一个活跃的节点primary ,一个货多个备份节点secondary 。

  

   在生产环境中,我们应该将每个节点部署在独立的机器上,并使用标准的MongoDB端口 27017 。使用bind_ip 参数来限制访问MongoDB的应用程序的地址

   

确保各个节点之间可以正常通讯,且各个客户端都处于安全的可信的网络环境中。可以考虑以下事项:

  • 建立虚拟的专用网络。确保各个节点之间的流量是在本地网络范围内路由的。(Establish a virtual private network. Ensure that your network topology routes all traffic between members within a single site over the local area network.)

  • 配置连接限制来防止未知的客户端连接到复制集。

  • 配置网络设置和防火墙规则来对将MongoDB的端口仅开放给应用程序,来让应用程序发的进出数据包可以与MongoDB正常交流。

最后请确保复制集各节点可以互相通过DNS或是主机名解析。我们需要配置DNS域名或是设置/etc/hosts 文件来配置。

  

    

在每个节点上启动 mongod 并通过制定 replSet 参数来指定其复制集名,并可以指定其他需要的参数。参见 Replication Options 以获得其他所需复制参数。

如果我们的应用程序需要连接多个复制集,那么每个复制集需要有不同的名字。一些驱动将复制集连接按复制集名来分组。

下面的例子就指定了复制集的名字通过 --replSet 参数:

mongod --replSet "aosp"

面并连接到复制集的某个节点

   mongo --host ip地址  --port 端口

 

3 初始化复制集

   MongoDB将初始化一个由当前节点构成、拥有默认配置的复制集。

rs.initiate()

 

 4指定复制集初始化参数。

 

rs.conf()

5 其他的节点加入复制集。

 

通过 rs.add() 来将剩下的节点加入复制集。

下述例子是添加两个节点:

rs.add("mongodb1.example.net")
rs.add("mongodb2.example.net")

当完成后,一个完整的复制集便完成了。这个新的复制集将选举出一个 主节点 

 

 

6检查复制集的状态。

通过 rs.status() 命令:

rs.status()

 

 

 

 

 

    

  

分享到:
评论

相关推荐

    mongodb replica set(副本集)设置步骤

    MongoDB的副本集(Replica Set)是一种高可用性解决方案,它通过在多个节点之间复制数据来确保数据的冗余和容错性。在MongoDB中,副本集由一组 MongoDB实例组成,包括一个主节点(Primary)和多个从节点...

    k8s 安装 mongodb 分片(Sharding)+ 副本集(Replica Set)

    k8s 安装 MongoDB 分片(Sharding)+ 副本集(Replica Set) k8s 安装 MongoDB 分片(Sharding)+ 副本集(Replica Set)是结合 Kubernetes(k8s)和 MongoDB 实现高可用性和高性能的解决方案。本解决方案通过使用 ...

    MongoDB的replica set的部署,检测优化,

    MongoDB的复制集(Replica Set)是一种高可用性架构,用于确保数据的冗余和容错性。在MongoDB中,复制集是由多个具有相同数据副本的节点组成,其中一个是主节点(Primary),其余是次级节点(Secondary)。主节点...

    mongodb replica set 配置高性能多服务器详解

    MongoDB的Replica Set是一种高可用性和数据冗余的解决方案,它可以确保在多个服务器之间复制数据,从而提高系统的性能和容错能力。与Master-Slave模式不同,Replica Set可以自动实现故障转移和恢复,增加了系统的...

    mongodb Replica Sets +Sharding高可用集群搭建

    在大型分布式系统中,为了实现高可用性和水平扩展,MongoDB提供了两种关键特性:副本集(Replica Sets)和分片(Sharding)。这篇博客将探讨如何搭建MongoDB的副本集和分片集群。 首先,我们来理解一下MongoDB的...

    mongodb replica set 添加删除节点的2种方法

    MongoDB的复制集(Replica Set)是一种高可用性解决方案,它可以确保数据的冗余和在主节点故障时提供自动故障转移。复制集通常由多个成员组成,包括一个主节点(Primary)、一个或多个次级节点(Secondary)以及可选...

    docker-mongodb-replicaset:docker-mongodb-replicaset

    信息 该文件描述了如何在 Docker 上运行 Mongo DB Replica Set。 我们假设主机上的 ...$ cd docker-mongodb-replicaset $ docker build -t mongo . 使用副本集启动 docker 容器 $ ./start.sh 使用 bash 再运行一个

    MongoDB添加仲裁节点报错:replica set IDs do not match的解决方法

    由于历史原因,某个MongoDB副本集只有一主一从双节点,无法满足自动故障转移要求,需要配置一个仲裁节点。 原有节点192.168.10.20:27017,192.168.10.21:27017,现在准备在20上配置一个新节点27018当做仲裁 在当前主...

    mongodb_replica

    - 其中,`username`和`password`是数据库认证信息,`host1:port1,host2:port2`是副本集成员的地址,`dbname`是数据库名,`replicaSet=rs0`指定了副本集名称。 4. **读写策略** - SpringBoot 默认会将所有操作发送...

    C#开发的Mongodb集群自动部署工具

    4. MongoDB Replica Set 自动部署.exe和MongDB Replica Set 自动部署.pdb:这是实际的自动部署程序和其对应的调试信息文件。exe文件是可执行程序,可以直接运行在Windows环境下,通过SSH连接到Linux服务器并执行部署...

    MongoDB在金融行业的应用.pptx

    福米通过将单一的MongoDB Replica Set拆分为多个数据中心,配合Fumi-Mongo-Kafka组件实现跨数据中心的数据同步,提高了系统的抗风险能力。 3. 内存设置与IOPS要求: - MongoDB的内存设置和IOPS需求对服务器成本有很...

    Mongodb的ReplicaSets+Sharding架构(window篇)

    MongoDB的Replica Sets+Sharding架构是大数据时代下应对高可用性和可扩展性需求的重要解决方案。本篇文章将深入探讨这两个关键特性在Windows环境下的应用。 **副本集(Replica Sets)** MongoDB的副本集是一种高可用...

    MongoDB集群搭建

    本文主要介绍如何搭建一个基本的MongoDB Replica Set(副本集)集群。 #### 二、准备工作 在开始部署MongoDB集群之前,我们需要做一些准备工作: 1. **下载MongoDB安装包**:访问MongoDB官方网站(<https://www....

    详解Java 连接MongoDB集群的几种方式

    Java 连接 MongoDB 集群的多种方式 Java 连接 MongoDB 集群是目前 Java 开发中最常见的操作之一。在本文中,我们将详细介绍 Java 连接 MongoDB 集群的多种方式,包括连接独立的 MongoDB 实例、连接副本集、连接分片...

    mongodb_failover_tests

    快乐路径场景通过指向Dev / PreProd MongoDB Replicaset MONGODB_REPLICASET = P1:27017,S1:27017,S2:27017节点server.js来启动测试服务器现在通过简单地插入和查询文档来测试设置:curl -XPOST'...

Global site tag (gtag.js) - Google Analytics