Windows下MongoDB集群搭建
MongoDB是一个开源的NoSQL数据库,相比于传统的关系型数据库,在大数据处理、高并发、可扩展性方面更有优势。本文将介绍在Windows系统下如何搭建MongoDB集群。
硬件需求
在搭建集群前,我们需要准备若干服务器,这些服务器要满足一定的硬件条件,以支持集群的正常运行:
- 至少4台服务器(这里以4台为例)
- 每台服务器至少2G内存
- 每台服务器至少20G的硬盘空间
软件需求
在搭建过程需要以下软件:
- MongoDB Windows Server 2008 R2 64-bit and later, with SSL supportx
- MongoDB Compass(可选,用于管理集群)
集群规划
在搭建集群前,我们需要规划一个好的集群方案,以满足业务需求。一个标准的MongoDB集群一般包括3个Replica set,每个Replica set至少3台服务器。
集群搭建
- 在每台服务器上安装MongoDB。
打开mongodb官网下载MongoDB Community Server,安装在每台服务器上。
- 规划集群节点。
在4台服务器上各安装MongoDB,在其中一台服务器上启动mongod,作为Primary节点,在另外三台服务器上启动mongod,作为Secondary节点,Replica set至少包含一个Primary节点和两个Secondary节点。在每个SERER上都创建目录/data/db并运行 mongod.exe。其中命令可以这样运行:
text
mongod --port 27017 --dbpath "c:\data\db" --replSet "rs"
- 初始化Replica set。
需要在Primary节点上初始化Replicaset。新开一个命令行窗口,进入server shell,连接mongodb。运行以下命令:
text
mongo --port 27017
rsconf = {
_id: "rs",
members: [
{_id: 0, host: "server1:27017"},
{_id: 1, host: "server2:27017"},
{_id: 2, host: "server3:27017"}
]
}
rs.initiate(rsconf)
以上命令中,rs指定Replica set 名字,host指定节点所在服务器和端口号。执行rs.initiate(rsconf)命令后,可以看到命令行返回了一些信息,表示Replica set初始化成功。确认Replica set已经正常运行:
text
rs.status()
如果看到输出结果中有1个Primary节点和2个Secondary节点,就说明Replica set初始化成功了。
- 启用安全模式。
默认情况下,MongoDB安装完成后是没有启用安全模式的。安全模式可以保证节点的安全性。在Primary节点上运行以下命令开启安全模式:
text
db.adminCommand( { setParameter: 1, authorization: "enabled" } )
之后需要为每个mongod实例创建一个用户,并授权,以便连接时进行验证。在Primary节点上运行以下命令,创建系统管理员:
text
use admin
db.createUser( { user: "root", pwd: "password", roles:["root"] } )
在Secondary节点上设置复制集的配置。在Primary节点上运行rs.conf()命令,获得集群的配置,然后在Secondary节点上运行如下命令:
text
rsconf = {
_id: "rs",
members: [
{_id: 0, host: "server1:27017"},
{_id: 1, host: "server2:27017", priority: 0}
{_id: 2, host: "server3:27017", priority: 0}
]
}
rs.reconfig(rsconf)
在Secondary节点上创建mongod.cfg文件,以便开启安全认证:
```text
systemLog:
destination: file
path: c:\data\log\mongod.log
processManagement:
fork: true
net:
port: 27017
security:
authorization: enabled
```
- 连接MongoDB集群。
创建好用户后,就可以通过MongoDB Compass连接MongoDB集群进行管理。
至此,windows下MongoDB集群搭建完成。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:windows下mongodb集群搭建 - Python技术站