部署复制集
1. 为每个节点建立必要的数据文件夹:
1
|
mkdir
-p
/srv/mongodb/rs0-0
/srv/mongodb/rs0-1
/srv/mongodb/rs0-2
|
2. 通过下述命令来启动 mongod 实例:
第一个节点:
1
|
mongod --port 27017 --dbpath
/srv/mongodb/rs0-0
--replSet rs0 --smallfiles --oplogSize 128 --logappend --logpath
/srv/mongodb/rs0-0/mongod
.log &
|
第二个节点:
1
|
mongod --port 27018 --dbpath
/srv/mongodb/rs0-1
--replSet rs0 --smallfiles --oplogSize 128 --logappend --logpath
/srv/mongodb/rs0-1/mongod
.log &
|
第三个节点:
1
|
mongod --port 27019 --dbpath
/srv/mongodb/rs0-2
--replSet rs0 --smallfiles --oplogSize 128 --logappend --logpath
/srv/mongodb/rs0-2/mongod
.log &
|
3. 我们可以通过下列命令来连接到第一个实例:
1
|
mongo --port 27017
|
4. 在 mongo 中使用 rs.initiate() 来初始化复制集。我们可以通过下列方式来设定复制集配置对象:
1
2
3
4
5
6
7
8
9
|
rsconf = {
_id:
"rs0"
,
members: [
{
_id: 0,
host:
"<hostname>:27017"
}
]
}
|
5. 将 <hostname> 替换为我们的主机名
1
|
rs.initiate( rsconf )
|
6. 查看复制集配置
1
|
rs.conf()
|
7. 使用 mongo 连接到 primary,并用过 rs.add() 命令来添加第二个和第三个 mongod 实例到复制集中。 将 <hostname> 替换为我们的主机名。
1
2
|
rs.add(
"<hostname>:27018"
)
rs.add(
"<hostname>:27019"
)
|
8. 通过 rs.status() 命令来检查复制集的状态。
本文转自UltraSQL51CTO博客,原文链接: http://blog.51cto.com/ultrasql/1695908,如需转载请自行联系原作者