`
落叶留步
  • 浏览: 54365 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

mongodb3.2 安装配置

 
阅读更多

    最近折腾了一下最新版mongodb集群安装配置,目前测试可以运行,可能还有一些问题,需要慢慢去发现。

    对于3.2之前的版本部署不了解,网上也有好多。总的来说,有以下几种部署方式:

    1.单机部署

    2.副本集部署

    3.分片部署

    4.分片副本集部署

 

    前面几种部署都相对简单,这里不做说明。下面主要记录一下第4种方式部署,也是生产环境的建议部署方式,可以满足集群的高可用和高吞吐量。

    有几个概念需要先说明一下:

    configsvr:分片部署的配置节点,不存储具体数据,只存储分片的信息

    shardcvr:分片部署的数据节点,存数具体的数据

    mongos:分片路由节点,和configsvr关联,用户直接连接它完成数据库的操作。

    

    primary:副本集的主节点,默认读写都在这个节点上操作,然后同步到其他副本节点上。

    secondary:副本集从节点。

 

     下面记录个按个分片,每个分片2个副本的配置过程:

      需要注意的是,每一个组件都是一个单独的进程,一个mongo包要拷贝多分,来代表不同的组件。

      1.首先规划好机器

     总共三台机器:192.168.1.100,192.168.1.101,192.168.1.102

     192.168.1.100:1个configsvr,3个shardsvr,1个mongos

     192.168.1.101:1个configsvr,3个shardsvr,1个mongos

     192.168.1.102:1个configsvr,3个shardsvr,1个mongos

 

     一次配置configsvr、shardsvr、monogs。具体查看每个如何配置。

     配置副本集:https://docs.mongodb.org/manual/tutorial/deploy-replica-set/

     配置分片:https://docs.mongodb.org/manual/tutorial/deploy-shard-cluster/

     mongo配置选项:https://docs.mongodb.org/manual/reference/configuration-options/

     

 

    2.启动所有的configsvr

     连接任意一个configsvr,然后初始化configsvr副本集(注意3.2+版本支持configsvr副本集),在shell输入:

 

rs.initiate( {
   _id: "configrs",
   configsvr: true,
   members: [
      { _id: 0, host: "192.168.1.100:27017" },
      { _id: 1, host: "192.168.1.101:27017" },
      { _id: 1, host: "192.168.1.102:27017" }
   ]
} )

 

    

   3.配置每个分片的副本集

   启动所有的shard节点,第一个shard副本集的配置:连接任意一个shard1的节点,然后在shell输入:

 

rs.initiate({
   "_id" : "shard1rs",
   "version" : 1,
   "members" : [
      {
         "_id" : 0,
         "host" : "192.168.1.100:27018"
      },
     {
         "_id" : 1,
         "host" : "192.168.1.101:27018"
      },
       {
         "_id" : 2,
         "host" : "192.168.1.102:27018"
      }
   ]
})

 

   剩余的两个shard也要做类似的操作。

 

   4.启动mongos

   需要在mongos的配置中加入

   configDB configrs/192.168.1.100:27017,192.168.1.101:27017,192.168.1.102:27017

 

  指定mongos的监听端口为17710

 

   

   5.为mongos加入shard分片信息

 

    连接mongos的shell,然后输入:

sh.addShard("shard1rs/192.168.1.100:27018,192.168.1.101:27018,192.168.1.102:27018")
sh.addShard("shard2rs/192.168.1.100:27019,192.168.1.101:27019,192.168.1.102:27019")  
sh.addShard("shard2rs/192.168.1.100:27020,192.168.1.101:27020,192.168.1.102:27020") 

 

    6.开启分片功能

     mongo分片是相对collection来说的,也就是说要对collection设置分片。

     首先需要开始database的shard功能,然后才能对collection进行分片配置。

     

     在mongos的shell

     开启database分片功能:

     sh.enableSharding("data")

     设置collection分片:

     sh.shardCollection("data.user", { "_id": "hashed" } )

 

 

 

分享到:
评论

相关推荐

    mongodb3.2集群配置

    为了满足大规模数据处理的需求,本案例采用3台物理服务器搭建MongoDB集群,每台服务器上安装一个MongoDB实例,并通过合理的配置来实现数据的分片存储和高可用性。具体的部署规划如下: 1. **物理服务器准备**: - ...

    Linux64 Mongodb3.2

    在Linux 64位系统上安装MongoDB 3.2版本,可以为开发者提供一个强大的非关系型数据库解决方案,适用于处理大量半结构化和结构化数据。 首先,让我们了解MongoDB 3.2的主要特性: 1. **性能增强**:MongoDB 3.2引入...

    Spring-Data-MongoDB3.2

    **Spring Data MongoDB 3.2 整合指南** 在当今的软件开发中,Spring框架以其强大的功能和灵活性深受开发者喜爱,而MongoDB作为一款非关系型数据库,因其高性能、高可扩展性和灵活的数据模型,成为了大数据和实时...

    MongoDB3.2实战笔记

    本篇实战笔记主要针对 MongoDB 3.2 版本,涵盖其安装、配置、基本操作以及一些高级功能。 #### 二、准备工作 在开始实战之前,我们需要做一些准备工作: 1. **网络环境**:确保计算机可以联网,以便下载相关软件和...

    liunux centos系统mongodb3.2.0的压缩包

    MongoDB 提供了一个官方的 yum 存储库,可以在 CentOS 上轻松安装和更新 MongoDB。你需要在 `/etc/yum.repos.d/` 目录下创建一个名为 `mongodb-org-3.2.repo` 的文件,然后添加以下内容: ``` [mongodb-org-3.2] ...

    Mongodb3.2集群搭建[整理].pdf

    在3.2版本中,MongoDB 集群的搭建涉及到几个关键组件,包括mongos(查询路由器)、config server(配置服务器)以及shards(分片)。本文将详细介绍这些组件的功能及其在集群中的作用。 首先,mongos是查询路由器,...

    MongoDB集群安装配置

    ### MongoDB集群安装配置详解 #### 一、引言 随着数据量的增长以及对高可用性的需求增加,构建MongoDB集群成为一种常见的解决方案。本文将详细介绍如何在Ubuntu 16环境下配置MongoDB集群,并通过实际步骤演示整个...

    mongodb-win32-x86_64-2008plus-ssl-v3.2-latest.zip

    在压缩包"mongodb-win32-x86_64-2008plus-ssl-v3.2-latest.zip"中,包含的文件 "mongodb-win32-x86_64-2008plus-ssl-3.2.18-11-g385ed43" 是MongoDB的安装程序或二进制文件,具体版本为3.2.18。这个版本可能包含...

    mongodb3.2.4说明文档

    自 MongoDB 3.2 版本起,官方不再提供 32 位版本的支持,用户需选择 64 位版本进行安装。这一决定主要是考虑到 64 位系统能更好地利用内存资源,从而提高数据库性能。 **2.3 教程** 文档提供了详细的安装教程,...

    MongoDB安装与配置.docx

    本文将详细介绍MongoDB的安装、配置以及启动过程,并简要介绍MongoDB数据库的基础知识。 首先,让我们从安装开始。安装MongoDB通常包括以下几个步骤: 1. **运行安装文件**:下载MongoDB的安装程序,通常是.msi...

    Linux下MongoDB安装包

    至此,你已经在Linux上成功安装并配置了MongoDB 3.2。不过,这只是基础步骤,MongoDB的管理和使用还有很多高级特性,如Sharding(分片)、Replication(复制集)、索引管理、性能调优等,都需要进一步学习和实践。...

    mongodb-win32-i386-3.2.18.zip

    在解压“mongodb-win32-i32-3.2.18.zip”后,你会得到一个包含MongoDB服务器、配置文件、日志文件夹等相关组件的目录结构。安装过程包括设置环境变量、创建数据目录、启动服务等步骤。安装完成后,你可以通过命令行...

    在MongoDB 3.2和C#驱动程序2.0中执行聚合并使用异步方法

    1. 安装MongoDB C#驱动程序(通过NuGet包管理器或直接下载安装)。 2. 配置MongoDB连接字符串,通常在应用程序的配置文件(如`app.config`或`web.config`)中设置。 3. 引用驱动程序库,如`using MongoDB.Driver;`,...

    MongoDB+Nginx配置

    #### 二、MongoDB安装配置 ##### 2.1 安装依赖包 首先确保系统已安装必要的依赖包。可以通过以下命令来安装: ```bash yum install -y git gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib...

    CentOS(Linux)离线安装MongoDB7.0详细教程(亲测可行)

    ##### 3.2 将 MongoDB 添加至 Service 启动 1. **创建并编辑 service 文件**: ```bash vi mongodb.service ``` 2. **填写内容**: ``` [Unit] Description=mongodb After=network.target remote-fs.target ...

    mongodb-linux-x86_64-ubuntu1604-3.2.22.tgz

    echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list ``` 3. **更新软件包列表**: 更新你的系统软件包列表,以便包含...

    mongodb-linux-x86_64-rhel62-3.2.0.tgz

    在安装和配置MongoDB 3.2.0时,用户需要考虑系统兼容性,确保RHEL 6.2系统满足最低要求,并遵循官方提供的安装指南。安装过程中,需注意配置数据目录、设置系统限制(如ulimit)、创建数据文件权限以及启动和设置...

    mongodb-win32-i386-3.2.4-signed.zip

    安装过程中,用户可以选择自定义安装路径,配置数据目录,以及设置启动服务等选项。安装完成后,可以通过命令行或MongoDB提供的管理工具(如MongoDB Compass)来管理数据库。 总的来说,MongoDB 3.2.4是一个强大且...

Global site tag (gtag.js) - Google Analytics