์์ฒด ๊ด๋ฆฌํ ์ค๋ ํด๋ฌ์คํฐ๋ฅผ ๋ค๋ฅธ ํ๋์จ์ด๋ก ๋ง์ด๊ทธ๋ ์ด์
์ด ํ์ด์ง์ ๋ด์ฉ
์ด ํํ ๋ฆฌ์ผ์ MongoDB 7.0์๋ง ํด๋น๋ฉ๋๋ค. MongoDB์ ์ด์ ๋ฒ์ ์ ๋ํด์๋ ํด๋น ๋ฒ์ ์ MongoDB ๋งค๋ด์ผ์ ์ฐธ์กฐํ์ธ์.
์ค๋ฉ๋ ํด๋ฌ์คํฐ์ config ์๋ฒ๋ ๋ณต์ ๋ณธ ์ธํธ ๋ก ๋ฐฐํฌ๋ฉ๋๋ค. ๋ณต์ ๋ณธ ์ธํธ ๊ตฌ์ฑ ์๋ฒ๋ WiredTiger ์คํ ๋ฆฌ์ง ์์ง์ ์คํ ํด์ผ ํฉ๋๋ค.
์ด ์ ์ฐจ๋ ์ฝ๊ธฐ ๋ฐ ์ฐ๊ธฐ๋ฅผ ์ํ ๋ค์ดํ์ ์์ด ์ค๋ฉ๋ ํด๋ฌ์คํฐ ์ ์ปดํฌ๋ํธ๋ฅผ ์ ํ๋์จ์ด ์์คํ ์ผ๋ก ์ด๋ํฉ๋๋ค.
์ค์
๋ง์ด๊ทธ๋ ์ด์ ์ด ์งํ๋๋ ๋์์๋ ์ค๋ ํด๋ฌ์คํฐ ๋ฉํ๋ฐ์ดํฐ ๋ก ๋ณ๊ฒฝํ๋ ค๊ณ ํ์ง ๋ง์ธ์. ์ด๋ค ๋ฐฉ์ ์ผ๋ก๋ ํด๋ฌ์คํฐ ๋ฉํ๋ฐ์ดํฐ ๋ฅผ ์์ ํ๋ ์์ ์ ์ฌ์ฉ ํ์ง ๋ง์ธ์ . ์๋ฅผ ๋ค์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ฑ ๋๋ ์ญ์ ํ๊ฑฐ๋, ์ปฌ๋ ์ ์ ์์ฑ ๋๋ ์ญ์ ํ๊ฑฐ๋, ์ค๋ฉ ๋ช ๋ น์ ์ฌ์ฉํ์ง ์์์ผ ํฉ๋๋ค.
๋ฐธ๋ฐ์ ๋นํ์ฑํ
๋ฐธ๋ฐ์๋ฅผ ๋นํ์ฑํํ์ฌ ์ฒญํฌ ๋ง์ด๊ทธ๋ ์ด์ ์ ์ค์งํ๊ณ ํ๋ก์ธ์ค๊ฐ ์๋ฃ๋ ๋๊น์ง ๋ฉํ๋ฐ์ดํฐ ์ฐ๊ธฐ ์์ ์ ์ํํ์ง ๋ง์ธ์. ์งํ ์ค์ธ ๋ง์ด๊ทธ๋ ์ด์ ์ด ์๋ค๋ฉด, ๋ฐธ๋ฐ์๋ ์ ์งํ๊ธฐ ์ ์ ์งํ ์ค์ธ ๋ง์ด๊ทธ๋ ์ด์ ์ ์๋ฃํฉ๋๋ค.
๋ฐธ๋ฐ์๋ฅผ ๋นํ์ฑํํ๋ ค๋ฉด ํด๋ฌ์คํฐ์ mongos
์ธ์คํด์ค ์ค ํ๋์ ์ฐ๊ฒฐํ๊ณ ๋ค์ ๋ฐฉ๋ฒ์ ์คํํฉ๋๋ค. [1]
sh.stopBalancer()
๋ฐธ๋ฐ์ ์ํ๋ฅผ ํ์ธํ๋ ค๋ฉด sh.getBalancerState()
๋ฉ์๋๋ฅผ ์คํํฉ๋๋ค.
์์ธํ ๋ด์ฉ์ ๋ฐธ๋ฐ์ ๋นํ์ฑํ๋ฅผ ์ฐธ์กฐํ์ธ์.
[1] | MongoDB์์ ์์ํ๊ธฐ 6.0.3๋ถํฐ ์๋ ์ฒญํฌ ๋ถํ ์ด ์ํ๋์ง ์์ต๋๋ค. ์ด๋ ๋ฐธ๋ฐ์ฑ ์ ์ฑ
๊ฐ์ ๋๋ฌธ์
๋๋ค. ์๋ ๋ถํ ๋ช
๋ น์ ์ฌ์ ํ ์กด์ฌํ์ง๋ง ์์
์ ์ํํ์ง ์์ต๋๋ค. MongoDB 6.0.3 ์ด์ ๋ฒ์ ์์ sh.stopBalancer() ๋ ์ค๋ฉ๋ ํด๋ฌ์คํฐ์ ๋ํ ์๋ ๋ถํ ๋ ๋นํ์ฑํํฉ๋๋ค. |
๊ฐ config MongoDB Server๋ฅผ ๋ณ๋๋ก ๋ง์ด๊ทธ๋ ์ด์
์ค๋ฉ๋ ํด๋ฌ์คํฐ์ ๊ตฌ์ฑ ์๋ฒ๋ ๋ณต์ ๋ณธ ์ธํธ(CSRS)๋ก ๋ฐฐํฌ๋ ์ ์์ต๋๋ค. ๊ตฌ์ฑ ์๋ฒ์ ๋ณต์ ๋ณธ ์ธํธ๋ฅผ ์ฌ์ฉํ๋ฉด ๊ตฌ์ฑ ๋ฐ์ดํฐ์ ๋ํ ํ์ค ๋ณต์ ๋ณธ ์ธํธ ์ฝ๊ธฐ ๋ฐ ์ฐ๊ธฐ ํ๋กํ ์ฝ์ ํ์ฉํ ์ ์์ผ๋ฏ๋ก ๊ตฌ์ฑ ์๋ฒ ์ ์ฒด์์ ์ผ๊ด์ฑ์ด ํฅ์๋ฉ๋๋ค. ๋ํ, ๊ตฌ์ฑ ์๋ฒ์ ๋ณต์ ๋ณธ ์ธํธ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ณต์ ๋ณธ ์ธํธ์ ์ต๋ 50๋ช ์ ๊ตฌ์ฑ์์ด ์์ ์ ์์ผ๋ฏ๋ก ์ค๋ฉ๋ ํด๋ฌ์คํฐ์ 3๊ฐ ์ด์์ ๊ตฌ์ฑ ์๋ฒ๋ฅผ ๋ณด์ ํ ์ ์์ต๋๋ค. ๊ตฌ์ฑ ์๋ฒ๋ฅผ ๋ณต์ ๋ณธ ์ธํธ๋ก ๋ฐฐํฌํ๋ ค๋ฉด ๊ตฌ์ฑ ์๋ฒ์์ WiredTiger ์คํ ๋ฆฌ์ง ์์ง์์คํํด์ผ ํฉ๋๋ค.
config ์๋ฒ์ ์ฌ์ฉํ ๊ฒฝ์ฐ ๋ณต์ ๋ณธ ์ธํธ ๊ตฌ์ฑ์ ๋ค์๊ณผ ๊ฐ์ ์ ํ์ด ์ ์ฉ๋ฉ๋๋ค.
์ค์ฌ์๊ฐ ์์ด์ผ ํฉ๋๋ค.
์ง์ฐ๋ ๋ฉค๋ฒ๊ฐ ์์ด์ผ ํฉ๋๋ค.
์ธ๋ฑ์ค๋ฅผ ์์ฑํด์ผ ํฉ๋๋ค(์:
members[n].buildIndexes
์ค์ ์ด false๋ก ์ค์ ๋ ๋ ธ๋๊ฐ ์์ด์ผ ํฉ๋๋ค).
config ์๋ฒ ๋ณต์ ๋ณธ ์ธํธ์ ๊ฐ ๋ฉค๋ฒ์ ๋ํด ๋ค์์ ์ํํฉ๋๋ค.
์ค์
ํ๋ผ์ด๋จธ๋ฆฌ๋ฅผ ๊ต์ฒดํ๊ธฐ ์ ์ ์ธ์ปจ๋๋ฆฌ ๋ฉค๋ฒ๋ฅผ ๊ต์ฒดํฉ๋๋ค.
๊ต์ฒด config ์๋ฒ๋ฅผ ์์ํฉ๋๋ค.
--configsvr
, --replSet
, --bind_ip
์ต์
๋ฐ ๋ฐฐํฌ์๋ฒ์ ์ ํฉํ ๊ธฐํ ์ต์
์ ์ง์ ํ์ฌ mongod
์ธ์คํดํธ๋ฅผ ์์ํฉ๋๋ค.
๊ฒฝ๊ณ
์ธ์คํด์ค๋ฅผ ๊ณต๊ฐ์ ์ผ๋ก ์ ๊ทผ ๊ฐ๋ฅํ IP ์ฃผ์์ ๋ฐ์ธ๋ฉํ๊ธฐ ์ ์ ๋ฌด๋จ ์ ๊ทผ์ผ๋ก๋ถํฐ ํด๋ฌ์คํฐ๋ฅผ ๋ณดํธํด์ผ ํฉ๋๋ค. ๋ณด์ ๊ถ์ฅ ์ฌํญ์ ์ ์ฒด ๋ชฉ๋ก์ ์์ฒด ๊ด๋ฆฌ ๋ฐฐํฌ์๋ฒ์ ๋ํ ๋ณด์ ๊ฒ์ฌ ๋ชฉ๋ก์ ์ฐธ์กฐํ์ธ์. ์ต์ํ ์ธ์ฆ์ ํ์ฑํํ๊ณ ๋คํธ์ํฌ ์ธํ๋ผ๋ฅผ ๊ฐํํ๋ ๊ฒ์ ๊ณ ๋ คํฉ๋๋ค.
mongod --configsvr --replSet <replicaSetName> --bind_ip localhost,<hostname(s)|ip address(es)>
์ config ์๋ฒ๋ฅผ ๋ณต์ ๋ณธ ์ธํธ์ ์ถ๊ฐํฉ๋๋ค.
mongosh
๋ฅผ config ์๋ฒ ๋ณต์ ๋ณธ ์ธํธ์ ํ๋ผ์ด๋จธ๋ฆฌ์ ์ฐ๊ฒฐํ๊ณ rs.add()
๋ฅผ ์ฌ์ฉํ์ฌ ์ ๋ฉค๋ฒ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
๊ฒฝ๊ณ
MongoDB 5.0 ์ด์ ์๋ ๋ฐ์ดํฐ๊ฐ ์ผ๊ด๋ ๋๊น์ง ์๋ก ์ถ๊ฐ๋ ๋ณด์กฐ ์๋ฒ๊ฐ ์ฝ๊ธฐ ์์
์ ์ํํ๊ฑฐ๋ ๊ธฐ๋ณธ ์๋ฒ๊ฐ ๋ ์ ์๋๋ผ๋ ์ฌ์ ํ ํฌํ ๋ฉค๋ฒ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. 5.0 ์ด์ ๋ฒ์ ์ MongoDB๋ฅผ ์คํ ์ค์ด๊ณ votes
๋ฐ priority
์ค์ ์ด 0๋ณด๋ค ํฐ ๋ณด์กฐ๋ฅผ ์ถ๊ฐํ๋ ๊ฒฝ์ฐ, ํฌํ ํ์์ ๊ณผ๋ฐ์๊ฐ ์จ๋ผ์ธ ์ํ์ด์ง๋ง ๊ธฐ๋ณธ ํ์์ ์ ์ถํ ์ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ํฉ์ ๋ฐฉ์งํ๋ ค๋ฉด priority :0
๋ฐ votes :0
๋ก ์ ๋ณด์กฐ๋ฅผ ์ฒ์์ ์ถ๊ฐํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ rs.status()
๋ฅผ ์คํํ์ฌ ๋ฉค๋ฒ๊ฐ SECONDARY
์ํ๋ก ์ ํ๋์๋์ง ํ์ธํฉ๋๋ค. ๋ง์ง๋ง์ผ๋ก rs.reconfig()
๋ฅผ ์ฌ์ฉํ์ฌ ์ฐ์ ์์์ ํฌํ๋ฅผ ์
๋ฐ์ดํธํ์ธ์.
rs.add( { host: "<hostnameNew>:<portNew>", priority: 0, votes: 0 } )
์ด๊ธฐ ๋๊ธฐํ ํ๋ก์ธ์ค๋ ๋ค์ ์์ํ์ง ์๊ณ ๋ config ์๋ฒ ๋ณต์ ๋ณธ ์ธํธ์ ํ ๋ ธ๋์ ์๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ธ๋๋ก ๋ณต์ฌํฉ๋๋ค.
mongos
์ธ์คํด์ค๋ ๋ค์ ์์ํ์ง ์๊ณ ๋ config ์๋ฒ ๋ณต์ ๋ณธ ์ธํธ ๋ฉค๋ฒ์ ๋ณ๊ฒฝ ์ฌํญ์ ์๋์ผ๋ก ์ธ์ํฉ๋๋ค.
์๋ก ์ถ๊ฐ๋ ์ค์ ์๋ฒ์ ํฌํ ๋ฐ ์ฐ์ ์์ ์ค์ ์ ์ ๋ฐ์ดํธํฉ๋๋ค.
์ ๋ฉค๋ฒ๊ฐ
SECONDARY
์ํ์ ๋๋ฌํ๋์ง ํ์ธํฉ๋๋ค. ๋ณต์ ๋ณธ ์ธํธ ๋ฉค๋ฒ์ ์ํ๋ฅผ ํ์ธํ๋ ค๋ฉดrs.status()
๋ฅผ ์คํํฉ๋๋ค.rs.status() ๋ณต์ ๋ณธ ์ธํธ๋ฅผ ์ฌ๊ตฌ์ฑํ์ฌ ์ ๋ฉค๋ฒ์ ํฌํ์ ์ฐ์ ์์๋ฅผ ์ ๋ฐ์ดํธํฉ๋๋ค.
var cfg = rs.conf(); cfg.members[n].priority = 1; // Substitute the correct array index for the new member cfg.members[n].votes = 1; // Substitute the correct array index for the new member rs.reconfig(cfg) ์ฌ๊ธฐ์
n
๋members
๋ฐฐ์ด์ ์๋ ์ ๋ ธ๋์ ๋ฐฐ์ด ์ธ๋ฑ์ค์ ๋๋ค.
๊ฒฝ๊ณ
rs.reconfig()
2} ์ ธ ๋ฉ์๋๋ ํ์ฌ ๊ธฐ๋ณธ๊ฐ์ด ๊ฐ์ ๋ก ๋ฌผ๋ฌ๋๋๋ก ํ์ฌ ์ ๊ฑฐ๋ฅผ ์ค์ํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ ์ฐ๊ฒฐ์ด ์ข ๋ฃ๋๋ฉดmongod
๋ชจ๋ ํด๋ผ์ด์ธํธ ์ฐ๊ฒฐ์ ๋ซ์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก 10~20์ด ์ ๋ ์์๋์ง๋ง ์์ฝ๋ ์ ์ง ๊ด๋ฆฌ ๊ธฐ๊ฐ ๋์ ์ด๋ฌํ ๋ณ๊ฒฝ์ ์ํํด ๋ณด์ธ์.์ ํจ์ฑ ๊ฒ์ฌ ๊ท์น์ MongoDB ๋ฒ์ ๋ง๋ค ๋ค๋ฅผ ์ ์์ผ๋ฏ๋ก ๋ค๋ฅธ MongoDB ๋ฒ์ ์ ๋ฉค๋ฒ๋ฅผ ํฌํจํ๋ ๋ณต์ ๋ณธ ์ธํธ๋ฅผ ๋ค์ ๊ตฌ์ฑํ์ง ๋ง์ญ์์ค.
config ์๋ฒ ๋ณต์ ๋ณธ ์ธํธ์์ ๊ต์ฒดํ ๋ ธ๋๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
๊ต์ฒด config ์๋ฒ์ ์ด๊ธฐ ๋๊ธฐํ๊ฐ ์๋ฃ๋๋ฉด ํ๋ผ์ด๋จธ๋ฆฌ์ ์ฐ๊ฒฐ๋ mongosh
์ธ์
์์ rs.remove()
๋ฅผ ์ฌ์ฉํ์ฌ ์ด์ ๋ฉค๋ฒ๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
rs.remove("<hostnameOld>:<portOld>")
mongos
์ธ์คํด์ค๋ ๋ค์ ์์ํ์ง ์๊ณ ๋ config ์๋ฒ ๋ณต์ ๋ณธ ์ธํธ ๋ฉค๋ฒ์ ๋ณ๊ฒฝ ์ฌํญ์ ์๋์ผ๋ก ์ธ์ํฉ๋๋ค.
์ธ์คํด์ค ๋ค์ mongos
์์
๋ณต์ ๋ณธ ์ธํธ ๊ตฌ์ฑ ์๋ฒ์ ๊ฒฝ์ฐ mongos
์ธ์คํด์ค๋ --configdb
๋๋ sharding.configDB
์ค์ ์์ ๊ตฌ์ฑ ์๋ฒ ๋ณต์ ๋ณธ ์ธํธ ์ด๋ฆ๊ณผ ๋ณต์ ๋ณธ ์ธํธ ๋ฉค๋ฒ ์ค ํ๋ ์ด์์ ์ง์ ํฉ๋๋ค. ์ค๋ ํด๋ฌ์คํฐ์ mongos
์ธ์คํด์ค๋ ๋์ผํ config ์๋ฒ ๋ณต์ ๋ณธ ์ธํธ ์ด๋ฆ์ ์ง์ ํด์ผ ํ์ง๋ง ๋ณต์ ๋ณธ ์ธํธ์ ๋ค๋ฅธ ๋ฉค๋ฒ๋ฅผ ์ง์ ํ ์ ์์ต๋๋ค.
mongos
์ธ์คํด์ค๊ฐ --configdb
๋๋ sharding.configDB
์ค์ ์์ ๋ง์ด๊ทธ๋ ์ด์
๋ ๋ณต์ ๋ณธ ์ธํธ ๋ฉค๋ฒ๋ฅผ ์ง์ ํ๋ ๊ฒฝ์ฐ ๋ค์์ mongos
์ธ์คํด์ค๋ฅผ ๋ค์ ์์ํ ๋๋ฅผ ์ํด config ์๋ฒ ์ค์ ์ ์
๋ฐ์ดํธํฉ๋๋ค.
์์ธํ ๋ด์ฉ ์ ์ค๋ ํด๋ฌ์คํฐ์ ๋ํด mongos
์์์ ์ฐธ์กฐํ์ธ์.
์ค๋ ๋ง์ด๊ทธ๋ ์ด์
์ค๋๋ฅผ ํ ๋ฒ์ ํ๋์ฉ ๋ง์ด๊ทธ๋ ์ด์ ํฉ๋๋ค. ๊ฐ ์ค๋์ ๋ํด ์ด ์น์ ์์ ์ ์ ํ ์ ์ฐจ๋ฅผ ๋ฐ๋ฅด์ธ์.
๋ณต์ ๋ณธ ์ธํธ ์ค๋ ๋ง์ด๊ทธ๋ ์ด์
์ค๋ ํด๋ฌ์คํฐ๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ค๋ฉด ๊ฐ ๋ฉค๋ฒ๋ฅผ ๋ณ๋๋ก ๋ง์ด๊ทธ๋ ์ด์ ํฉ๋๋ค. ๋จผ์ ๋นํ๋ผ์ด๋จธ๋ฆฌ ๋ฉค๋ฒ๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ ๋ค์ ํ๋ผ์ด ๋จธ๋ฆฌ ๋ฉค๋ฒ๋ฅผ ๋ง์ง๋ง์ผ๋ก ๋ง์ด๊ทธ๋ ์ด์ ํฉ๋๋ค.
๋ณต์ ๋ณธ ์ธํธ์ ๋ ๋ช ์ ํฌํ ๋ฉค๋ฒ๊ฐ ์๋ ๊ฒฝ์ฐ ๋ณต์ ๋ณธ ์ธํธ์ ์ค์ฌ์ ๋ฅผ ์ถ๊ฐํ์ฌ ๋ง์ด๊ทธ๋ ์ด์ ์ค์ ์ธํธ๊ฐ ํฌํ์ ๊ณผ๋ฐ์๋ฅผ ์ฌ์ฉํ ์ ์๋๋ก ํฉ๋๋ค. ๋ง์ด๊ทธ๋ ์ด์ ์ ์๋ฃํ ํ ์ค์ฌ์๋ฅผ ์ ๊ฑฐํ ์ ์์ต๋๋ค.
๋ณต์ ๋ณธ ์ธํธ ์ค๋์ ๋ ธ๋ ๋ง์ด๊ทธ๋ ์ด์
mongod
ํ๋ก์ธ์ค๋ฅผ ์ข ๋ฃํฉ๋๋ค. ์ ์์ ์ผ๋ก ์ข ๋ฃํ๋ ค๋ฉดshutdown
๋ช ๋ น์ ์ฌ์ฉํฉ๋๋ค.๋ฐ์ดํฐ ๋๋ ํ ๋ฆฌ(์:
dbPath
)๋ฅผ ์ ์ปดํจํฐ๋ก ์ด๋ํฉ๋๋ค.์ ์์น์์
mongod
ํ๋ก์ธ์ค๋ฅผ ๋ค์ ์์ํฉ๋๋ค.๋ณต์ ๋ณธ ์ธํธ์ ํ์ฌ ํ๋ผ์ด๋จธ๋ฆฌ์ ์ฐ๊ฒฐํฉ๋๋ค.
๋ฉค๋ฒ์ ํธ์คํธ ์ด๋ฆ์ด ๋ณ๊ฒฝ๋ ๊ฒฝ์ฐ
rs.reconfig()
๋ฅผ ์ฌ์ฉํ์ฌ ๋ณต์ ๋ณธ ์ธํธ ๊ตฌ์ฑ ๋ฌธ์ ๋ฅผ ์ ํธ์คํธ ์ด๋ฆ์ผ๋ก ์ ๋ฐ์ดํธํฉ๋๋ค.์๋ฅผ ๋ค์ด, ๋ค์ ๋ช ๋ น ์ํ์ค๋
members
๋ฐฐ์ด์2
์์น์ ์๋ ์ธ์คํด์ค์ ํธ์คํธ ์ด๋ฆ์ ์ ๋ฐ์ดํธํฉ๋๋ค.cfg = rs.conf() cfg.members[2].host = "pocatello.example.net:27018" rs.reconfig(cfg) ๊ตฌ์ฑ ๋ฌธ์ ์ ๋ฐ์ดํธ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์์๋ฅผ ์ฐธ์กฐํ์ธ์.
์ ๊ตฌ์ฑ์ ํ์ธํ๋ ค๋ฉด
rs.conf()
์คํํฉ๋๋ค.๋ฉค๋ฒ๊ฐ ๋ณต๊ตฌ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฝ๋๋ค. ๋ฉค๋ฒ์ ์ํ๋ฅผ ํ์ธํ๋ ค๋ฉด
rs.status()
๋ฅผ ์คํํฉ๋๋ค.
๋ณต์ ๋ณธ ์ธํธ ์ค๋์์ ํ๋ผ์ด๋จธ๋ฆฌ ๋ง์ด๊ทธ๋ ์ด์
๋ณต์ ๋ณธ ์ธํธ์ ํ๋ผ์ด๋จธ๋ฆฌ๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ๋์ ์ธํธ๋ ์ ํ๋ผ์ด๋จธ๋ฆฌ๋ฅผ ์ ํํด์ผ ํฉ๋๋ค. ์ด ํ์ผ์ค๋ฒ ํ๋ก์ธ์ค๋ ํฌํ ๊ธฐ๊ฐ ๋์ ๋ณต์ ๋ณธ ์ธํธ๋ฅผ ์ฌ์ฉํ์ฌ ์ฝ๊ธฐ ๋๋ ์ฐ๊ธฐ ํ์ฉ์ ๋ถ๊ฐ๋ฅํ๊ฒ ํ๋ฉฐ, ์ผ๋ฐ์ ์ผ๋ก ๋น ๋ฅด๊ฒ ์๋ฃ๋ฉ๋๋ค. ๊ฐ๋ฅํ๋ฉด ์ ์ง ๊ด๋ฆฌ ๊ธฐ๊ฐ ๋์ ๋ง์ด๊ทธ๋ ์ด์ ์ ๊ณํํ์ธ์.
์ ์์ ์ธ ํ์ผ์ค๋ฒ ํ๋ก์ธ์ค๋ฅผ ํ์ฉํ๋ ค๋ฉด ํ๋ผ์ด๋จธ๋ฆฌ๋ฅผ ๋จ๊ณ์ ์ผ๋ก ๋ฎ์ถฅ๋๋ค. ํ๋ผ์ด๋จธ๋ฆฌ๋ฅผ ๋จ๊ณ์ ์ผ๋ก ๋ฎ์ถ๋ ค๋ฉด ํ๋ผ์ด๋จธ๋ฆฌ์ ์ฐ๊ฒฐํ์ฌ
replSetStepDown
๋ช ๋ น ๋๋rs.stepDown()
๋ฉ์๋๋ฅผ ์คํํฉ๋๋ค. ๋ค์ ์๋rs.stepDown()
๋ฉ์๋๋ฅผ ๋ณด์ฌ์ค๋๋ค.rs.stepDown() ํ๋ผ์ด๋จธ๋ฆฌ๊ฐ ๋ฌผ๋ฌ๋๊ณ ๋ค๋ฅธ ๋ฉค๋ฒ๊ฐ
PRIMARY
์ํ๊ฐ ๋ ๊ฒฝ์ฐ. ๋ฌผ๋ฌ๋ ํ๋ผ์ด๋จธ๋ฆฌ๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ค๋ฉด ๋ณต์ ๋ณธ ์ธํธ ์ค๋์ ๊ตฌ์ฑ์ ๋ง์ด๊ทธ๋ ์ด์ ์ ์ฐจ๋ฅผ ๋ฐ๋ฅด์ธ์.rs.status()
์ถ๋ ฅ์ ํ์ธํ์ฌ ์ํ ๋ณ๊ฒฝ์ ํ์ธํ ์ ์์ต๋๋ค.
๋ฐธ๋ฐ์ ๋ค์ ํ์ฑํ
๋ง์ด๊ทธ๋ ์ด์ ์ ์๋ฃํ๋ ค๋ฉด ๋ฐธ๋ฐ์๋ฅผ ๋ค์ ํ์ฑํํ์ฌ ์ฒญํฌ ๋ง์ด๊ทธ๋ ์ด์ ์ ์ฌ๊ฐํฉ๋๋ค.
ํด๋ฌ์คํฐ์ mongos
์ธ์คํด์ค ์ค ํ๋์ ์ฐ๊ฒฐํ๊ณ true
์ sh.startBalancer()
๋ฉ์๋์ ์ ๋ฌํฉ๋๋ค: [2]
sh.startBalancer()
๋ฐธ๋ฐ์ ์ํ๋ฅผ ํ์ธํ๋ ค๋ฉด sh.getBalancerState()
๋ฉ์๋๋ฅผ ์คํํฉ๋๋ค.
์์ธํ ๋ด์ฉ์ ๋ฐธ๋ฐ์ ํ์ฑํ๋ฅผ ์ฐธ์กฐํ์ธ์.
[2] | MongoDB 6.0.3๋ถํฐ๋ ๋ฐธ๋ฐ์ฑ ์ ์ฑ
์ ๊ฐ์ ์ผ๋ก ์ธํด ์๋ ์ฒญํฌ ๋ถํ ์ด ์ํ๋์ง ์์ต๋๋ค. ์๋ ๋ถํ ๋ช
๋ น์ ์ฌ์ ํ ์กด์ฌํ์ง๋ง ์์
์ ์ํํ์ง๋ ์์ต๋๋ค. MongoDB 6.0.3 ์ด์ ๋ฒ์ ์์ sh.startBalancer() ๋ ์ค๋ฉ๋ ํด๋ฌ์คํฐ์ ๋ํ ์๋ ๋ถํ ๋ ํ์ฑํํฉ๋๋ค. |