Docs Menu

rs.initiate()

rs.initiate(configuration)

๋ณต์ œ๋ณธ ์„ธํŠธ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์„ ํƒ์ ์œผ๋กœ ๋ฉ”์„œ๋“œ๋Š” ๋ณต์ œ๋ณธ ์„ธํŠธ์˜ ๊ตฌ์„ฑ์„ ๋‹ด๊ณ  ์žˆ๋Š” ๋ฌธ์„œ ํ˜•์‹์˜ ์ธ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ค‘์š”

Mongo์‰ฌ ๋ฐฉ๋ฒ•

์ด ํŽ˜์ด์ง€์—์„œ๋Š” mongosh ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ช…๋ น ๋˜๋Š” Node.js์™€ ๊ฐ™์€ ์–ธ์–ด๋ณ„ ๋“œ๋ผ์ด๋ฒ„์— ๋Œ€ํ•œ ์„ค๋ช…์„œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ช…๋ น์— ๋Œ€ํ•ด์„œ๋Š” replSetInitiate ๋ช…๋ น์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

MongoDB API ๋“œ๋ผ์ด๋ฒ„์˜ ๊ฒฝ์šฐ ์–ธ์–ด๋ณ„ MongoDB ๋“œ๋ผ์ด๋ฒ„ ์„ค๋ช…์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

rs.initiate() ๋ฉ”์„œ๋“œ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

Parameter
์œ ํ˜•
์„ค๋ช…

configuration

๋ฌธ์„œ

์„ ํƒ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ์ƒˆ ๋ณต์ œ๋ณธ ์„ธํŠธ์— ๋Œ€ํ•œ ๊ตฌ์„ฑ์„ ์ง€์ •ํ•˜๋Š” ๋ฌธ์„œ์ž…๋‹ˆ๋‹ค. ๊ตฌ์„ฑ์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด MongoDB๋Š” ๊ธฐ๋ณธ ๋ณต์ œ๋ณธ ์„ธํŠธ ๊ตฌ์„ฑ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฉ”์„œ๋“œ๋Š” ๋‹ค์Œ ํ™˜๊ฒฝ์—์„œ ํ˜ธ์ŠคํŒ…๋˜๋Š” ๋ฐฐํฌ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • MongoDB Enterprise: MongoDB์˜ ๊ตฌ๋… ๊ธฐ๋ฐ˜ ์ž์ฒด ๊ด€๋ฆฌ ๋ฒ„์ „

  • MongoDB Community: MongoDB์˜ ์†Œ์Šค ์‚ฌ์šฉ ๊ฐ€๋Šฅ ๋ฌด๋ฃŒ ์ž์ฒด ๊ด€๋ฆฌ ๋ฒ„์ „

๊ฒฝ๊ณ 

์ธ์Šคํ„ด์Šค๋ฅผ ๊ณต๊ฐœ์ ์œผ๋กœ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ IP ์ฃผ์†Œ์— ๋ฐ”์ธ๋”ฉํ•˜๊ธฐ ์ „์— ๋ฌด๋‹จ ์ ‘๊ทผ์œผ๋กœ๋ถ€ํ„ฐ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋ณดํ˜ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ณด์•ˆ ๊ถŒ์žฅ ์‚ฌํ•ญ์˜ ์ „์ฒด ๋ชฉ๋ก์€ ์ž์ฒด ๊ด€๋ฆฌ ๋ฐฐํฌ์„œ๋ฒ„์— ๋Œ€ํ•œ ๋ณด์•ˆ ๊ฒ€์‚ฌ ๋ชฉ๋ก์„ ์ฐธ์กฐํ•˜์„ธ์š”. ์ตœ์†Œํ•œ ์ธ์ฆ์„ ํ™œ์„ฑํ™”ํ•˜๊ณ  ๋„คํŠธ์›Œํฌ ์ธํ”„๋ผ๋ฅผ ๊ฐ•ํ™”ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค.

2} ๋ฐmongod MongoDB mongos ๋ฐ”์ด๋„ˆ๋ฆฌ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๋กœ์ปฌ ํ˜ธ์ŠคํŠธ์— ๋ฐ”์ธ๋”ฉ๋ฉ๋‹ˆ๋‹ค. ๋ฐ”์ด๋„ˆ๋ฆฌ์— ๋Œ€ํ•ด net.ipv6 ๊ตฌ์„ฑ ํŒŒ์ผ ์„ค์ • ๋˜๋Š” --ipv6 ๋ช…๋ น์ค„ ์˜ต์…˜์ด ์„ค์ •๋˜์–ด ์žˆ์œผ๋ฉด ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ๋กœ์ปฌ ํ˜ธ์ŠคํŠธ IPv6 ์ฃผ์†Œ์— ์ถ”๊ฐ€์ ์œผ๋กœ ๋ฐ”์ธ๋”ฉ๋ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ ๋กœ์ปฌ ํ˜ธ์ŠคํŠธ์— ๋ฐ”์ธ๋”ฉ๋œ mongod ๋ฐ mongos๋Š” ๋™์ผํ•œ ์ปดํ“จํ„ฐ์—์„œ ์‹คํ–‰ ์ค‘์ธ ํด๋ผ์ด์–ธํŠธ์˜ ์—ฐ๊ฒฐ๋งŒ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฐ”์ธ๋”ฉ ๋™์ž‘์—๋Š” mongosh ๋ฐ ๋ณต์ œ๋ณธ ์ง‘ํ•ฉ ๋˜๋Š” ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋‹ค๋ฅธ ๋ฉค๋ฒ„๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์›๊ฒฉ ํด๋ผ์ด์–ธํŠธ๋Š” ๋กœ์ปฌ ํ˜ธ์ŠคํŠธ์—๋งŒ ๋ฐ”์ธ๋”ฉ๋œ ๋ฐ”์ด๋„ˆ๋ฆฌ์—๋Š” ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ๋ฐ”์ธ๋”ฉ์„ ์žฌ์ •์˜ํ•˜๊ณ  ๋‹ค๋ฅธ IP ์ฃผ์†Œ์— ๋ฐ”์ธ๋”ฉํ•˜๋ ค๋ฉด net.bindIp ๊ตฌ์„ฑ ํŒŒ์ผ ์„ค์ • ๋˜๋Š” --bind_ip ๋ช…๋ น์ค„ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„ ๋˜๋Š” IP ์ฃผ์†Œ ๋ชฉ๋ก์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

๊ฒฝ๊ณ 

MongDB 5.0๋ถ€ํ„ฐ IP ์ฃผ์†Œ๋กœ๋งŒ ๊ตฌ์„ฑ๋œ ๋ถ„ํ•  ์ˆ˜ํ‰(split horizon) DNS ๋…ธ๋“œ๊ฐ€ ์‹œ์ž‘ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ์‹คํŒจํ•˜๊ณ  ์˜ค๋ฅ˜๋ฅผ ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค. disableSplitHorizonIPCheck์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ mongod ์ธ์Šคํ„ด์Šค๋Š” ๋กœ์ปฌ ํ˜ธ์ŠคํŠธ์™€ IP ์ฃผ์†Œ 198.51.100.1 ์™€ ์—ฐ๊ฒฐ๋œ ํ˜ธ์ŠคํŠธ๋ช… My-Example-Associated-Hostname์— ๋ชจ๋‘ ๋ฐ”์ธ๋”ฉ๋ฉ๋‹ˆ๋‹ค.

mongod --bind_ip localhost,My-Example-Associated-Hostname

์ด ์ธ์Šคํ„ด์Šค์— ์—ฐ๊ฒฐํ•˜๋ ค๋ฉด ์›๊ฒฉ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„ ๋˜๋Š” ๊ด€๋ จ IP ์ฃผ์†Œ 198.51.100.1๋ฅผ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

mongosh --host My-Example-Associated-Hostname
mongosh --host 198.51.100.1

๋ณต์ œ๋ณธ ์„ธํŠธ ๊ตฌ์„ฑ ๋ฌธ์„œ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋ณต์ œ๋ณธ ์„ธํŠธ ๊ตฌ์„ฑ ๋ฌธ์„œ ์˜ˆ์‹œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์ค‘์š”

๋ณ€๊ฒฝ๋œ IP ์ฃผ์†Œ๋กœ ์ธํ•ด ๊ตฌ์„ฑ์ด ์—…๋ฐ์ดํŠธ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด IP ์ฃผ์†Œ ๋Œ€์‹  DNS ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์„ธ์š”. ํŠนํžˆ ๋ณต์ œ๋ณธ ์„ธํŠธ ๊ตฌ์„ฑ์› ๋˜๋Š” ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ๊ตฌ์„ฑ์›์„ ๊ตฌ์„ฑํ•  ๋•Œ IP ์ฃผ์†Œ ๋Œ€์‹  DNS ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

IP ์ฃผ์†Œ ๋Œ€์‹  ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํ”Œ๋ฆฟ ๋„คํŠธ์›Œํฌ ํ˜ธ๋ผ์ด์ฆŒ ์ „๋ฐ˜์— ๊ฑธ์ณ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜์„ธ์š”. MongoDB 5.0๋ถ€ํ„ฐ IP ์ฃผ์†Œ๋กœ๋งŒ ๊ตฌ์„ฑ๋œ ๋…ธ๋“œ๋Š” ์Šคํƒ€ํŠธ์—… ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ์‹คํŒจํ•˜๋ฉฐ ์‹œ์ž‘๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ์˜ˆ์‹œ์—์„œ๋Š” ๋ฉค๋ฒ„๊ฐ€ 3๊ฐœ์ธ ์ƒˆ ๋ณต์ œ๋ณธ ์ง‘ํ•ฉ์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

mongod ์ธ์Šคํ„ด์Šค 3๊ฐœ๋Š” --replSet ๋ช…๋ น์ค„ ์˜ต์…˜(๋˜๋Š” ๊ตฌ์„ฑ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ replication.replSetName)์ด myReplSet๋กœ ์„ค์ •๋œ ์ƒํƒœ์—์„œ ์‹œ์ž‘๋˜์–ด์•ผ ํ•˜๋ฉฐ --bind_ip(๋˜๋Š” ๊ตฌ์„ฑ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ net.bindIp)๋ฅผ ์ ์ ˆํ•˜๊ฒŒ ์„ค์ •ํ•˜์—ฌ ๋ณต์ œ๋ณธ ์„ธํŠธ์˜ ๋‹ค๋ฅธ ๋ฉค๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฒฝ๊ณ 

์ธ์Šคํ„ด์Šค๋ฅผ ๊ณต๊ฐœ์ ์œผ๋กœ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ IP ์ฃผ์†Œ์— ๋ฐ”์ธ๋”ฉํ•˜๊ธฐ ์ „์— ๋ฌด๋‹จ ์ ‘๊ทผ์œผ๋กœ๋ถ€ํ„ฐ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋ณดํ˜ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ณด์•ˆ ๊ถŒ์žฅ ์‚ฌํ•ญ์˜ ์ „์ฒด ๋ชฉ๋ก์€ ์ž์ฒด ๊ด€๋ฆฌ ๋ฐฐํฌ์„œ๋ฒ„์— ๋Œ€ํ•œ ๋ณด์•ˆ ๊ฒ€์‚ฌ ๋ชฉ๋ก์„ ์ฐธ์กฐํ•˜์„ธ์š”. ์ตœ์†Œํ•œ ์ธ์ฆ์„ ํ™œ์„ฑํ™”ํ•˜๊ณ  ๋„คํŠธ์›Œํฌ ์ธํ”„๋ผ๋ฅผ ๊ฐ•ํ™”ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค.

mongosh๋ฅผ mongod ์ธ์Šคํ„ด์Šค ์ค‘ ํ•˜๋‚˜์— ์—ฐ๊ฒฐํ•˜๊ณ  rs.initiate()๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ 

rs.initiate()๋ฅผ ๋ณต์ œ ์„ธํŠธ์˜ ๋‹จ์ผ mongod ์ธ์Šคํ„ด์Šค์—์„œ๋งŒ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ค‘์š”

๋ณ€๊ฒฝ๋œ IP ์ฃผ์†Œ๋กœ ์ธํ•ด ๊ตฌ์„ฑ์ด ์—…๋ฐ์ดํŠธ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด IP ์ฃผ์†Œ ๋Œ€์‹  DNS ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์„ธ์š”. ํŠนํžˆ ๋ณต์ œ๋ณธ ์„ธํŠธ ๊ตฌ์„ฑ์› ๋˜๋Š” ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ๊ตฌ์„ฑ์›์„ ๊ตฌ์„ฑํ•  ๋•Œ IP ์ฃผ์†Œ ๋Œ€์‹  DNS ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

IP ์ฃผ์†Œ ๋Œ€์‹  ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํ”Œ๋ฆฟ ๋„คํŠธ์›Œํฌ ํ˜ธ๋ผ์ด์ฆŒ ์ „๋ฐ˜์— ๊ฑธ์ณ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜์„ธ์š”. MongoDB 5.0๋ถ€ํ„ฐ IP ์ฃผ์†Œ๋กœ๋งŒ ๊ตฌ์„ฑ๋œ ๋…ธ๋“œ๋Š” ์Šคํƒ€ํŠธ์—… ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ์‹คํŒจํ•˜๋ฉฐ ์‹œ์ž‘๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

rs.initiate(
{
_id: "myReplSet",
version: 1,
members: [
{ _id: 0, host : "mongodb0.example.net:27017" },
{ _id: 1, host : "mongodb1.example.net:27017" },
{ _id: 2, host : "mongodb2.example.net:27017" }
]
}
)

๋ณต์ œ๋ณธ ์„ธํŠธ ๊ตฌ์„ฑ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋ณต์ œ๋ณธ ์„ธํŠธ ๊ตฌ์„ฑ ํ•„๋“œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ณต์ œ๋ณธ ์„ธํŠธ ๋ฐฐํฌ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ ์€ ์ž์ฒด ๊ด€๋ฆฌํ˜• ๋ณต์ œ๋ณธ ์„ธํŠธ ๋ฐฐํฌ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.