🤖정보보안/💠1분지식
[정보] MongoDB Replica Set 구성법(우분투 3EA)
TwoIceFish
2024. 7. 26. 00:40
우분투 호스트 3EA에 메인 노드 및 조인노드 2개를 가정하고 설명한다.
각 몽고DB 설정파일에 레플리카 이름을 설정한다
vim /etc/mongod.conf
replication:
replSetName: "rs0"
몽고DB를 재시작 한다
systemctl restart mongod
마스터 노드의 몽고DB 접속 후 다음 명령어를 입력한다.
rs.initiate( {
_id : "rs0",
members: [
{ _id: 0, host: "192.168.0.131:27017" },
{ _id: 1, host: "192.168.0.132:27017" },
{ _id: 2, host: "192.168.0.133:27017" }
]
})
적용 결과를 확인하다.
rs.conf()
rs0:PRIMARY> rs.conf()
{
"_id" : "rs0",
"version" : 1,
"term" : 1,
"protocolVersion" : NumberLong(1),
"writeConcernMajorityJournalDefault" : true,
"members" : [
{
"_id" : 0,
"host" : "192.168.0.131:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
},
{
"_id" : 1,
"host" : "192.168.0.132:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
},
{
"_id" : 2,
"host" : "192.168.0.133:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
}
],
"settings" : {
"chainingAllowed" : true,
"heartbeatIntervalMillis" : 2000,
"heartbeatTimeoutSecs" : 10,
"electionTimeoutMillis" : 10000,
"catchUpTimeoutMillis" : -1,
"catchUpTakeoverDelayMillis" : 30000,
"getLastErrorModes" : {
},
"getLastErrorDefaults" : {
"w" : 1,
"wtimeout" : 0
},
"replicaSetId" : ObjectId("66a27110f4e019bb33cfd89c")
}
}