1、安装

cat > /etc/yum.repos.d/mongodb.repo << EOF
[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
EOF

yum install mongodb-org

2、配置

cd /home/mongo-cluster/
mkdir data log

# keyfile
mkdir keyfile
openssl rand -base64 756 > mongo.key
chmod 400 mongo.key
mv mongo.key keyfile

mkdir keyfile
chmod 400 /home/mongo-cluster/keyfile/mongo.key
chown mongod.mongod /home/mongo-cluster/keyfile/mongo.key
cat > keyfile/mongo.key << EOF
4nmeWUmfA97jppHn2ynxWytkTNciLDsAvXNiJqL6ez8WqPvSMxRxrDGxygQvVFL/
pOg02SrSNG04QF8Ioisreh/EVhTLLOZbBn2I7Q7Rgl2OxqDBY5w1nwYOI5Pcyjsq
5l3a/8k/VO7Kway6EcRLSgXOzc02cxzzkNm+ZWKYzStstGOEt0f/405iGOzRTWCq
DyMtj23zFYoY6dg8cBmlPe6EJceRSmUB1UbAeX47FXK4TCvva+V3v3PYnCn+zQgE
i3z1qZXRxMwmk2W7sm03TFnoZ9NdN0uvPxYb0VElBLoOHy/ZbcR67Sh1JyRUQrMJ
hr84X0h25ufawDEW6MYCzW3ixmH83Fszrf5i0R5vm7ZVcFqUJpfm7FJ2ber1jvHI
+mNcHu9+83PFq977RxCXYzWSlzRV3ahqN9uEIrT97iG1hPs2KVf6gUWZaL1VEthm
PCBvcMTDVSnN/5hK6FfBCwLYkOZEgCfK/6/LC3wjnZW0Yfk3Z+D4CGrtRTkSu4R/
NLEZ7HiUTksuM9WvjHfOWpfDjq3N40rhF0+ayEaMBFm5bnifXnhjaI+LwZfrj77o
0x+kydDBgHdnyuPdv+k09iRFNlEPFjuSgHkqdXjXPMyMU4rCGq+TXbVJ0YB//n7Z
eSdX0KM+9mnnqQw4iPMEqjUG35hjTX1yg2rWStXGH2AZnQchO3RoyTl/doNE0lOm
NFy0Esln/NBWDn6Pb3WSvl4MDblDB7UEn1goVo0J3BgP4v0dAA7KrnmBfv6/zMmE
oTGploOTOCzp27ZxGFIxJcz4wzvjGBPbFmbfdPW7QI3lSyBwOKed2ASZeJF53rJz
AGgTIOxcWAY8fF8XjmWAaiy4aqsW7S+SAyTlnQtXGarWx8gW+NeFqI55/CZdiaCM
hl9Sya3KLI0Ncyz9yvng83+LZAMyxGbkxijt/SJzOgh66nuMUJePH6ukf/qt59jA
J1EOYHxDTdF+mH3EY59LPQ2JIgdyLX6Un8/dWEfRfSyzRXxE
EOF

# 三台配置文件
vim /home/mongo-cluster/mongod-cluster.conf
pidfilepath = /home/mongo-cluster/log/28017.pid
dbpath = /home/mongo-cluster/data
logpath = /home/mongo-cluster/log/28017.log
# keyFile = /home/mongo-cluster/keyfile/mongo.key
logappend = true
directoryperdb=true
bind_ip = 0.0.0.0
port = 28017
fork = true

oplogSize=10000
noprealloc=true
#declare this is a config db of a cluster;
#configsvr = true

#复制集名称
replSet=datamip/10.10.21.199:28017
#每台对应更改IP,复制集名称要一直
#replSet=testrs

#设置最大连接数
maxConns=20000

# 启动
kill -9 $(ps -aux | awk '$11 == "mongod"{print $2}')
mongod -f /home/mongo-cluster/mongod-cluster.conf

# 初始化集群
mongo --host 10.10.21.199 --port 28017
use admin
config = {
_id : "datamip",
members : [
{_id : 0, host : "10.10.21.197:28017" , priority:2},
{_id : 1, host : "10.10.21.198:28017" , priority:1},
{_id : 2, host : "10.10.21.199:28017" , arbiterOnly:true}
]
}
rs.initiate(config)

# 10秒后状态查询
rs.status()
exit

3、haproxy配置

frontend mongos_pool 0.0.0.0:29017
mode tcp
maxconn 32768
no option dontlognull
option tcplog
log global
option log-separate-errors
default_backend mongos_pool

backend mongos_pool
mode tcp
balance source
default-server inter 2s fastinter 1s downinter 5s slowstart 60s rise 2 fall 5 weight 30
server 10.10.21.197:28017 10.10.21.197:28017 check maxconn 2000
server 10.10.21.198:28017 10.10.21.198:28017 check maxconn 2000
server 10.10.21.199:28017 10.10.21.199:28017 check maxconn 2000

centos7mongo集群的更多相关文章

  1. 启动了VSAN服务的主机不在vCenter集群中

    背景: 这个问题的来源是,某用户将该ESXi主机直接夺取到另一个vCenterA的管辖中,而这个vCenterA中集群A开启了VSAN功能,导致再次反向夺取到vCenterB中的时候带有了来自于集群A ...

  2. Apache Ignite之集群应用测试

    集群发现机制 在Ignite中的集群号称是无中心的,而且支持命令行启动和嵌入应用启动,所以按理说很简单.而且集群有自动发现机制感觉对于懒人开发来说太好了,抱着试一试的心态测试一下吧. 在Apache ...

  3. 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...

  4. Ubuntu 14.04中Elasticsearch集群配置

    Ubuntu 14.04中Elasticsearch集群配置 前言:本文可用于elasticsearch集群搭建参考.细分为elasticsearch.yml配置和系统配置 达到的目的:各台机器配置成 ...

  5. windows+nginx+iis+redis+Task.MainForm构建分布式架构 之 (nginx+iis构建服务集群)

    本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,由标题就能看出此内容不是一篇分享文章能说完的,所以我打算分几篇分享文章来讲解,一步一步实现分 ...

  6. 在开启DRS的集群中修复VMware虚拟主机启动问题

    通过iSCSI方式连接到ESXi主机上的外挂存储意外失联了一段时间,导致部分虚拟主机在集群中呈现出孤立的状态,单独登陆到每台ESXi上可以看到这些虚拟主机都变成了unknow状态.因为有过上一次(VM ...

  7. 通过VMware的PowerCLI配置集群内指定主机的vMotion功能

    PowerCLI是VMware开发的基于微软(MSFT)的PowerShell的命令行管理vSphere的实现,因此在批量化操作方面CLI会减轻很多GUI环境下的繁琐重复劳作. 现有场景中有大量的物理 ...

  8. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之集群概念介绍(一)

    集群概念介绍(一)) 白宁超 2015年7月16日 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习 ...

  9. 【Big Data】HADOOP集群的配置(一)

    Hadoop集群的配置(一) 摘要: hadoop集群配置系列文档,是笔者在实验室真机环境实验后整理而得.以便随后工作所需,做以知识整理,另则与博客园朋友分享实验成果,因为笔者在学习初期,也遇到不少问 ...

随机推荐

  1. A Story of One Country (Hard) CodeForces - 1181E2 (分治)

    大意: 给定$n$个平面上互不相交的矩形. 若一个矩形区域只包含一个矩形或者它可以水平或垂直切成两块好的区域, 那么这个矩形区域是好的. 求判断整个平面区域是否是好的. 分治判断, 可以用链表实现删除 ...

  2. DO、VO、DTO 区别

    DTO:数据传输对象,主要用于外部接口参数传递封装,接口与接口进行传递使用. VO:视图对象,主要用于给前端返回页面参数使用. DO:数据对象,主要用于数据库层传递. DTO转DO:接口接收参数将参数 ...

  3. 无法解析的外部符号 ___argc nafxcw.lib(appcore.obj)

    参考 https://blog.csdn.net/wfree/article/details/44171157 MFC的使用: 由"在静态库中使用 MFC" 改成 "在共 ...

  4. Redis—.Net中的使用

    StackExchange.Redis使用以及封装 来源:http://www.cnblogs.com/qtqq/p/5951201.html,https://www.cnblogs.com/xsj1 ...

  5. vue-resource发送请求

    <!DOCTYPE html> <html> <head> <title>vue-resource</title> <meta cha ...

  6. javascript中bind()、call()、apply()的使用

    一直以来对bind().apply().call()这三个方法都模模糊糊的,现在有时间详细的看看这三个方法,并记录下来. bind() 参考文档:https://developer.mozilla.o ...

  7. Android笔记(三) 使得Activity之间可以跳转---Intent

    什么是Intent 一个APP肯定不单单由一个Activity构成,我们在使用过程中,经常需要在多个Activity中跳转,Android中Intent可以帮我们来完成在各个Activity中跳转的功 ...

  8. MySQL主从复制(Centos6.3&MySQL5.6)

    环境: Master:Centos 6.3        192.168.1.4  Slave:Centos 6.3            192.168.1.5 MySQL: MySQL-5.6.2 ...

  9. kali linux Desktop Environemt types and kali linux install virualbox

    1.we know the kali linux desktop environmet can also be costomized ,Desktop environmet can use GNOME ...

  10. python函数式编程-匿名函数

    >>> map(lambda x: x * x, [, , , , , , , , ]) [, , , , , , , , ] 关键字lambda表示匿名函数,冒号前面的x表示函数参 ...