节点分配

  • 10.110.18.89
  • 10.110.18.90
  • 10.110.18.94

配置文件


systemLog:
    destination: file
    path: "/data/mongodb/log/system.log"
    quiet: true
    logAppend: true
    logRotate: rename
    timeStampFormat: ctime
  processManagement:
    fork: true
    pidFilePath: /data/mongodb/log/mongod.pid
  storage:
    dbPath: "/data/mongodb/data"
    directoryPerDB: true
    journal:
      enabled: true
    wiredTiger:
      engineConfig:
        cacheSizeGB: 4
    syncPeriodSecs: 10
  net:
    bindIp: "0.0.0.0"
    port: "27017"
  security:
    authorization: "enabled"
    keyFile: "/data/mongodb/key/key"
  replication:
    replSetName: pandatv_msg

创建目录(三个节点相同)

mkdit -p /data/mongodb/{data,log,key}

key的生成与权限(一个节点生成,拷贝到其他节点,权限要保证为400或者600)

openssl rand -base64 100 > /data/mongodb/key/key

chmod 600 /data/mongodb/key/key

scp /data/mongodb/key/key user@10.110.18.90:/data/mongodb/key/

scp /data/mongodb/key/key user@10.110.18.94:/data/mongodb/key/

启动mongodb实例(三个节点相同)

/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/etc/mongod.conf

登陆最先启动的节点,初始化replset成员,并增加管理用户

/usr/local/mongodb/bin/mongo --host 127.0.0.1 --port 27017

rs.initiate(

  {

  _id: "pandatv_msg",

  version: 1,

  members: [

  { _id: 0, host : "10.110.18.89 :27017" },

  { _id: 1, host : "10.110.18.90 :27017" },

  { _id: 2, host : "10.110.18.94 :27017" }

  ]

  })

use admin

db.createUser(

  {

  user: "admin",

  pwd: "password",

  roles: [ { "role" : "dbAdminAnyDatabase", "db" : "admin" }, { "role" : "userAdminAnyDatabase", "db" : "admin" }, { "role" : "clusterAdmin", "db" : "admin" }, { "role" : "readWriteAnyDatabase", "db" : "admin" } ]

  }

  )

use test

db.createUser(

{

user: "notify",

pwd: "password",

roles: [ { "role" : "dbOwner", "db" : "notify" } ]

}

)

至此,安装完成,看下replset状态

rs.status()

{
"set" : "pandatv_msg",
"date" : ISODate("2016-08-04T02:46:51.240Z"),
"myState" : 1,
"term" : NumberLong(1),
"heartbeatIntervalMillis" : NumberLong(2000),
"members" : [
{
"_id" : 0,
"name" : "10.110.18.89 :27017",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 302,
"optime" : {
"ts" : Timestamp(1470278805, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2016-08-04T02:46:45Z"),
"infoMessage" : "could not find member to sync from",
"electionTime" : Timestamp(1470278804, 1),
"electionDate" : ISODate("2016-08-04T02:46:44Z"),
"configVersion" : 1,
"self" : true
},
{
"_id" : 1,
"name" : "10.110.18.90 :27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 17,
"optime" : {
"ts" : Timestamp(1470278805, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2016-08-04T02:46:45Z"),
"lastHeartbeat" : ISODate("2016-08-04T02:46:50.842Z"),
"lastHeartbeatRecv" : ISODate("2016-08-04T02:46:48.188Z"),
"pingMs" : NumberLong(1),
"syncingTo" : "10.110.18.89 :27017",
"configVersion" : 1
},
{
"_id" : 2,
"name" : "10.110.18.94 :27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 17,
"optime" : {
"ts" : Timestamp(1470278805, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2016-08-04T02:46:45Z"),
"lastHeartbeat" : ISODate("2016-08-04T02:46:50.810Z"),
"lastHeartbeatRecv" : ISODate("2016-08-04T02:46:48.180Z"),
"pingMs" : NumberLong(1),
"syncingTo" : "10.110.18.89 :27017",
"configVersion" : 1
}
],
"ok" : 1
}

登陆其他节点验证

/usr/local/mongodb/bin/mongo --host 10.110.18.94 --port 27017 admin -uadmin -p

rs.status()

/usr/local/mongodb/bin/mongo --host 10.110.18.90 --port 27017 admin -uadmin -p

rs.status()

mongodb-replset安装的更多相关文章

  1. MongoDB一键安装(参数全部定制)

    cat  init_MongoDB.sh #!/bin/bash export lang=C export my_port=27019 export my_dbpath=/opt/var/data/m ...

  2. MongoDB一键安装(定制端口)

    #!/bin/bash export lang=Cexport my_port=27019echo '#1.关闭本地的MongoDB'#service mongodb stopecho '#2.清空本 ...

  3. MongoDB一键安装

    #!/bin/bash export lang=Cecho '#1.关闭本地的MongoDB'#service mongodb stopecho '#2.清空本地MongoDB的安装文件'rm -rf ...

  4. MongoDB下载安装与简单增删改查

    Windows下MongoDB的安装和配置.启动和停止 下载地址:MongoDB的官方下载网址是:https://www.mongodb.org/downloads 安装步骤1. 点击下载的mongo ...

  5. MongoDB的安装与设置MongoDB服务

    Mongo DB 是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式备受当前IT从业人员的青睐.Mongo DB很好的实现了面向对象的思想(OO思想),在Mongo DB ...

  6. Linux下MongoDB服务安装

    Linux下MongoDB服务安装 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.MongoDB是一个介于关系数据库和非关系数据 ...

  7. MongoDB学习-安装流程

    MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型. ...

  8. mongodb(二) 安装和使用

    mongodb的安装和使用 最近的项目需要使用到mongodb,从而开始熟悉nosql,有了本篇文章,记录和方便他人. mongodb的安装 下载地址:http://www.mongodb.org/d ...

  9. MongoDB的安装及配置

    MongoDB 是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式备受当前IT从业人员的青睐. Windows (1). 登录Mongodb官网点击下载 (2). 将zi ...

  10. MongoDB的安装 转

    第1章 MongoDB的安装 (黎明你好原创作品,转载请注明) 1.1 MongoDB简介 MongoDB是一个基于分布式文件存储的数据库开源项目.由C++语言编写,旨在为WEB应用提供可护展的高性能 ...

随机推荐

  1. easyui dialog iframe

    function toGrant(obj,url,showMsg) {                                        var dialog=$('#dlg_grant' ...

  2. 在iOS中使用OpenSSL的Public Key 进行加密

    这几天一直潜心于iOS开发,刚好把遇到的问题都记录一下.这次遇到的问题就是如果根据得到的Public Key在iOS 客户端对用户名和密码进行加密. Public Key如下: -----BEGIN ...

  3. 2017年1月1日 星期日 --出埃及记 Exodus 21:27

    2017年1月1日 星期日 --出埃及记 Exodus 21:27 And if he knocks out the tooth of a manservant or maidservant, he ...

  4. wcf 同时支持webhttp 和 引用方式

    wcf 实现参考 http://www.cnblogs.com/mingmingruyuedlut/p/4223116.html 兼容两种方式 1.修改服务端webconfig <system. ...

  5. 【RabbitMQ】RabbitMQ的一些基础概念

    工作中使用的是RabbitMQ,需要对其进行熟悉.使用之前,弄清楚它是什么东西,解决什么问题. 场景 一些不必实时执行的任务 开发中,有一些任务并无须实时执行,比如: 会员更新个人信息,更新会员信息之 ...

  6. Swift高级语法学习总结(转)

    Swift高级语法学习总结 1.函数 1.1 func funcNmae()->(){} 这样就定义了一个函数,它的参数为空,返回值为空,如果有参数和返回值直接写在两个括号里就可以了 1.2 参 ...

  7. 一文说尽C++赋值运算符重载函数(operator=)

    写在前面: 关于C++的赋值运算符重载函数(operator=),网络以及各种教材上都有很多介绍,但可惜的是,内容大多雷同且不全面.面对这一局面,在下在整合各种资源及融入个人理解的基础上,整理出一篇较 ...

  8. 聊聊 virtualenv 和 virtualenvwrapper 实践

    各位 Python 的小伙伴肯定多多少少接触过 virtualenv.本文将介绍 virtualenv 以及如何更科学更优雅地使用 virtualenv. virtualenv 首先来聊一下 virt ...

  9. 《与小卡特一起学Python》 Code2

    下边是一个猜数字的小游戏: 几乎所有语言都这样做的…… here we go! import random secret = random.randint(1,99) guess = 0 tries ...

  10. Making my own Autonomous Robot in ROS / Gazebo, Day 2: Enable the robot

    Day 2: Enable the robot Git Setting git checkout master git branch day2_enable_robot git push --set- ...