MongoDB Atlas ๊ด€๋ฆฌ์ž API (2.0)

๋ฆฌ์†Œ์Šค ๋ฒ„์ „ 2025-03-12

OpenAPI ์‚ฌ์–‘ ๋‹ค์šด๋กœ๋“œ: ๋‹ค์šด๋กœ๋“œ

๋ผ์ด์„ผ์Šค: CC BY-NC-SA 3.0 US ๊ณผ

MongoDB Atlas ๊ด€๋ฆฌ์ž API๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐœ๋ฐœ์ž๊ฐ€ MongoDB Atlas์˜ ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Atlas ๊ด€๋ฆฌ API OAuth2 ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” HTTP ๋‹ค์ด์ œ์ŠคํŠธ ์ธ์ฆ์„ ์‚ฌ์šฉํ•˜์—ฌ ์š”์ฒญ์„ ์ธ์ฆํ•ฉ๋‹ˆ๋‹ค. HTTP ์š”์ฒญ ๊ตฌ์„ฑํ•  ๋•Œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹ API ๊ณต๊ฐœ ํ‚ค์™€ ํ•ด๋‹น ๋น„๊ณต๊ฐœ ํ‚ค๋ฅผ ์‚ฌ์šฉ์ž ์ด๋ฆ„ ๋ฐ ๋น„๋ฐ€๋ฒˆํ˜ธ๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์‹œ,cURL์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ก์„ธ์Šค ๊ธฐ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋ ค๋ฉด ํ„ฐ๋ฏธ๋„์—์„œ ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ .

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" \
  --digest \
  --header "Accept: application/vnd.atlas.2025-03-12+json" \
  -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dbAccessHistory/clusters/{clusterName}?pretty=true"

์ž์„ธํ•œ ๋‚ด์šฉ์€ Atlas ๊ด€๋ฆฌ์ž API ์‹œ์ž‘ํ•˜๊ธฐ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”. ์ง€์›์„ ๋ฐ›์œผ๋ ค๋ฉด MongoDB ์ง€์›์„ ์ฐธ์กฐํ•˜์„ธ์š”.

MongoDB์˜ Postman ์ž‘์—… ๊ณต๊ฐ„์—์„œ Atlas Administration API๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค์–‘ํ•œ ์—”๋“œํฌ์ธํŠธ๋ฅผ ํƒ์ƒ‰ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์•ก์„ธ์Šค ์ถ”์ 

Atlas ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐฐํฌ๋ฅผ ์œ„ํ•ด ์ธ์ฆ ์‹œ๋„์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๋กœ๊ทธ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ก์„ธ์Šค ๊ธฐ๋ก์„ ๋ณด๋ ค๋ฉด ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ๋˜๋Š” ์กฐ์ง ์†Œ์œ ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ก์„ธ์Šค ๊ธฐ๋ก ๋ฐ˜ํ™˜

ํด๋Ÿฌ์Šคํ„ฐ ์ด๋ฆ„์œผ๋กœ ์‹๋ณ„๋˜๋Š” ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ์˜ ์•ก์„ธ์Šค ๋กœ๊ทธ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์•ก์„ธ์Šค ๋กœ๊ทธ์—๋Š” ํด๋Ÿฌ์Šคํ„ฐ ์— ๋Œ€ํ•ด ์ด๋ฃจ์–ด์ง„ ์ธ์ฆ ์š”์ฒญ ๋ชฉ๋ก์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ…Œ๋„ŒํŠธ ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ(M0, M2, M5)์—์„œ๋Š” ์ด ๊ธฐ๋Šฅ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ชจ๋‹ˆํ„ฐ๋ง ๊ด€๋ฆฌ์ž ์—ญํ•  ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

authResult
๋ถ€์šธ

์‘๋‹ต์ด ์„ฑ๊ณต์ ์ธ ์ธ์ฆ ์‹œ๋„๋งŒ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

end
integer <int64>

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ๋ก ๊ฒ€์ƒ‰์„ ์ค‘์ง€ํ•  ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ๋์„ ์ง€์ •ํ•˜๋Š” ๊ฒฝ์šฐ ์‹œ์ž‘๋„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„(๋ฐ€๋ฆฌ์ดˆ)์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

ipAddress
๋ฌธ์ž์—ด^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$))...

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์ฆ์„ ์‹œ๋„ํ•œ 1๊ฐœ ์ธํ„ฐ๋„ท ํ”„๋กœํ† ์ฝœ ์ฃผ์†Œ์ž…๋‹ˆ๋‹ค.

nLogs
integer <int32> [ 0 .. 20000 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 20000

๋ฐ˜ํ™˜ํ•  ๋กœ๊ทธ์˜ ์ตœ๋Œ€ ์ค„ ์ˆ˜์ž…๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ
integer <int64>

MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ๋ก์„ ์กฐํšŒํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์‹œ์ž‘์„ ์ง€์ •ํ•˜๋Š” ๊ฒฝ์šฐ ๋๋„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„(๋ฐ€๋ฆฌ์ดˆ)์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "accessLogs": [
    ]
}

ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ก์„ธ์Šค ๊ธฐ๋ก ๋ฐ˜ํ™˜

ํด๋Ÿฌ์Šคํ„ฐ์˜ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์œผ๋กœ ์‹๋ณ„๋˜๋Š” ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ์˜ ์•ก์„ธ์Šค ๋กœ๊ทธ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์•ก์„ธ์Šค ๋กœ๊ทธ์—๋Š” ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ์ด๋ฃจ์–ด์ง„ ์ธ์ฆ ์š”์ฒญ ๋ชฉ๋ก์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ…Œ๋„ŒํŠธ ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ(M0, M2, M5)์—์„œ๋Š” ์ด ๊ธฐ๋Šฅ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ชจ๋‹ˆํ„ฐ๋ง ๊ด€๋ฆฌ์ž ์—ญํ•  ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

ํ˜ธ์ŠคํŠธ ์ด๋ฆ„
ํ•„์ˆ˜
๋ฌธ์ž์—ด

๋‹ค์šด๋กœ๋“œํ•˜๋ ค๋Š” ๋กœ๊ทธ ํŒŒ์ผ์„ ์ €์žฅํ•˜๋Š” MongoDB ํ˜ธ์ŠคํŠธ์˜ ์ •๊ทœํ™”๋œ ๋„๋ฉ”์ธ ์ด๋ฆ„ ๋˜๋Š” IP ์ฃผ์†Œ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

authResult
๋ถ€์šธ

์‘๋‹ต์ด ์„ฑ๊ณต์ ์ธ ์ธ์ฆ ์‹œ๋„๋งŒ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

end
integer <int64>

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ๋ก ๊ฒ€์ƒ‰์„ ์ค‘์ง€ํ•  ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ๋์„ ์ง€์ •ํ•˜๋Š” ๊ฒฝ์šฐ ์‹œ์ž‘๋„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„(๋ฐ€๋ฆฌ์ดˆ)์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

ipAddress
๋ฌธ์ž์—ด^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$))...

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์ฆ์„ ์‹œ๋„ํ•œ 1๊ฐœ ์ธํ„ฐ๋„ท ํ”„๋กœํ† ์ฝœ ์ฃผ์†Œ์ž…๋‹ˆ๋‹ค.

nLogs
integer <int32> [ 0 .. 20000 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 20000

๋ฐ˜ํ™˜ํ•  ๋กœ๊ทธ์˜ ์ตœ๋Œ€ ์ค„ ์ˆ˜์ž…๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ
integer <int64>

MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ๋ก์„ ์กฐํšŒํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์‹œ์ž‘์„ ์ง€์ •ํ•˜๋Š” ๊ฒฝ์šฐ ๋๋„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„(๋ฐ€๋ฆฌ์ดˆ)์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "accessLogs": [
    ]
}

์•Œ๋ฆผ ๊ตฌ์„ฑ

๊ฒฝ๊ณ ๋ฅผ ํŠธ๋ฆฌ๊ฑฐํ•˜๋Š” ์กฐ๊ฑด๊ณผ MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ฒฝ๊ณ ๋ฅผ ๋ณด๋‚ด๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  ํŽธ์ง‘ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ปฌ๋ ‰์…˜์€ ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  ์•Œ๋ฆผ ๊ตฌ์„ฑ ๋งค์ฒ˜ ํ•„๋“œ ์ด๋ฆ„ ๊ฐ€์ ธ์˜ค๊ธฐ

๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•  ๋•Œ matchers.fieldName ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ํ—ˆ์šฉํ•˜๋Š” ๋ชจ๋“  ํ•„๋“œ ์ด๋ฆ„์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ํ• ๋‹น๋œ ๋ชจ๋“  ์—ญํ• ๋กœ ์ด ์—”๋“œํฌ์ธํŠธ๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
[
  • "APPLICATION_ID"
]

1๊ฐœ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ๋ฐ˜ํ™˜

ํ”„๋กœ์ ํŠธ ํ•œ ๊ฐœ์— ๋Œ€ํ•œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์€ ํ”„๋กœ์ ํŠธ ์˜ ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ์— ์ ์šฉ . ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์€ ๊ฒฝ๊ณ ์— ๋Œ€ํ•œ ํŠธ๋ฆฌ๊ฑฐ ๋ฐ ์•Œ๋ฆผ ๋ฉ”์„œ๋“œ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ๋งŒ๋“ค๊ธฐ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•ด ํ•˜๋‚˜์˜ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์€ ๊ฒฝ๊ณ ์— ๋Œ€ํ•œ ํŠธ๋ฆฌ๊ฑฐ ๋ฐ ์•Œ๋ฆผ ๋ฉ”์„œ๋“œ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด 1๊ฐœ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

๋‹ค์Œ ์ค‘ ํ•˜๋‚˜
ํ™œ์„ฑํ™”๋จ
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด ์ด ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ํ™œ์„ฑํ™”ํ–ˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

ํ•„์ˆ˜
์ฒญ๊ตฌ ์ด๋ฒคํŠธ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” Cps ๋ฐฑ์—… ์ด๋ฒคํŠธ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” ๋ฐ์ดํ„ฐ ๋ณดํ˜ธ ์ด๋ฒคํŠธ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” FTS ์ธ๋ฑ์Šค ๊ฐ์‚ฌ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” ๊ทธ๋ฃน ์ด๋ฒคํŠธ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” NDS ๊ฐ์‚ฌ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” NDS ์œ ์ง€ ๊ด€๋ฆฌ ๊ธฐ๊ฐ„ ๊ฐ์‚ฌ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” ์˜จ๋ผ์ธ ๋ณด๊ด€ ์ด๋ฒคํŠธ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” ์‚ฌ์šฉ์ž ์ด๋ฒคํŠธ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” ๋ฆฌ์†Œ์Šค ์ด๋ฒคํŠธ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” ์ŠคํŠธ๋ฆผ ํ”„๋กœ์„ธ์„œ ์ด๋ฒคํŠธ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” NDS ์ž๋™ ํ™•์žฅ ๊ฐ์‚ฌ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” Atlas ๋ฆฌ์†Œ์Šค ์ •์ฑ… ๊ฐ์‚ฌ ์œ ํ˜• (๊ฐ์ฒด ))

์ด ๊ฒฝ๊ณ ๋ฅผ ํŠธ๋ฆฌ๊ฑฐํ•œ ์ธ์‹œ๋˜ํŠธ์ž…๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (์ผ์น˜๊ธฐ)

๋Œ€์ƒ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์ผ์น˜ ์กฐ๊ฑด์ž…๋‹ˆ๋‹ค.

ํ•„์ˆ˜
์˜ ๋ฐฐ์—ด Datadog ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ์ด๋ฉ”์ผ ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ๊ทธ๋ฃน ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” HipChat ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” Microsoft Teams ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” OpsGenie ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ์กฐ์ง ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” PagerDuty ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” Slack ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” SMS ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ํŒ€ ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ์‚ฌ์šฉ์ž ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” VictorOps ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ์›นํ›… ์•Œ๋ฆผ(๊ฐ์ฒด) (AlertsNotificationRootForGroup)

MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ์•Œ๋ฆผ์„ ๋ณด๋‚ด๋Š” ๋Œ€์ƒ์ด ํฌํ•จ๋œ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "enabled": false,
  • "eventTypeName": "CREDIT_CARD_ABOUT_TO_EXPIRE",
  • "matchers": [
    ],
  • "notifications": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "created": "2019-08-24T14:15:22Z",
  • "enabled": false,
  • "eventTypeName": "CREDIT_CARD_ABOUT_TO_EXPIRE",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "matchers": [
    ],
  • "notifications": [
    ],
  • "updated": "2019-08-24T14:15:22Z"
}

1๊ฐœ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ์ œ๊ฑฐ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ๋ฐ˜ํ™˜ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์กฐํšŒ .

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

alertConfigId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24-16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint)",
  • "error": 401,
  • "errorCode": "NOT_ORG_GROUP_CREATOR",
  • "reason": "Unauthorized"
}

1๊ฐœ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ์ง€์ •๋œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ๋ฐ˜ํ™˜ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์กฐํšŒ .

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

alertConfigId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24-16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "created": "2019-08-24T14:15:22Z",
  • "enabled": false,
  • "eventTypeName": "CREDIT_CARD_ABOUT_TO_EXPIRE",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "matchers": [
    ],
  • "notifications": [
    ],
  • "updated": "2019-08-24T14:15:22Z"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ ์ƒํƒœ์ธ 1๊ฐœ์˜ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ํ† ๊ธ€

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ์ง€์ •๋œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ ๋ฆฌ์†Œ์Šค ์ง€์ •๋œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ๋น„ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ ๋ฆฌ์†Œ์Šค ์ง€์ •๋œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ์ด ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์— ๋Œ€ํ•œ ํ™œ์„ฑํ™”/๋น„ํ™œ์„ฑํ™” ์ƒํƒœ ๋งŒ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ตฌ์„ฑ๋ณด๋‹ค ๋” ๋งŽ์€ ์—…๋ฐ์ดํŠธ ํ•˜๋ ค๋ฉด ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ์—…๋ฐ์ดํŠธ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

alertConfigId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

์ด ๊ฒฝ๊ณ  ํŠธ๋ฆฌ๊ฑฐํ•œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24-16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์—์„œ ์ง€์ •๋œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

ํ™œ์„ฑํ™”๋จ
๋ถ€์šธ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์—์„œ ์ง€์ •๋œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ํ™œ์„ฑํ™” ๋˜๋Š” ๋น„ํ™œ์„ฑํ™”ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "enabled": true
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "created": "2019-08-24T14:15:22Z",
  • "enabled": false,
  • "eventTypeName": "CREDIT_CARD_ABOUT_TO_EXPIRE",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "matchers": [
    ],
  • "notifications": [
    ],
  • "updated": "2019-08-24T14:15:22Z"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด 1๊ฐœ์˜ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ์—…๋ฐ์ดํŠธ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์€ ๊ฒฝ๊ณ ์— ๋Œ€ํ•œ ํŠธ๋ฆฌ๊ฑฐ ๋ฐ ์•Œ๋ฆผ ๋ฉ”์„œ๋“œ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ํ™œ์„ฑํ™” ๋น„ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด 1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ ์ƒํƒœ์˜ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ํ† ๊ธ€์„ ์ฐธ์กฐํ•˜์„ธ์š”.

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

alertConfigId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24-16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ ์ค‘ ํ•˜๋‚˜
ํ™œ์„ฑํ™”๋จ
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด ์ด ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ํ™œ์„ฑํ™”ํ–ˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

ํ•„์ˆ˜
์ฒญ๊ตฌ ์ด๋ฒคํŠธ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” Cps ๋ฐฑ์—… ์ด๋ฒคํŠธ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” ๋ฐ์ดํ„ฐ ๋ณดํ˜ธ ์ด๋ฒคํŠธ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” FTS ์ธ๋ฑ์Šค ๊ฐ์‚ฌ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” ๊ทธ๋ฃน ์ด๋ฒคํŠธ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” NDS ๊ฐ์‚ฌ ์œ ํ˜•(๊ฐ์ฒด) ๋˜๋Š” NDS ์œ ์ง€ ๊ด€๋ฆฌ ๊ธฐ๊ฐ„ ๊ฐ์‚ฌ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” ์˜จ๋ผ์ธ ๋ณด๊ด€ ์ด๋ฒคํŠธ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” ์‚ฌ์šฉ์ž ์ด๋ฒคํŠธ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” ๋ฆฌ์†Œ์Šค ์ด๋ฒคํŠธ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” ์ŠคํŠธ๋ฆผ ํ”„๋กœ์„ธ์„œ ์ด๋ฒคํŠธ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” NDS ์ž๋™ ํ™•์žฅ ๊ฐ์‚ฌ ์œ ํ˜• (๊ฐ์ฒด) ๋˜๋Š” Atlas ๋ฆฌ์†Œ์Šค ์ •์ฑ… ๊ฐ์‚ฌ ์œ ํ˜• (๊ฐ์ฒด ))

์ด ๊ฒฝ๊ณ ๋ฅผ ํŠธ๋ฆฌ๊ฑฐํ•œ ์ธ์‹œ๋˜ํŠธ์ž…๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (์ผ์น˜๊ธฐ)

๋Œ€์ƒ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์ผ์น˜ ์กฐ๊ฑด์ž…๋‹ˆ๋‹ค.

ํ•„์ˆ˜
์˜ ๋ฐฐ์—ด Datadog ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ์ด๋ฉ”์ผ ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ๊ทธ๋ฃน ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” HipChat ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” Microsoft Teams ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” OpsGenie ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ์กฐ์ง ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” PagerDuty ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” Slack ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” SMS ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ํŒ€ ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ์‚ฌ์šฉ์ž ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” VictorOps ์•Œ๋ฆผ(๊ฐ์ฒด) ๋˜๋Š” ์›นํ›… ์•Œ๋ฆผ(๊ฐ์ฒด) (AlertsNotificationRootForGroup)

MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ์•Œ๋ฆผ์„ ๋ณด๋‚ด๋Š” ๋Œ€์ƒ์ด ํฌํ•จ๋œ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "enabled": false,
  • "eventTypeName": "CREDIT_CARD_ABOUT_TO_EXPIRE",
  • "matchers": [
    ],
  • "notifications": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "created": "2019-08-24T14:15:22Z",
  • "enabled": false,
  • "eventTypeName": "CREDIT_CARD_ABOUT_TO_EXPIRE",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "matchers": [
    ],
  • "notifications": [
    ],
  • "updated": "2019-08-24T14:15:22Z"
}

1๊ฐœ ๊ฒฝ๊ณ ์— ์„ค์ •๋œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ๋ฐ˜ํ™˜

์ง€์ •๋œ ๊ฒฝ๊ณ  ์— ๋Œ€ํ•ด ์„ค์ •ํ•˜๋‹ค ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๋ฐ˜ํ™˜ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ๊ณ ๋ฅผ ์กฐํšŒ .

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

alertId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

๊ฒฝ๊ณ  ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24-16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

์•Œ๋ฆผ

์‚ฌ์šฉ์ž๊ฐ€ ์ •์˜ํ•œ ๊ฒฝ๊ณ  ์กฐ๊ฑด์„ ๊ธฐ๋ฐ˜์œผ๋กœ MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ํŠธ๋ฆฌ๊ฑฐํ•˜๋Š” ๊ฒฝ๊ณ ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ  ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ด ์ปฌ๋ ‰์…˜์€ ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์œ„ํ•ด ์—ด๋ ค ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ๊ณ  ๋ฐ˜ํ™˜

์ง€์ •๋œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์ด ํŠธ๋ฆฌ๊ฑฐํ•˜๋Š” ๋ชจ๋“  ์—ด๋ฆฐ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์€ ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—๋งŒ ์ ์šฉ . ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์€ ๊ฒฝ๊ณ ์— ๋Œ€ํ•œ ํŠธ๋ฆฌ๊ฑฐ ๋ฐ ์•Œ๋ฆผ ๋ฉ”์„œ๋“œ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์—ด๋ฆฐ ๊ฒฝ๊ณ ๊ฐ€ ํŠธ๋ฆฌ๊ฑฐ๋˜์—ˆ์ง€๋งŒ ์Šน์ธ๋˜์ง€ ์•Š์€ ์ƒํƒœ๋กœ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ ๋ฐ˜ํ™˜ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์กฐํšŒ .

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

alertConfigId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

๊ฒฝ๊ณ  ๊ตฌ์„ฑ์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24-16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๋ฐ˜ํ™˜

๋ชจ๋“  ๊ฒฝ๊ณ ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ๊ณ ๋Š” ํ”„๋กœ์ ํŠธ ํ•œ ๊ฐœ์— ์žˆ๋Š” ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ์— ์ ์šฉ . ๋ชจ๋‹ˆํ„ฐ๋ง๋˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์„ค์ •ํ•˜๋‹ค ํ•œ ๊ฐ’์„ ์ถฉ์กฑํ•˜๊ฑฐ๋‚˜ ์ดˆ๊ณผํ•˜๋ฉด ๊ฒฝ๊ณ  ๋ฐ›์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์ƒํƒœ
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "OPEN" "TRACKING" "CLOSED"

๋ฐ˜ํ™˜ํ•  ๊ฒฝ๊ณ ์˜ ์ƒํƒœ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ์ƒํƒœ์˜ ๋ชจ๋“  ๊ฒฝ๊ณ ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ ค๋ฉด ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ๊ฒฝ๊ณ  ๋ฐ˜ํ™˜

ํ•˜๋‚˜์˜ ๊ฒฝ๊ณ  ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ๊ณ  ํ•œ ํ”„๋กœ์ ํŠธ ์˜ ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋‹ˆํ„ฐ๋ง๋˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์„ค์ •ํ•˜๋‹ค ํ•œ ๊ฐ’์„ ์ถฉ์กฑํ•˜๊ฑฐ๋‚˜ ์ดˆ๊ณผํ•˜๋ฉด ๊ฒฝ๊ณ  ๋ฐ›์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๋ฐ˜ํ™˜ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ๊ณ ๋ฅผ ์กฐํšŒ .

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

alertId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

๊ฒฝ๊ณ  ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24-16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "acknowledgedUntil": "2019-08-24T14:15:22Z",
  • "acknowledgementComment": "Expiration on 3/19. Silencing for 7days.",
  • "acknowledgingUsername": "user@example.com",
  • "alertConfigId": "32b6e34b3d91647abb20e7b8",
  • "created": "2019-08-24T14:15:22Z",
  • "eventTypeName": "DEPLOYMENT_FAILURE",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "lastNotified": "2019-08-24T14:15:22Z",
  • "links": [],
  • "orgId": "32b6e34b3d91647abb20e7b8",
  • "resolved": "2019-08-24T14:15:22Z",
  • "status": "OPEN",
  • "updated": "2019-08-24T14:15:22Z"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ๊ฒฝ๊ณ  ์Šน์ธ

ํ•˜๋‚˜์˜ ๊ธฐ์กด ๊ฒฝ๊ณ  ์ˆ˜์‹ ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ๊ณ  ํ•œ ํ”„๋กœ์ ํŠธ ์˜ ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ฒฝ๊ณ  ์Šน์ธํ•˜๋ฉด ์—ฐ์†์ ์ธ ์•Œ๋ฆผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋‹ˆํ„ฐ๋ง๋˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์„ค์ •ํ•˜๋‹ค ๊ฐ’์„ ์ถฉ์กฑํ•˜๊ฑฐ๋‚˜ ์ดˆ๊ณผํ•˜๋ฉด ๊ฒฝ๊ณ  ํ™•์ธํ•  ๋•Œ๊นŒ์ง€ ๊ฒฝ๊ณ  ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ๊ฒฝ๊ณ  ๋ฐ˜ํ™˜ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒฝ๊ณ ๋ฅผ ์กฐํšŒ .

์ด ๋ฆฌ์†Œ์Šค๋Š” ๊ณ„์† ์ˆ˜์ •๋˜๋ฉฐ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

alertId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

๊ฒฝ๊ณ  ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24-16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

1๊ฐœ์˜ ์•Œ๋ฆผ์„ ์Šน์ธํ•˜๊ฑฐ๋‚˜ ์Šน์ธ ์ทจ์†Œํ•ฉ๋‹ˆ๋‹ค.

acknowledgedUntil
๋ฌธ์ž์—ด <date-time>

์ด ๊ฒฝ๊ณ ๊ฐ€ ์Šน์ธ๋  ๋•Œ๊นŒ์ง€์˜ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. MongoDB ์‚ฌ์šฉ์ž๊ฐ€ ์ด์ „์— ์ด ๊ฒฝ๊ณ ๋ฅผ ํ™•์ธํ•œ ๊ฒฝ์šฐ ๋ฆฌ์†Œ์Šค๋Š” ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

acknowledgementComment
๋ฌธ์ž์—ด <= 200 characters

MongoDB ํด๋ผ์šฐ๋“œ ์‚ฌ์šฉ์ž๊ฐ€ ๊ฒฝ๊ณ ๋ฅผ ์Šน์ธํ•  ๋•Œ ์ œ์ถœํ•œ ์ฝ”๋ฉ˜ํŠธ์ž…๋‹ˆ๋‹ค.

unacknowledgeAlert
๋ถ€์šธ

์ด์ „์— ์Šน์ธํ•œ ์•Œ๋ฆผ์„ ์Šน์ธํ•˜์ง€ ์•Š์Œ์„ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์ด ๊ฐ’์€ false๋กœ ์„ค์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. true๋กœ ์„ค์ •ํ•˜๋ฉด acknowledgedUntil ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์žฌ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "acknowledgedUntil": "2019-08-24T14:15:22Z",
  • "acknowledgementComment": "Expiration on 3/19. Silencing for 7days.",
  • "unacknowledgeAlert": true
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ
{
  • "acknowledgedUntil": "2019-08-24T14:15:22Z",
  • "acknowledgementComment": "Expiration on 3/19. Silencing for 7days.",
  • "acknowledgingUsername": "user@example.com",
  • "alertConfigId": "32b6e34b3d91647abb20e7b8",
  • "created": "2019-08-24T14:15:22Z",
  • "eventTypeName": "DEPLOYMENT_FAILURE",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "lastNotified": "2019-08-24T14:15:22Z",
  • "links": [],
  • "orgId": "32b6e34b3d91647abb20e7b8",
  • "resolved": "2019-08-24T14:15:22Z",
  • "status": "OPEN",
  • "updated": "2019-08-24T14:15:22Z"
}

1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ์ƒ์„ฑ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ

์ง€์ •๋œ ์ปฌ๋ ‰์…˜ ์— ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ๋งŒ๋“ญ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค๋Š” ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ํ•„๋“œ์™€ ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•  ๋ถ„์„๊ธฐ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. MongoDB v4.2 ์ด์ƒ์„ ์‹คํ–‰ ํด๋Ÿฌ์Šคํ„ฐ๋งŒ Atlas Search ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

Atlas Search ์ธ๋ฑ์Šค๋ฅผ ์ƒ์„ฑํ•  ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ์ปฌ๋ ‰์…˜์— 1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

1๊ฐœ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ์ปฌ๋ ‰์…˜์„ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

database
ํ•„์ˆ˜
๋ฌธ์ž์—ด

1๊ฐœ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ด๋ฆ„
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์ด ์ธ๋ฑ์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค. ๊ฐ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋‚ด์—์„œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— ์žˆ๋Š” ๋ชจ๋“  ์ธ๋ฑ์Šค์˜ ์ด๋ฆ„์€ ๊ณ ์œ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

numPartitions
integer <int32>
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์ธ๋ฑ์Šค ํŒŒํ‹ฐ์…˜ ์ˆ˜์ž…๋‹ˆ๋‹ค. ํ—ˆ์šฉ๋˜๋Š” ๊ฐ’์€ [1, 2, 4]์ž…๋‹ˆ๋‹ค.

์œ ํ˜•
๋ฌธ์ž์—ด

์ธ๋ฑ์Šค์˜ ์œ ํ˜•์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์œ ํ˜•์€ ๊ฒ€์ƒ‰์ž…๋‹ˆ๋‹ค.

๋ถ„์„๊ธฐ
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "lucene.standard"
์—ด๊ฑฐํ˜•: "lucene.standard" "lucene.simple" "lucene.whitespace" "lucene.keyword" "lucene.arabic" "lucene.armenian" "lucene.basque" "lucene.bengali" "lucene.brazilian" "lucene.bulgarian" "lucene.catalan" "lucene.chinese" "lucene.cjk" "lucene.czech" "lucene.danish" "lucene.dutch" "lucene.english" "lucene.finnish" "lucene.french" "lucene.galician" "lucene.german" "lucene.greek" "lucene.hindi" "lucene.hungarian" "lucene.indonesian" "lucene.irish" "lucene.italian" "lucene.japanese" "lucene.korean" "lucene.kuromoji" "lucene.latvian" "lucene.lithuanian" "lucene.morfologik" "lucene.nori" "lucene.norwegian "lucene.persian" "lucene.portuguese" "lucene.romanian" "lucene.russian" "lucene.smartcn" "lucene.sorani" "lucene.spanish" "lucene.swedish" "lucene.thai" "lucene.turkish" "lucene.ukrainian"

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ•„๋“œ ํ…์ŠคํŠธ๋ฅผ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•œ ๋‹จ์–ด๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด ์„ ํƒํ•œ ์‚ฌ์ „ ์ •์˜๋œ ํŠน์ • ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ด ๋ณ€ํ™˜์€ ํ•„๋“œ์˜ ํ…์ŠคํŠธ๋ฅผ ๊ฐ€์žฅ ์ž‘์€ ํ…์ŠคํŠธ ๋‹จ์œ„๋กœ ์ค„์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋‹จ์œ„๋ฅผ ํ…€(term) ๋˜๋Š” ํ† ํฐ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ† ํฐํ™”๋ผ๊ณ  ํ•˜๋Š” ์ด ํ”„๋กœ์„ธ์Šค์—๋Š” ํ•„๋“œ์˜ ํ…์ŠคํŠธ์— ๋Œ€ํ•œ ๋‹ค์–‘ํ•œ ๋ณ€๊ฒฝ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  • ๋‹จ์–ด ์ถ”์ถœ
  • ๋ฌธ์žฅ ๋ถ€ํ˜ธ ์ œ๊ฑฐ
  • ์•…์„ผํŠธ ์ œ๊ฑฐ
  • ์†Œ๋ฌธ์ž๋กœ ๋ณ€๊ฒฝ
  • ์ผ๋ฐ˜์ ์ธ ๋‹จ์–ด ์ œ๊ฑฐ
  • ๋‹จ์–ด๋ฅผ ์–ด๊ทผ ํ˜•ํƒœ๋กœ ์ค„์ด๊ธฐ(์–ด๊ฐ„)
  • ๋‹จ์–ด๋ฅผ ๊ธฐ๋ณธ ํ˜•์‹์œผ๋กœ ๋ณ€๊ฒฝ (ํ‘œ์ง‘ํ™”) MongoDB Cloud๋Š” ์„ ํƒํ•œ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Atlas Search ์ธ๋ฑ์Šค๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (๋ถ„์„๊ธฐ)

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ•„๋“œ ํ…์ŠคํŠธ๋ฅผ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•œ ๋‹จ์–ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ๋ฉ”์„œ๋“œ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

๊ฐ์ฒด (๋งคํ•‘)

์ปฌ๋ ‰์…˜์˜ ํ•„๋“œ์— ๋Œ€ํ•œ ์ธ๋ฑ์Šค ์‚ฌ์–‘์ž…๋‹ˆ๋‹ค.

๊ฒ€์ƒ‰ ๋ถ„์„๊ธฐ
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "lucene.standard"
์—ด๊ฑฐํ˜•: "lucene.standard" "lucene.simple" "lucene.whitespace" "lucene.keyword" "lucene.arabic" "lucene.armenian" "lucene.basque" "lucene.bengali" "lucene.brazilian" "lucene.bulgarian" "lucene.catalan" "lucene.chinese" "lucene.cjk" "lucene.czech" "lucene.danish" "lucene.dutch" "lucene.english" "lucene.finnish" "lucene.french" "lucene.galician" "lucene.german" "lucene.greek" "lucene.hindi" "lucene.hungarian" "lucene.indonesian" "lucene.irish" "lucene.italian" "lucene.japanese" "lucene.korean" "lucene.kuromoji" "lucene.latvian" "lucene.lithuanian" "lucene.morfologik" "lucene.nori" "lucene.norwegian "lucene.persian" "lucene.portuguese" "lucene.romanian" "lucene.russian" "lucene.smartcn" "lucene.sorani" "lucene.spanish" "lucene.swedish" "lucene.thai" "lucene.turkish" "lucene.ukrainian"

์ด ์ธ๋ฑ์Šค๋ฅผ ๊ฒ€์ƒ‰ํ•  ๋•Œ ๋‹จ์–ด๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ฐ ์ ์šฉ๋˜๋Š” ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค.

์ €์žฅ๋œ ์†Œ์Šค
๊ฐ์ฒด

Atlas Search์— ๋ชจ๋“  ํ•„๋“œ๋ฅผ ์ €์žฅํ• ์ง€(์ฐธ) ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ Atlas๋Š” Atlas Search์— ํ•„๋“œ๋ฅผ ์ €์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค(๊ฑฐ์ง“). ๋˜๋Š” Atlas Search์— ์ €์žฅ(ํฌํ•จ)ํ•˜๊ฑฐ๋‚˜ ์ €์žฅํ•˜์ง€ ์•Š์„(์ œ์™ธ) ํ•„๋“œ ๋ชฉ๋ก๋งŒ ํฌํ•จํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์„ค๋ช…์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (๋™์˜์–ด ๋งคํ•‘ ์ •์˜)

์ด ์ธ๋ฑ์Šค์—์„œ ๋‹จ์–ด๋ฅผ ๋™์˜์–ด์— ๋งคํ•‘ํ•˜๋Š” ๊ทœ์น™ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "name": "string",
  • "numPartitions": 1,
  • "type": "search",
  • "analyzer": "lucene.standard",
  • "analyzers": [
    ],
  • "mappings": {
    },
  • "searchAnalyzer": "lucene.standard",
  • "storedSource": {
    },
  • "synonyms": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "indexID": "32b6e34b3d91647abb20e7b8",
  • "name": "string",
  • "numPartitions": 1,
  • "status": "IN_PROGRESS",
  • "type": "search",
  • "analyzer": "lucene.standard",
  • "analyzers": [
    ],
  • "mappings": {
    },
  • "searchAnalyzer": "lucene.standard",
  • "storedSource": {
    },
  • "synonyms": [
    ]
}

1๊ฐœ์˜ ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•ด ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ

์ง€์ •๋œ ์ปฌ๋ ‰์…˜ ์˜ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค์—๋Š” ์ธ๋ฑ์‹ฑ๋œ ํ•„๋“œ์™€ ์ธ๋ฑ์Šค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ๋ถ„์„๊ธฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ์ฝ๊ธฐ ์“ฐ๊ธฐ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์„ ํฌํ•จํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ์ปฌ๋ ‰์…˜์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

databaseName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

1๊ฐœ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
[
  • {
    }
]

1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ์ œ๊ฑฐ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ

๊ณ ์œ  ID ๋กœ ์‹๋ณ„ํ•œ ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํ•˜๋‚˜ ์ด์ƒ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐ ์ปฌ๋ ‰์…˜์„ ํฌํ•จํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

indexId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

Atlas cluster๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•œ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค ๊ฐ€์ ธ์˜ค๊ธฐ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค์˜ ID๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๊ณ ์œ  ID ์‚ฌ์šฉํ•˜์—ฌ ์ด ์ธ๋ฑ์Šค ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค ์—๋Š” ์ธ๋ฑ์‹ฑ๋œ ํ•„๋“œ์™€ ์ธ๋ฑ์Šค ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ๋ถ„์„๊ธฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ์ฝ๊ธฐ ์“ฐ๊ธฐ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์„ ํฌํ•จํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

indexId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

Application Search ์ธ๋ฑ์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•œ ๋ชจ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค ๊ฐ€์ ธ์˜ค๊ธฐ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค์˜ ID๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "indexID": "32b6e34b3d91647abb20e7b8",
  • "name": "string",
  • "numPartitions": 1,
  • "status": "IN_PROGRESS",
  • "type": "search",
  • "analyzer": "lucene.standard",
  • "analyzers": [
    ],
  • "mappings": {
    },
  • "searchAnalyzer": "lucene.standard",
  • "storedSource": {
    },
  • "synonyms": [
    ]
}

1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ์—…๋ฐ์ดํŠธ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ

๊ณ ์œ  ID ๋กœ ์‹๋ณ„ํ•œ ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค๋Š” ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ํ•„๋“œ์™€ ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•  ๋ถ„์„๊ธฐ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

Atlas Search ์ธ๋ฑ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

indexId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์•„ํ‹€๋ผ์Šค ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•œ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค ๊ฐ€์ ธ์˜ค๊ธฐ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค์˜ ID๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

Atlas Search ์ธ๋ฑ์Šค์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ ์„ธ๋ถ€์ •๋ณด์ž…๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

1๊ฐœ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ์ปฌ๋ ‰์…˜์„ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

database
ํ•„์ˆ˜
๋ฌธ์ž์—ด

1๊ฐœ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ด๋ฆ„
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์ด ์ธ๋ฑ์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค. ๊ฐ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋‚ด์—์„œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— ์žˆ๋Š” ๋ชจ๋“  ์ธ๋ฑ์Šค์˜ ์ด๋ฆ„์€ ๊ณ ์œ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

numPartitions
integer <int32>
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์ธ๋ฑ์Šค ํŒŒํ‹ฐ์…˜ ์ˆ˜์ž…๋‹ˆ๋‹ค. ํ—ˆ์šฉ๋˜๋Š” ๊ฐ’์€ [1, 2, 4]์ž…๋‹ˆ๋‹ค.

์œ ํ˜•
๋ฌธ์ž์—ด

์ธ๋ฑ์Šค์˜ ์œ ํ˜•์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์œ ํ˜•์€ ๊ฒ€์ƒ‰์ž…๋‹ˆ๋‹ค.

๋ถ„์„๊ธฐ
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "lucene.standard"
์—ด๊ฑฐํ˜•: "lucene.standard" "lucene.simple" "lucene.whitespace" "lucene.keyword" "lucene.arabic" "lucene.armenian" "lucene.basque" "lucene.bengali" "lucene.brazilian" "lucene.bulgarian" "lucene.catalan" "lucene.chinese" "lucene.cjk" "lucene.czech" "lucene.danish" "lucene.dutch" "lucene.english" "lucene.finnish" "lucene.french" "lucene.galician" "lucene.german" "lucene.greek" "lucene.hindi" "lucene.hungarian" "lucene.indonesian" "lucene.irish" "lucene.italian" "lucene.japanese" "lucene.korean" "lucene.kuromoji" "lucene.latvian" "lucene.lithuanian" "lucene.morfologik" "lucene.nori" "lucene.norwegian "lucene.persian" "lucene.portuguese" "lucene.romanian" "lucene.russian" "lucene.smartcn" "lucene.sorani" "lucene.spanish" "lucene.swedish" "lucene.thai" "lucene.turkish" "lucene.ukrainian"

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ•„๋“œ ํ…์ŠคํŠธ๋ฅผ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•œ ๋‹จ์–ด๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด ์„ ํƒํ•œ ์‚ฌ์ „ ์ •์˜๋œ ํŠน์ • ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ด ๋ณ€ํ™˜์€ ํ•„๋“œ์˜ ํ…์ŠคํŠธ๋ฅผ ๊ฐ€์žฅ ์ž‘์€ ํ…์ŠคํŠธ ๋‹จ์œ„๋กœ ์ค„์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋‹จ์œ„๋ฅผ ํ…€(term) ๋˜๋Š” ํ† ํฐ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ† ํฐํ™”๋ผ๊ณ  ํ•˜๋Š” ์ด ํ”„๋กœ์„ธ์Šค์—๋Š” ํ•„๋“œ์˜ ํ…์ŠคํŠธ์— ๋Œ€ํ•œ ๋‹ค์–‘ํ•œ ๋ณ€๊ฒฝ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  • ๋‹จ์–ด ์ถ”์ถœ
  • ๋ฌธ์žฅ ๋ถ€ํ˜ธ ์ œ๊ฑฐ
  • ์•…์„ผํŠธ ์ œ๊ฑฐ
  • ์†Œ๋ฌธ์ž๋กœ ๋ณ€๊ฒฝ
  • ์ผ๋ฐ˜์ ์ธ ๋‹จ์–ด ์ œ๊ฑฐ
  • ๋‹จ์–ด๋ฅผ ์–ด๊ทผ ํ˜•ํƒœ๋กœ ์ค„์ด๊ธฐ(์–ด๊ฐ„)
  • ๋‹จ์–ด๋ฅผ ๊ธฐ๋ณธ ํ˜•์‹์œผ๋กœ ๋ณ€๊ฒฝ (ํ‘œ์ง‘ํ™”) MongoDB Cloud๋Š” ์„ ํƒํ•œ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Atlas Search ์ธ๋ฑ์Šค๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (๋ถ„์„๊ธฐ)

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ•„๋“œ ํ…์ŠคํŠธ๋ฅผ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•œ ๋‹จ์–ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ๋ฉ”์„œ๋“œ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

๊ฐ์ฒด (๋งคํ•‘)

์ปฌ๋ ‰์…˜์˜ ํ•„๋“œ์— ๋Œ€ํ•œ ์ธ๋ฑ์Šค ์‚ฌ์–‘์ž…๋‹ˆ๋‹ค.

๊ฒ€์ƒ‰ ๋ถ„์„๊ธฐ
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "lucene.standard"
์—ด๊ฑฐํ˜•: "lucene.standard" "lucene.simple" "lucene.whitespace" "lucene.keyword" "lucene.arabic" "lucene.armenian" "lucene.basque" "lucene.bengali" "lucene.brazilian" "lucene.bulgarian" "lucene.catalan" "lucene.chinese" "lucene.cjk" "lucene.czech" "lucene.danish" "lucene.dutch" "lucene.english" "lucene.finnish" "lucene.french" "lucene.galician" "lucene.german" "lucene.greek" "lucene.hindi" "lucene.hungarian" "lucene.indonesian" "lucene.irish" "lucene.italian" "lucene.japanese" "lucene.korean" "lucene.kuromoji" "lucene.latvian" "lucene.lithuanian" "lucene.morfologik" "lucene.nori" "lucene.norwegian "lucene.persian" "lucene.portuguese" "lucene.romanian" "lucene.russian" "lucene.smartcn" "lucene.sorani" "lucene.spanish" "lucene.swedish" "lucene.thai" "lucene.turkish" "lucene.ukrainian"

์ด ์ธ๋ฑ์Šค๋ฅผ ๊ฒ€์ƒ‰ํ•  ๋•Œ ๋‹จ์–ด๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ฐ ์ ์šฉ๋˜๋Š” ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค.

์ €์žฅ๋œ ์†Œ์Šค
๊ฐ์ฒด

Atlas Search์— ๋ชจ๋“  ํ•„๋“œ๋ฅผ ์ €์žฅํ• ์ง€(์ฐธ) ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ Atlas๋Š” Atlas Search์— ํ•„๋“œ๋ฅผ ์ €์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค(๊ฑฐ์ง“). ๋˜๋Š” Atlas Search์— ์ €์žฅ(ํฌํ•จ)ํ•˜๊ฑฐ๋‚˜ ์ €์žฅํ•˜์ง€ ์•Š์„(์ œ์™ธ) ํ•„๋“œ ๋ชฉ๋ก๋งŒ ํฌํ•จํ•˜๋Š” ๊ฐ์ฒด๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์„ค๋ช…์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (๋™์˜์–ด ๋งคํ•‘ ์ •์˜)

์ด ์ธ๋ฑ์Šค์—์„œ ๋‹จ์–ด๋ฅผ ๋™์˜์–ด์— ๋งคํ•‘ํ•˜๋Š” ๊ทœ์น™ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "name": "string",
  • "numPartitions": 1,
  • "type": "search",
  • "analyzer": "lucene.standard",
  • "analyzers": [
    ],
  • "mappings": {
    },
  • "searchAnalyzer": "lucene.standard",
  • "storedSource": {
    },
  • "synonyms": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "indexID": "32b6e34b3d91647abb20e7b8",
  • "name": "string",
  • "numPartitions": 1,
  • "status": "IN_PROGRESS",
  • "type": "search",
  • "analyzer": "lucene.standard",
  • "analyzers": [
    ],
  • "mappings": {
    },
  • "searchAnalyzer": "lucene.standard",
  • "storedSource": {
    },
  • "synonyms": [
    ]
}

๊ฒ€์ƒ‰ ๋…ธ๋“œ ์‚ญ์ œ

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์‚ญ์ œํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

๊ฒ€์ƒ‰ ๋…ธ๋“œ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ ์ค‘๋‹จ๋œ ๋ฒ„์ „: v2-{2024-05-30}, v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ๋ฐ˜ํ™˜ํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2025-03-12+json
{
  • "encryptionAtRestProvider": "NONE",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "specs": [
    ],
  • "stateName": "IDLE"
}

๊ฒ€์ƒ‰ ๋…ธ๋“œ ์—…๋ฐ์ดํŠธ

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ์—…๋ฐ์ดํŠธํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

ํ•„์ˆ˜
์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (ApiSearchDeploymentSpecView) = 1๊ฐœ ํ•ญ๋ชฉ

ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์„ค์ • ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

์ฐธ๊ณ : ํ˜„์žฌ ๋ชจ๋“  ๋…ธ๋“œ์— ๋Œ€ํ•ด ๋‹จ์ผ ๊ตฌ์„ฑ๋งŒ ํ—ˆ์šฉ๋ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "specs": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "encryptionAtRestProvider": "NONE",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "specs": [
    ],
  • "stateName": "IDLE"
}

๊ฒ€์ƒ‰ ๋…ธ๋“œ ๋งŒ๋“ค๊ธฐ

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ๋งŒ๋“ค ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

ํ•„์ˆ˜
์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (ApiSearchDeploymentSpecView) = 1๊ฐœ ํ•ญ๋ชฉ

ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๊ฒ€์ƒ‰ ๋…ธ๋“œ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์„ค์ • ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

์ฐธ๊ณ : ํ˜„์žฌ ๋ชจ๋“  ๋…ธ๋“œ์— ๋Œ€ํ•ด ๋‹จ์ผ ๊ตฌ์„ฑ๋งŒ ํ—ˆ์šฉ๋ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "specs": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "encryptionAtRestProvider": "NONE",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "specs": [
    ],
  • "stateName": "IDLE"
}

1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ ์˜ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค์—๋Š” ์ธ๋ฑ์‹ฑ๋œ ํ•„๋“œ์™€ ์ธ๋ฑ์Šค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ๋ถ„์„๊ธฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ์ฝ๊ธฐ ์“ฐ๊ธฐ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์„ ํฌํ•จํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
[
  • {
    }
]

1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ๋งŒ๋“ค๊ธฐ

์ง€์ •๋œ ์ปฌ๋ ‰์…˜ ์— ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ๋งŒ๋“ญ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค๋Š” ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ํ•„๋“œ์™€ ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•  ๋ถ„์„๊ธฐ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. MongoDB v4.2 ์ด์ƒ์„ ์‹คํ–‰ ํด๋Ÿฌ์Šคํ„ฐ๋งŒ Atlas Search ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

Atlas Search ์ธ๋ฑ์Šค๋ฅผ ์ƒ์„ฑํ•  ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

์ง€์ •๋œ ์ปฌ๋ ‰์…˜์— 1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

Atlas Search ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ปฌ๋ ‰์…˜์„ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

database
ํ•„์ˆ˜
๋ฌธ์ž์—ด

Atlas Search ์ธ๋ฑ์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ด๋ฆ„
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์ด ์ธ๋ฑ์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค. ๊ฐ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋‚ด์—์„œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— ์žˆ๋Š” ๋ชจ๋“  ์ธ๋ฑ์Šค์˜ ์ด๋ฆ„์€ ๊ณ ์œ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์œ ํ˜•
๋ฌธ์ž์—ด

์ธ๋ฑ์Šค์˜ ์œ ํ˜•์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์œ ํ˜•์€ ๊ฒ€์ƒ‰์ž…๋‹ˆ๋‹ค.

ํ•„์ˆ˜
๊ฐ์ฒด (ํ…์ŠคํŠธ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค ์ •์˜)

์‚ฌ์šฉ์ž๊ฐ€ ์„ค์ •ํ•œ ํ…์ŠคํŠธ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค ์ •์˜์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "name": "string",
  • "type": "search",
  • "definition": {
    }
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "indexID": "32b6e34b3d91647abb20e7b8",
  • "latestDefinition": {
    },
  • "latestDefinitionVersion": {
    },
  • "name": "string",
  • "queryable": true,
  • "status": "DELETING",
  • "statusDetail": [
    ],
  • "type": "search",
  • "synonymMappingStatus": "FAILED",
  • "synonymMappingStatusDetail": [
    ]
}

1๊ฐœ์˜ ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•ด ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜

์ง€์ •๋œ ์ปฌ๋ ‰์…˜ ์˜ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค์—๋Š” ์ธ๋ฑ์‹ฑ๋œ ํ•„๋“œ์™€ ์ธ๋ฑ์Šค๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ๋ถ„์„๊ธฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ์ฝ๊ธฐ ์“ฐ๊ธฐ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์„ ํฌํ•จํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ์ปฌ๋ ‰์…˜์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

databaseName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

1๊ฐœ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
[
  • {
    }
]

์ด๋ฆ„์œผ๋กœ 1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ์ œ๊ฑฐ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, ์ปฌ๋ ‰์…˜ ๋ฐ name ์œผ๋กœ ์‹๋ณ„ํ•œ ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ์‚ญ์ œ๋Š” ๊ถ๊ทน์ ์œผ๋กœ ์ผ๊ด€์ ์ธ ๋ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํ•˜๋‚˜ ์ด์ƒ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐ ์ปฌ๋ ‰์…˜์„ ํฌํ•จํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ์ปฌ๋ ‰์…˜์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

databaseName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

1๊ฐœ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

indexName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์‚ญ์ œํ•  Atlas Search ์ธ๋ฑ์Šค์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

์ด๋ฆ„์œผ๋กœ 1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, ์ปฌ๋ ‰์…˜ ๋ฐ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด ์ธ๋ฑ์Šค ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค ์—๋Š” ์ธ๋ฑ์‹ฑ๋œ ํ•„๋“œ์™€ ์ธ๋ฑ์Šค ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ๋ถ„์„๊ธฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ์ฝ๊ธฐ ์“ฐ๊ธฐ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์„ ํฌํ•จํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ์ปฌ๋ ‰์…˜์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

databaseName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

1๊ฐœ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

indexName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

๋ฐ˜ํ™˜ํ•  Atlas Search ์ธ๋ฑ์Šค์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "indexID": "32b6e34b3d91647abb20e7b8",
  • "latestDefinition": {
    },
  • "latestDefinitionVersion": {
    },
  • "name": "string",
  • "queryable": true,
  • "status": "DELETING",
  • "statusDetail": [
    ],
  • "type": "search",
  • "synonymMappingStatus": "FAILED",
  • "synonymMappingStatusDetail": [
    ]
}

์ด๋ฆ„์œผ๋กœ 1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ์—…๋ฐ์ดํŠธ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, ์ปฌ๋ ‰์…˜ ์ด๋ฆ„, ์ธ๋ฑ์Šค ์ด๋ฆ„์œผ๋กœ ์‹๋ณ„ํ•œ ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค๋Š” ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ํ•„๋“œ์™€ ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•  ๋ถ„์„๊ธฐ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

Atlas Search ์ธ๋ฑ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ํฌํ•จ๋œ ์ปฌ๋ ‰์…˜์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

databaseName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

1๊ฐœ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

indexName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์—…๋ฐ์ดํŠธํ•  Atlas Search ์ธ๋ฑ์Šค์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

Atlas Search ์ธ๋ฑ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์„ธ๋ถ€ ์ •๋ณด์ž…๋‹ˆ๋‹ค.

ํ•„์ˆ˜
ํ…์ŠคํŠธ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค ์ •์˜(๊ฐ์ฒด) ๋˜๋Š” ๋ฒกํ„ฐ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค ์ •์˜(๊ฐ์ฒด)

๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ธ๋ฑ์Šค ์ •์˜์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "definition": {
    }
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "indexID": "32b6e34b3d91647abb20e7b8",
  • "latestDefinition": {
    },
  • "latestDefinitionVersion": {
    },
  • "name": "string",
  • "queryable": true,
  • "status": "DELETING",
  • "statusDetail": [
    ],
  • "type": "search",
  • "synonymMappingStatus": "FAILED",
  • "synonymMappingStatusDetail": [
    ]
}

ID๋กœ 1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ์ œ๊ฑฐ

๊ณ ์œ  ID ๋กœ ์‹๋ณ„ํ•œ ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ์‚ญ์ œ๋Š” ๊ถ๊ทน์ ์œผ๋กœ ์ผ๊ด€์ ์ธ ๋ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํ•˜๋‚˜ ์ด์ƒ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐ ์ปฌ๋ ‰์…˜์„ ํฌํ•จํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

indexId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

Atlas cluster๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•œ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค ๊ฐ€์ ธ์˜ค๊ธฐ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค์˜ ID๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

ID๋กœ 1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๊ณ ์œ  ID ์‚ฌ์šฉํ•˜์—ฌ ์ด ์ธ๋ฑ์Šค ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค ์—๋Š” ์ธ๋ฑ์‹ฑ๋œ ํ•„๋“œ์™€ ์ธ๋ฑ์Šค ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ๋ถ„์„๊ธฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ์ฝ๊ธฐ ์“ฐ๊ธฐ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํ•˜๋‚˜ ์ด์ƒ์˜ Atlas Search ์ธ๋ฑ์Šค๊ฐ€ ์žˆ๋Š” ์ปฌ๋ ‰์…˜์„ ํฌํ•จํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

indexId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

Application Search ์ธ๋ฑ์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•œ ๋ชจ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค ๊ฐ€์ ธ์˜ค๊ธฐ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค์˜ ID๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "indexID": "32b6e34b3d91647abb20e7b8",
  • "latestDefinition": {
    },
  • "latestDefinitionVersion": {
    },
  • "name": "string",
  • "queryable": true,
  • "status": "DELETING",
  • "statusDetail": [
    ],
  • "type": "search",
  • "synonymMappingStatus": "FAILED",
  • "synonymMappingStatusDetail": [
    ]
}

ID๋กœ 1๊ฐœ์˜ Atlas Search ์ธ๋ฑ์Šค ์—…๋ฐ์ดํŠธ

๊ณ ์œ  ID ๋กœ ์‹๋ณ„ํ•œ ํ•˜๋‚˜์˜ Atlas Search ์ธ๋ฑ์Šค ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. Atlas Search ์ธ๋ฑ์Šค๋Š” ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ํ•„๋“œ์™€ ์ธ๋ฑ์Šค ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•  ๋ถ„์„๊ธฐ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

Atlas Search ์ธ๋ฑ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ปฌ๋ ‰์…˜์ด ํฌํ•จ๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

indexId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์•„ํ‹€๋ผ์Šค ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•œ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค ๊ฐ€์ ธ์˜ค๊ธฐ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  Atlas Search ์ธ๋ฑ์Šค์˜ ID๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

Atlas Search ์ธ๋ฑ์Šค์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ ์„ธ๋ถ€์ •๋ณด์ž…๋‹ˆ๋‹ค.

ํ•„์ˆ˜
ํ…์ŠคํŠธ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค ์ •์˜(๊ฐ์ฒด) ๋˜๋Š” ๋ฒกํ„ฐ ๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค ์ •์˜(๊ฐ์ฒด)

๊ฒ€์ƒ‰ ์ธ๋ฑ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ธ๋ฑ์Šค ์ •์˜์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "definition": {
    }
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ
{
  • "collectionName": "string",
  • "database": "string",
  • "indexID": "32b6e34b3d91647abb20e7b8",
  • "latestDefinition": {
    },
  • "latestDefinitionVersion": {
    },
  • "name": "string",
  • "queryable": true,
  • "status": "DELETING",
  • "statusDetail": [
    ],
  • "type": "search",
  • "synonymMappingStatus": "FAILED",
  • "synonymMappingStatusDetail": [
    ]
}

Auditing

MongoDB ํด๋ผ์šฐ๋“œ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ์‚ฌ ์„ค์ •์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  ํŽธ์ง‘ํ•ฉ๋‹ˆ๋‹ค.

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด ๊ฐ์‚ฌ ๊ตฌ์„ฑ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•œ ๊ฐ์‚ฌ ๊ตฌ์„ฑ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ๊ตฌ์„ฑ์€ MongoDB Cloud๊ฐ€ ๊ฐ์‚ฌ ๋กœ๊ทธ ์— ๊ธฐ๋กํ•˜๋Š” ์ด๋ฒคํŠธ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ M0, M2, M5 ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ๋ฆฌ์Šค ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "auditAuthorizationSuccess": false,
  • "auditFilter": "string",
  • "configurationType": "NONE",
  • "enabled": false
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด ๊ฐ์‚ฌ ๊ตฌ์„ฑ ์—…๋ฐ์ดํŠธ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•œ ๊ฐ์‚ฌ ๊ตฌ์„ฑ์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ๊ตฌ์„ฑ์€ MongoDB Cloud๊ฐ€ ๊ฐ์‚ฌ ๋กœ๊ทธ ์— ๊ธฐ๋กํ•˜๋Š” ์ด๋ฒคํŠธ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ M0, M2, M5 ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ๋ฆฌ์Šค ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ๊ฐ์‚ฌ ๊ตฌ์„ฑ์ด ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

auditAuthorizationSuccess
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์„ฑ๊ณต์ ์ธ ์ธ์ฆ์„ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•ด ๋ˆ„๊ตฐ๊ฐ€ ๊ฐ์‚ฌ๋ฅผ ์„ค์ •ํ–ˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ด๋Š” "atype" : "authCheck" ๊ฐ์‚ฌ ํ•„ํ„ฐ์—๋งŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ true ๋กœ ์„ค์ •ํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋ฉ๋‹ˆ๋‹ค.

auditFilter
๋ฌธ์ž์—ด

๊ธฐ๋กํ•  ์ด๋ฒคํŠธ๋ฅผ ์ง€์ •ํ•˜๋Š” JSON ๋ฌธ์„œ์ž…๋‹ˆ๋‹ค. ์ž‘์€ ๋”ฐ์˜ดํ‘œ๋‚˜ ํฐ ๋”ฐ์˜ดํ‘œ์™€ ๊ฐ™์ด ๊ตฌ๋ฌธ ๋ถ„์„์„ ๋ฐฉํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๋ฌธ์ž๋Š” ๋ฐฑ์Šฌ๋ž˜์‹œ (\) ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด์Šค์ผ€์ดํ”„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

ํ™œ์„ฑํ™”๋จ
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ์‚ฌ๋ฅผ ํ™œ์„ฑํ™”ํ–ˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "auditAuthorizationSuccess": false,
  • "auditFilter": "string",
  • "enabled": false
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "auditAuthorizationSuccess": false,
  • "auditFilter": "string",
  • "configurationType": "NONE",
  • "enabled": false
}

AWS ํด๋Ÿฌ์Šคํ„ฐ DNS

AWS์˜ MongoDB Cloud ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐฐํฌ์— ์ ์šฉ๋˜๋Š” ์‚ฌ์šฉ์ž ์ง€์ • DNS ๊ตฌ์„ฑ์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  ํŽธ์ง‘ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค์—๋Š” ํ”„๋กœ์ ํŠธ ID๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. AWS์—์„œ VPC ํ”ผ์–ด๋ง์„ ์‚ฌ์šฉํ•˜๋ฉด์„œ Amazon Route 53 ๋Œ€์‹  ์ž์ฒด DNS ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž ์ง€์ • DNS๋ฅผ ํ™œ์„ฑํ™”ํ•˜์„ธ์š”. 2020๋…„ 3์›” 31์ผ ์ด์ „์—๋Š” ์‚ฌ์šฉ์ž ์ง€์ • DNS ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ AWS ๋‚ด์— ๋ฐฐํฌ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ MongoDB Cloud์™€ VPC ํ”ผ์–ด๋ง๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋น„๊ณต๊ฐœ IP ์ฃผ์†Œ๋ฅผ ํ†ตํ•ด ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฐœ IP ์ฃผ์†Œ๋กœ ํ™•์ธ๋œ ์‚ฌ์šฉ์ž ์ง€์ • DNS. ๋น„๊ณต๊ฐœ IP ์ฃผ์†Œ๋กœ ํ™•์ธ๋œ AWS ๋‚ด๋ถ€ DNS. AWS์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • DNS ์„œ๋น„์Šค์™€ ํ•จ๊ป˜ ๋ฐฐํฌ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ํ”ผ์–ด๋ง ์—ฐ๊ฒฐ ๋ฌธ์ž์—ด์— ๋น„๊ณต๊ฐœ IP๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

AWS์˜ Atlas ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด 1๊ฐœ์˜ ์‚ฌ์šฉ์ž ์ง€์ • DNS ๊ตฌ์„ฑ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ AWS ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ง€์ • DNS ๊ตฌ์„ฑ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "enabled": true
}

AWS์˜ Atlas ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด 1๊ฐœ์˜ ์‚ฌ์šฉ์ž ์ง€์ • DNS ๊ตฌ์„ฑ ์ƒํƒœ ํ† ๊ธ€

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ AWS ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ง€์ • DNS ๊ตฌ์„ฑ์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. AWS VPC ํ”ผ์–ด๋ง์„ ์‚ฌ์šฉํ•˜๊ณ  ์ž์ฒด DNS ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž ์ง€์ • DNS๋ฅผ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ Atlas ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์˜ AWS ํด๋Ÿฌ์Šคํ„ฐ ์‚ฌ์šฉ์ž ์ •์˜ DNS ๊ตฌ์„ฑ์„ ์‚ฌ์šฉ ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ์‚ฌ์šฉ ์ค‘์ง€ํ•ฉ๋‹ˆ๋‹ค.

ํ™œ์„ฑํ™”๋จ
ํ•„์ˆ˜
๋ถ€์šธ

AWS(Amazon Web Services)์— ๋ฐฐํฌ๋œ ํ”„๋กœ์ ํŠธ์˜ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์‚ฌ์šฉ์ž ์ง€์ • DNS(๋„๋ฉ”์ธ ์ด๋ฆ„ ์‹œ์Šคํ…œ) ์‚ฌ์šฉ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. "enabled": true์ผ ๊ฒฝ์šฐ ํ”ผ์–ด๋ง ์—ฐ๊ฒฐ ๋ฌธ์ž์—ด์— ๊ฐœ์ธ IP๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ์— ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "enabled": true
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "enabled": true
}

ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…

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

๋ชจ๋“  ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์™€ ์—ฐ๊ฒฐ๋œ ๋ชจ๋“  ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{}

1๊ฐœ์˜ ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท ๋งŒ๋“ค๊ธฐ

AWS S3 ๋ฒ„ํ‚ท, Azure Blob Storage ์ปจํ…Œ์ด๋„ˆ ๋˜๋Š” Google Cloud Storage ๋ฒ„ํ‚ท์— ๋Œ€ํ•œ ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ƒ์„ฑ๋œ ์Šค๋ƒ…์ƒท์€ ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท ๋ฐ ์ฐธ์กฐ๋œ AWS S3 ๋ฒ„ํ‚ท, Azure Blob Storage ์ปจํ…Œ์ด๋„ˆ ๋˜๋Š” Google Cloud Storage ๋ฒ„ํ‚ท์œผ๋กœ ๋‚ด๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์ด ์ฐธ์กฐํ•ด์•ผ ํ•˜๋Š” ์—ญํ•  ๊ณผ AWS S3 ๋ฒ„ํ‚ท, Azure Blob Storage ์ปจํ…Œ์ด๋„ˆ ๋˜๋Š” Google Cloud Storage ๋ฒ„ํ‚ท์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

cloudProvider
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์Šค๋ƒ…์ƒท ์„ ๋‚ด๋ณด๋‚ด๋Š” cloud ์ œ๊ณต์ž ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

bucketName
ํ•„์ˆ˜
๋ฌธ์ž์—ด [3 ... 63 ] ๋ฌธ์ž

์—ญํ•  ์— ๋‚ด๋ณด๋‚ด๊ธฐ ๊ถŒํ•œ์ด ๋ถ€์—ฌ๋œ AWS S3 ๋ฒ„ํ‚ท์„ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

iamRoleId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

MongoDB Cloud๊ฐ€ AWS S3 ๋ฒ„ํ‚ท์— ์•ก์„ธ์Šคํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ํ†ตํ•ฉ AWS ์•ก์„ธ์Šค ์—ญํ•  ID๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ

AWS

{
  • "bucketName": "export-bucket",
  • "cloudProvider": "AWS",
  • "iamRoleId": "668c5f0ed436263134491592"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ

AWS

{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "bucketName": "export-bucket",
  • "cloudProvider": "AWS",
  • "iamRoleId": "668c5f0ed436263134491592",
  • "links": []
}

1๊ฐœ์˜ ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท ์‚ญ์ œ

๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์„ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. ์•ก์„ธ์Šค ์ทจ์†Œํ•˜๊ธฐ ์ „์— ์ด ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์œผ๋กœ ๋‚ด๋ณด๋‚ด๋Š” ์ด ํ”„๋กœ์ ํŠธ์˜ ๋ชจ๋“  ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ž๋™ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

exportBucketId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์„ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์™€ ์—ฐ๊ฒฐ๋œ ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท ํ•œ ๊ฐœ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

exportBucketId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์„ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
์˜ˆ์‹œ

AWS

{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "bucketName": "export-bucket",
  • "cloudProvider": "AWS",
  • "iamRoleId": "668c5f0ed436263134491592",
  • "links": []
}

๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ… ์„ค์ • ๋น„ํ™œ์„ฑํ™”

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ… ์„ค์ •์„ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ์ „์ œ ์กฐ๊ฑด์œผ๋กœ https://www.mongodb.com/ko-kr/docs/atlas/๋ฐฑ์—…/cloud-backup/backup-compliance-policy/ ์˜ ์ง€์นจ์— ๋”ฐ๋ผ ์ง€์› ํ‹ฐ์ผ“ ๋จผ์ € ํŒŒ์ผ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ… ์„ค์ • ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ… ์„ค์ •์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-10-01+json
{
  • "authorizedEmail": "user@example.com",
  • "authorizedUserFirstName": "string",
  • "authorizedUserLastName": "string",
  • "copyProtectionEnabled": false,
  • "deletable": false,
  • "encryptionAtRestEnabled": false,
  • "onDemandPolicyItem": {
    },
  • "pitEnabled": false,
  • "projectId": "32b6e34b3d91647abb20e7b8",
  • "restoreWindowDays": 0,
  • "scheduledPolicyItems": [
    ],
  • "state": "ACTIVE",
  • "updatedDate": "2019-08-24T14:15:22Z",
  • "updatedUser": "user@example.com"
}

๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์„ค์ • ์—…๋ฐ์ดํŠธ ๋˜๋Š” ํ™œ์„ฑํ™”

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•œ ๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ… ์„ค์ •์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

overwriteBackupPolicies
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

๋น„์ค€์ˆ˜ ๋ฐฑ์—… ์ •์ฑ…์„ ์ƒˆ ๋ฐ์ดํ„ฐ ๋ณดํ˜ธ ์„ค์ •์œผ๋กœ ๋ฎ์–ด์“ธ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-10-01+json

์ƒˆ๋กœ์šด ๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ… ์„ค์ •.

authorizedEmail
ํ•„์ˆ˜
๋ฌธ์ž์—ด <email>

๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ… ์„ค์ • ์—…๋ฐ์ดํŠธ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•œ ์‚ฌ์šฉ์ž์˜ ์ด๋ฉ”์ผ ์ฃผ์†Œ.

authorizedUserFirstName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ… ์„ค์ • ์—…๋ฐ์ดํŠธ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•œ ์‚ฌ์šฉ์ž์˜ ์ด๋ฆ„.

authorizedUserLastName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ… ์„ค์ • ์—…๋ฐ์ดํŠธ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•œ ์‚ฌ์šฉ์ž์˜ ์„ฑ.

copyProtectionEnabled
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์ถ”๊ฐ€ ์Šค๋ƒ…์ƒท ๋ฆฌ์ „์ด ์ œ๊ฑฐ๋˜๋”๋ผ๋„ ํด๋Ÿฌ์Šคํ„ฐ ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฅธ ๋ฆฌ์ „์œผ๋กœ ๋ณต์‚ฌ๋œ ๋ฐฑ์—…์„ ์‚ญ์ œํ•  ์ˆ˜ ์—†๋„๋ก ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์ด ๊ฐ’์—๋Š” ๊ธฐ๋ณธ๊ฐ’ false๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

encryptionAtRestEnabled
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ…์ด ์žˆ๋Š” ๋ชจ๋“  ํด๋Ÿฌ์Šคํ„ฐ์— ๊ณ ๊ฐ ํ‚ค ๊ด€๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•œ ์ €์žฅ ์‹œ ์•”ํ˜ธํ™”๊ฐ€ ํ•„์š”ํ•œ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์ด ๊ฐ’์—๋Š” ๊ธฐ๋ณธ๊ฐ’ false๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

๊ฐ์ฒด (BackupComplianceOnDemandPolicyItem)

์˜จ๋””๋งจ๋“œ ์ •์ฑ…์— ๋Œ€ํ•œ ์‚ฌ์–‘.

pitEnabled
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ…๊ณผ ํ•จ๊ป˜ ์ง€์†์  ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์ด ๊ฐ’์—๋Š” ๊ธฐ๋ณธ๊ฐ’ false๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

projectId
๋ฌธ์ž์—ด^([a-f0-9]{24})$

๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ…์— ๋Œ€ํ•œ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด.

restoreWindowDays
integer <int32>

๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ…์ด ์ ์šฉ๋œ ์ง€์†์  ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์œผ๋กœ ๋ณต์›ํ•  ์ˆ˜ ์žˆ๋Š” ์ด์ „ ๋‚ ์งœ ์ˆ˜. 0์ด ์•„๋‹Œ ์–‘์˜ ์ •์ˆ˜๋ฅผ ์ง€์ •ํ•ด์•ผ ํ•˜๋ฉฐ ์ตœ๋Œ€ ๋ณด์กด ๊ธฐ๊ฐ„์€ ์‹œ๊ฐ„๋‹น ๋ณด์กด ์‹œ๊ฐ„์„ ์ดˆ๊ณผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋Š” ๋ฐฑ์—… ์ปดํ”Œ๋ผ์ด์–ธ์Šค ์ •์ฑ…์ด ์ ์šฉ๋˜๋Š” ์ง€์†์  ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์—๋งŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (BackupComplianceScheduledPolicyItem)

์˜ˆ์•ฝ๋œ ํ•˜๋‚˜์˜ ์ •์ฑ…์— ๋Œ€ํ•œ ์‚ฌ์–‘์ด ํฌํ•จ๋œ ๋ชฉ๋ก.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-10-01+json
{
  • "authorizedEmail": "user@example.com",
  • "authorizedUserFirstName": "string",
  • "authorizedUserLastName": "string",
  • "copyProtectionEnabled": false,
  • "encryptionAtRestEnabled": false,
  • "onDemandPolicyItem": {
    },
  • "pitEnabled": false,
  • "projectId": "32b6e34b3d91647abb20e7b8",
  • "restoreWindowDays": 0,
  • "scheduledPolicyItems": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-10-01+json
{
  • "authorizedEmail": "user@example.com",
  • "authorizedUserFirstName": "string",
  • "authorizedUserLastName": "string",
  • "copyProtectionEnabled": false,
  • "deletable": false,
  • "encryptionAtRestEnabled": false,
  • "onDemandPolicyItem": {
    },
  • "pitEnabled": false,
  • "projectId": "32b6e34b3d91647abb20e7b8",
  • "restoreWindowDays": 0,
  • "scheduledPolicyItems": [
    ],
  • "state": "ACTIVE",
  • "updatedDate": "2019-08-24T14:15:22Z",
  • "updatedUser": "user@example.com"
}

๋ชจ๋“  ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ์ž‘์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ Atlas cluster ์™€ ์—ฐ๊ฒฐ๋œ ๋ชจ๋“  ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ์ž‘์—…์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ Atlas ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ์ž‘์—… ๋งŒ๋“ค๊ธฐ

ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•˜์—ฌ ์ „์šฉ Atlas cluster ์˜ ๋ฐฑ์—… ์Šค๋ƒ…์ƒท ํ•˜๋‚˜๋ฅผ ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์œผ๋กœ ๋‚ด๋ณด๋ƒ…๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ Atlas ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ƒ์„ฑํ•  Cloud Backup ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ์ž‘์—…์˜ ์ •๋ณด.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (BackupLabel)

๋‚ด๋ณด๋‚ด๊ธฐ ์ž‘์—…์ด ์™„๋ฃŒ๋˜๋ฉด MongoDB Cloud๊ฐ€ ๋ฒ„ํ‚ท์— ์—…๋กœ๋“œํ•˜๋Š” ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ํŒŒ์ผ์— ์ถ”๊ฐ€ํ•  ์‚ฌ์šฉ์ž ์ง€์ • ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ‚ค-๊ฐ’ ์Œ ์ปฌ๋ ‰์…˜.

exportBucketId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์„ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

snapshotId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

๋‚ด๋ณด๋‚ผ ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท ์Šค๋ƒ…์ƒท์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "customData": [
    ],
  • "exportBucketId": "32b6e34b3d91647abb20e7b8",
  • "snapshotId": "32b6e34b3d91647abb20e7b8"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "components": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "customData": [
    ],
  • "exportBucketId": "32b6e34b3d91647abb20e7b8",
  • "exportStatus": {
    },
  • "finishedAt": "2019-08-24T14:15:22Z",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "prefix": "string",
  • "snapshotId": "32b6e34b3d91647abb20e7b8",
  • "state": "Cancelled",
  • "stateReason": {
    }
}

1๊ฐœ์˜ ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ์ž‘์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ Atlas cluster ์™€ ์—ฐ๊ฒฐ๋œ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์Šค๋ƒ…์ƒท ๋‚ด๋ณด๋‚ด๊ธฐ ์ž‘์—… ํ•œ ๊ฐœ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ Atlas ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

exportId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

24๊ณ ์œ ํ•œ -๋‚ด๋ณด๋‚ด๊ธฐ string ์ž‘์—…์„ ์‹๋ณ„ํ•˜๋Š” 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "components": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "customData": [
    ],
  • "exportBucketId": "32b6e34b3d91647abb20e7b8",
  • "exportStatus": {
    },
  • "finishedAt": "2019-08-24T14:15:22Z",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "prefix": "string",
  • "snapshotId": "32b6e34b3d91647abb20e7b8",
  • "state": "Cancelled",
  • "stateReason": {
    }
}

1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ๋ชจ๋“  ๋ณต์› ์ž‘์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ํด๋Ÿฌ์Šคํ„ฐ ์— ๋Œ€ํ•œ ๋ชจ๋“  cloud ๋ฐฑ์—… ๋ณต์› ์ž‘์—…์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

๋ฐ˜ํ™˜ํ•˜๋ ค๋Š” ๋ณต์› ์ž‘์—…์ด ํฌํ•จ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ 1๊ฐœ์˜ ์Šค๋ƒ…์ƒท ๋ณต์›

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

์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์—์„œ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์Šค๋ƒ…์ƒท ํ•˜๋‚˜๋ฅผ ๋ณต์›ํ•ฉ๋‹ˆ๋‹ค.

deliveryType
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "automated" "download" "pointInTime"

์ƒ์„ฑํ•  ๋ณต์› ์ž‘์—…์„ ๋ถ„๋ฅ˜ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

oplogInc
integer <int32> >= 1

์ด ์Šค๋ƒ…์ƒท์„ ๋ณต์›ํ•  Oplog ์ž‘์—… ๋ฒˆํ˜ธ. ์ด ์ˆซ์ž๋Š” Oplog ํƒ€์ž„์Šคํƒฌํ”„์˜ ๋‘ ๋ฒˆ์งธ ๋ถ€๋ถ„์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค๋Š” "deliveryType" : "pointInTime" ๋ฐ oplogTs๊ฐ€ 0์„ ์ดˆ๊ณผํ•  ๋•Œ ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

oplogTs
integer <int32> >= 1199145600

์ด ์Šค๋ƒ…์ƒท์„ ๋ณต์›ํ•  ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„ ์ดํ›„ ๊ฒฝ๊ณผ๋œ ์‹œ๊ฐ„(์ดˆ)์œผ๋กœ ์ด ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ˆซ์ž๋Š” Oplog ํƒ€์ž„์Šคํƒฌํ”„์˜ ์ฒซ ๋ฒˆ์งธ ๋ถ€๋ถ„์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค๋Š” "deliveryType" : "pointInTime" ๋ฐ oplogTs๊ฐ€ 0์„ ์ดˆ๊ณผํ•  ๋•Œ ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

pointInTimeUTCSeconds
integer <int32> >= 1199145600

MongoDB Cloud๊ฐ€ ์ด ์Šค๋ƒ…์ƒท์„ ๋ณต์›ํ•œ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„ ์ดํ›„ ๊ฒฝ๊ณผ๋œ ์‹œ๊ฐ„(์ดˆ)์œผ๋กœ ์ด ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค๋Š” "deliveryType" : "pointInTime" ๋ฐ pointInTimeUTCSeconds๊ฐ€ 0์„ ์ดˆ๊ณผํ•  ๋•Œ ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

snapshotId
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์Šค๋ƒ…์ƒท์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด.

targetClusterName
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

๋ณต์› ์ž‘์—…์ด ์Šค๋ƒ…์ƒท์„ ๋ณต์›ํ•˜๋Š” ๋Œ€์ƒ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”. ๋ฆฌ์†Œ์Šค๋Š” "deliveryType": "automated"์ผ ๋•Œ ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. automated ๋ฐ pointInTime ๋ณต์› ์œ ํ˜•์— ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

targetGroupId
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์ง€์ •๋œ targetClusterName์— ๋Œ€ํ•œ ๋Œ€์ƒ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. automated ๋ฐ pointInTime ๋ณต์› ์œ ํ˜•์— ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "deliveryType": "automated",
  • "oplogInc": 1,
  • "oplogTs": 1199145600,
  • "pointInTimeUTCSeconds": 1199145600,
  • "snapshotId": "32b6e34b3d91647abb20e7b8",
  • "targetClusterName": "string",
  • "targetGroupId": "32b6e34b3d91647abb20e7b8"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cancelled": true,
  • "components": [
    ],
  • "deliveryType": "automated",
  • "deliveryUrl": [
    ],
  • "desiredTimestamp": {
    },
  • "expired": true,
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "failed": true,
  • "finishedAt": "2019-08-24T14:15:22Z",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "oplogInc": 1,
  • "oplogTs": 1199145600,
  • "pointInTimeUTCSeconds": 1199145600,
  • "privateDownloadDeliveryUrls": [
    ],
  • "snapshotId": "32b6e34b3d91647abb20e7b8",
  • "targetClusterName": "string",
  • "targetGroupId": "32b6e34b3d91647abb20e7b8",
  • "timestamp": "2019-08-24T14:15:22Z"
}

1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ 1๊ฐœ์˜ ๋ณต์› ์ž‘์—… ์ทจ์†Œ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ์˜ cloud ๋ฐฑ์—… ๋ณต์› ์ž‘์—… ํ•œ ๊ฐœ๋ฅผ ์ทจ์†Œํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

restoreJobId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์ œ๊ฑฐํ•  ๋ณต์› ์ž‘์—…์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ 1๊ฐœ์˜ ๋ณต์› ์ž‘์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜ ํด๋Ÿฌ์Šคํ„ฐ ์— ๋Œ€ํ•œ cloud ๋ฐฑ์—… ๋ณต์› ์ž‘์—… ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

๋ฐ˜ํ™˜ํ•˜๋ ค๋Š” ๋ณต์› ์ž‘์—…์ด ํฌํ•จ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

restoreJobId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

๋ฐ˜ํ™˜ํ•  ๋ณต์› ์ž‘์—…์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cancelled": true,
  • "components": [
    ],
  • "deliveryType": "automated",
  • "deliveryUrl": [
    ],
  • "desiredTimestamp": {
    },
  • "expired": true,
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "failed": true,
  • "finishedAt": "2019-08-24T14:15:22Z",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "oplogInc": 1,
  • "oplogTs": 1199145600,
  • "pointInTimeUTCSeconds": 1199145600,
  • "privateDownloadDeliveryUrls": [
    ],
  • "snapshotId": "32b6e34b3d91647abb20e7b8",
  • "targetClusterName": "string",
  • "targetGroupId": "32b6e34b3d91647abb20e7b8",
  • "timestamp": "2019-08-24T14:15:22Z"
}

๋ชจ๋“  ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์ผ์ • ์ œ๊ฑฐ

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ ์— ๋Œ€ํ•œ ๋ชจ๋“  cloud ๋ฐฑ์—… ์ผ์ •์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ˆ์ • MongoDB Cloud๊ฐ€ ์˜ˆ์•ฝ๋œ ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•˜๋Š” ์‹œ๊ธฐ์™€ ํ•ด๋‹น ์Šค๋ƒ…์ƒท์„ ์ €์žฅํ•˜๋Š” ๊ธฐ๊ฐ„์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ Atlas ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "autoExportEnabled": true,
  • "clusterId": "32b6e34b3d91647abb20e7b8",
  • "clusterName": "string",
  • "copySettings": [
    ],
  • "export": {
    },
  • "extraRetentionSettings": [
    ],
  • "links": [],
  • "nextSnapshot": "2019-08-24T14:15:22Z",
  • "policies": [
    ],
  • "referenceHourOfDay": 0,
  • "referenceMinuteOfHour": 0,
  • "restoreWindowDays": 0,
  • "useOrgAndGroupNamesInExportPrefix": true
}

1๊ฐœ์˜ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์ผ์ • ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ๋‚ด์—์„œ ์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ cloud ๋ฐฑ์—… ์˜ˆ์ • ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ˆ์ • MongoDB Cloud๊ฐ€ ์˜ˆ์•ฝ๋œ ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•˜๋Š” ์‹œ๊ธฐ์™€ ํ•ด๋‹น ์Šค๋ƒ…์ƒท์„ ์ €์žฅํ•˜๋Š” ๊ธฐ๊ฐ„์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "autoExportEnabled": true,
  • "clusterId": "32b6e34b3d91647abb20e7b8",
  • "clusterName": "string",
  • "copySettings": [
    ],
  • "export": {
    },
  • "extraRetentionSettings": [
    ],
  • "links": [],
  • "nextSnapshot": "2019-08-24T14:15:22Z",
  • "policies": [
    ],
  • "referenceHourOfDay": 0,
  • "referenceMinuteOfHour": 0,
  • "restoreWindowDays": 0,
  • "useOrgAndGroupNamesInExportPrefix": true
}

1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์ผ์ • ์—…๋ฐ์ดํŠธ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ๋‚ด ํด๋Ÿฌ์Šคํ„ฐ ํ•œ ๊ฐœ์— ๋Œ€ํ•œ cloud ๋ฐฑ์—… ์˜ˆ์ • ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ˆ์ • MongoDB Cloud๊ฐ€ ์˜ˆ์•ฝ๋œ ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•˜๋Š” ์‹œ๊ธฐ์™€ ํ•ด๋‹น ์Šค๋ƒ…์ƒท์„ ์ €์žฅํ•˜๋Š” ๊ธฐ๊ฐ„์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-08-05+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ๋‚ด ํ•˜๋‚˜์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์ผ์ •์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ์š”์ฒญ ๋ณธ๋ฌธ์—๋Š” ์—…๋ฐ์ดํŠธํ•˜๋ ค๋Š” ํ•„๋“œ๋งŒ ์ œ๊ณตํ•˜์„ธ์š”.

autoExportEnabled
๋ถ€์šธ

MongoDB Cloud๊ฐ€ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์Šค๋ƒ…์ƒท์„ ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์œผ๋กœ ์ž๋™์œผ๋กœ ๋‚ด๋ณด๋‚ผ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (DiskBackupCopySetting20240805)

์›ํ•˜๋Š” ๋ฐฑ์—… ์ •์ฑ…์˜ ๋ณต์‚ฌ ์„ค์ • ํ•ญ๋ชฉ๋ณ„ ๋ฌธ์„œ๊ฐ€ ํฌํ•จ๋œ ๋ชฉ๋ก.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (DeleteCopiedBackups20240805)

์‚ญ์ œํ•˜๋ ค๋Š” ๋ฐฑ์—… ๋ณต์‚ฌ๋ณธ์˜ ์‚ญ์ œ๋œ ๊ฐ ๋ณต์‚ฌ๋ณธ ์„ค์ •์— ๋Œ€ํ•œ ๋ฌธ์„œ๊ฐ€ ํฌํ•จ๋œ ๋ชฉ๋ก.

๊ฐ์ฒด (export)

ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์Šค๋ƒ…์ƒท์„ ์ž๋™์œผ๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ ์œ„ํ•œ ์ •์ฑ…์ž…๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (ExtraRetentionSetting)

์›ํ•˜๋Š” ๋ฐฑ์—… ์ •์ฑ…์˜ ์ถ”๊ฐ€ ๋ณด์กด ์„ค์ • ํ•ญ๋ชฉ๋ณ„ ๋ฌธ์„œ๊ฐ€ ํฌํ•จ๋œ ๋ชฉ๋ก.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (AdvancedDiskBackupSnapshotSchedulePolicy) 1๊ฐœ ์ดํ•˜์˜ ํ•ญ๋ชฉ

์ด ๋ฐฑ์—… ์ผ์ •์— ์„ค์ •๋œ ๊ทœ์น™.

referenceHourOfDay
integer <int32>

MongoDB Cloud๊ฐ€ ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•˜๋Š” ์‹œ์ ์„ ๋‚˜ํƒ€๋‚ด๋Š” ํ˜‘์ • ์„ธ๊ณ„์‹œ(UTC)๋กœ ํ‘œ์‹œ๋œ ์‹œ๊ฐ„.

referenceMinuteOfHour
integer <int32>

MongoDB Cloud๊ฐ€ ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•˜๋Š” ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” referenceHourOfDay์˜ ๋ถ„.

restoreWindowDays
integer <int32>

์ง€์†์ ์ธ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์˜ ์ •ํ™•์„ฑ์œผ๋กœ ๋‹ค์‹œ ๋ณต์›ํ•  ์ˆ˜ ์žˆ๋Š” ์ด์ „ ์ผ์ˆ˜. '0'์ด ์•„๋‹Œ ์–‘์˜ ์ •์ˆ˜๋ฅผ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋Š” ์ง€์†์ ์ธ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์—๋งŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

updateSnapshots
๋ถ€์šธ

MongoDB Cloud๊ฐ€ ์ด์ „์— ์ƒ์„ฑํ•œ ์Šค๋ƒ…์ƒท์— ์—…๋ฐ์ดํŠธ๋œ ๋ฐฑ์—… ์ •์ฑ…์˜ ๋ณด์กด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

useOrgAndGroupNamesInExportPrefix
๋ถ€์šธ

MongoDB Cloud๊ฐ€ ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํ‚ท์— ์—…๋กœ๋“œํ•˜๋Š” ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ํŒŒ์ผ ๊ฒฝ๋กœ์— ์กฐ์ง ๋ฐ ํ”„๋กœ์ ํŠธ UUID ๋Œ€์‹  ์กฐ์ง ๋ฐ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์„ ์‚ฌ์šฉํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "autoExportEnabled": true,
  • "copySettings": [
    ],
  • "deleteCopiedBackups": [
    ],
  • "export": {
    },
  • "extraRetentionSettings": [
    ],
  • "policies": [
    ],
  • "referenceHourOfDay": 0,
  • "referenceMinuteOfHour": 0,
  • "restoreWindowDays": 0,
  • "updateSnapshots": true,
  • "useOrgAndGroupNamesInExportPrefix": true
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "autoExportEnabled": true,
  • "clusterId": "32b6e34b3d91647abb20e7b8",
  • "clusterName": "string",
  • "copySettings": [
    ],
  • "export": {
    },
  • "extraRetentionSettings": [
    ],
  • "links": [],
  • "nextSnapshot": "2019-08-24T14:15:22Z",
  • "policies": [
    ],
  • "referenceHourOfDay": 0,
  • "referenceMinuteOfHour": 0,
  • "restoreWindowDays": 0,
  • "useOrgAndGroupNamesInExportPrefix": true
}

๋ชจ๋“  ๋ณต์ œ๋ณธ ์„ธํŠธ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ์˜ ๋ชจ๋“  ์Šค๋ƒ…์ƒท์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ์˜จ๋””๋งจ๋“œ ์Šค๋ƒ…์ƒท ์ƒ์„ฑ

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์˜จ๋””๋งจ๋“œ ์Šค๋ƒ…์ƒท์„ ํ•˜๋‚˜ ๋งŒ๋“ญ๋‹ˆ๋‹ค. Atlas๋Š” ์˜จ๋””๋งจ๋“œ ์Šค๋ƒ…์ƒท์„ ์ฆ‰์‹œ ์ƒ์„ฑํ•˜๊ณ  ์ •๊ธฐ์ ์œผ๋กœ ์˜ˆ์•ฝ๋œ ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๋Œ€๊ธฐ ์ค‘ ๋˜๋Š” ์ง„ํ–‰ ์ค‘ ์ƒํƒœ์˜ ์˜จ๋””๋งจ๋“œ ์Šค๋ƒ…์ƒท์ด ์žˆ๋Š” ๊ฒฝ์šฐ ๋‹ค๋ฅธ ์Šค๋ƒ…์ƒท์„ ์ƒ์„ฑํ•˜๊ธฐ ์ „์— ์ด์ „์— ์ฐ์€ ์˜จ๋””๋งจ๋“œ ์Šค๋ƒ…์ƒท์˜ ์ฒ˜๋ฆฌ๊ฐ€ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ์„ธ์š”.

์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์˜จ๋””๋งจ๋“œ ์Šค๋ƒ…์ƒท ํ•œ ๊ฐœ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

description
๋ฌธ์ž์—ด

์Šค๋ƒ…์ƒท์˜ ๋ชฉ์ ์„ ์„ค๋ช…ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ฌธ๊ตฌ ๋˜๋Š” ๋ฌธ์žฅ์ž…๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค๋Š” "status" : "onDemand"์ผ ๋•Œ ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

retentionInDays
integer <int32> >= 1

MongoDB Cloud๊ฐ€ ์ฃผ๋ฌธํ˜• ์Šค๋ƒ…์ƒท์„ ๋ณด๊ด€ํ•  ์ผ์ˆ˜์ž…๋‹ˆ๋‹ค. 1 ์ด์ƒ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "description": "string",
  • "retentionInDays": 1
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "cloudProvider": "AWS",
  • "copyRegions": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "string",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "frequencyType": "hourly",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "masterKeyUUID": "72659f08-8b3c-4913-bb4e-a8a68e036502",
  • "mongodVersion": "string",
  • "policyItems": [
    ],
  • "replicaSetName": "string",
  • "snapshotType": "onDemand",
  • "status": "queued",
  • "storageSizeBytes": 0,
  • "type": "replicaSet"
}

1๊ฐœ์˜ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์ œ๊ฑฐ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ์˜ ์Šค๋ƒ…์ƒท ํ•˜๋‚˜๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

snapshotId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์›ํ•˜๋Š” ์Šค๋ƒ…์ƒท์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint)",
  • "error": 401,
  • "errorCode": "NOT_ORG_GROUP_CREATOR",
  • "reason": "Unauthorized"
}

1๊ฐœ์˜ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ์˜ ์Šค๋ƒ…์ƒท ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

snapshotId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์›ํ•˜๋Š” ์Šค๋ƒ…์ƒท์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "configServerType": "EMBEDDED",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "string",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "frequencyType": "hourly",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "masterKeyUUID": "72659f08-8b3c-4913-bb4e-a8a68e036502",
  • "members": [
    ],
  • "mongodVersion": "string",
  • "policyItems": [
    ],
  • "snapshotIds": [
    ],
  • "snapshotType": "onDemand",
  • "status": "queued",
  • "storageSizeBytes": 0,
  • "type": "replicaSet"
}

๋ชจ๋“  ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ์˜ ๋ชจ๋“  ์Šค๋ƒ…์ƒท์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ๋ณต์ œ๋ณธ ์„ธํŠธ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์ œ๊ฑฐ

์ง€์ •๋œ ์Šค๋ƒ…์ƒท ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

snapshotId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์›ํ•˜๋Š” ์Šค๋ƒ…์ƒท์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ๋ณต์ œ๋ณธ ์„ธํŠธ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ ์—์„œ ํ•˜๋‚˜์˜ ์Šค๋ƒ…์ƒท ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

snapshotId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์›ํ•˜๋Š” ์Šค๋ƒ…์ƒท์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cloudProvider": "AWS",
  • "copyRegions": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "string",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "frequencyType": "hourly",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "masterKeyUUID": "72659f08-8b3c-4913-bb4e-a8a68e036502",
  • "mongodVersion": "string",
  • "policyItems": [
    ],
  • "replicaSetName": "string",
  • "snapshotType": "onDemand",
  • "status": "queued",
  • "storageSizeBytes": 0,
  • "type": "replicaSet"
}

1๊ฐœ์˜ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์— ๋Œ€ํ•ด ๋งŒ๋ฃŒ์ผ ๋ณ€๊ฒฝ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ์— ๋Œ€ํ•œ cloud ๋ฐฑ์—… ์Šค๋ƒ…์ƒท ํ•˜๋‚˜์˜ ๋งŒ๋ฃŒ ๋‚ ์งœ๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์—๋Š” ํ”„๋กœ์ ํŠธ ๋ฐฑ์—… ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

snapshotId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์›ํ•˜๋Š” ์Šค๋ƒ…์ƒท์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์˜ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์Šค๋ƒ…์ƒท ํ•˜๋‚˜์˜ ๋งŒ๋ฃŒ ๋‚ ์งœ๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

retentionUnit
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "DAYS" "WEEKS" "MONTHS" "YEARS"

MongoDB Cloud๊ฐ€ ์Šค๋ƒ…์ƒท ๋ณด์กด์„ ์ธก์ •ํ•˜๋Š” ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค.

retentionValue
ํ•„์ˆ˜
integer <int32>

MongoDB Cloud๊ฐ€ ์Šค๋ƒ…์ƒท์„ ๋ณด์กดํ•˜๋Š” ์ผ, ์ฃผ ์›”, ๋˜๋Š” ๋…„์˜ ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆซ์ž. ์‚ฌ์šฉ ๋นˆ๋„๊ฐ€ ๋‚ฎ์€ ์ •์ฑ… ํ•ญ๋ชฉ์˜ ๊ฒฝ์šฐ, MongoDB Cloud์—์„œ๋Š” ์‚ฌ์šฉ ๋นˆ๋„๊ฐ€ ๋†’์€ ์ •์ฑ… ํ•ญ๋ชฉ์— ์ง€์ •๋œ ๊ฐ’ ์ด์ƒ์˜ ๊ฐ’์„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„๋ณ„ ์ •์ฑ… ํ•ญ๋ชฉ์—์„œ 2์ผ๊ฐ„ ๋ณด์กดํ•˜๋„๋ก ์ง€์ •ํ•œ ๊ฒฝ์šฐ ์ฃผ๊ฐ„ ์ •์ฑ… ํ•ญ๋ชฉ์˜ ๋ณด์กด์— 2์ผ ์ด์ƒ์„ ์ง€์ •ํ•˜์„ธ์š”.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "retentionUnit": "DAYS",
  • "retentionValue": 5
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cloudProvider": "AWS",
  • "copyRegions": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "description": "string",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "frequencyType": "hourly",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "masterKeyUUID": "72659f08-8b3c-4913-bb4e-a8a68e036502",
  • "mongodVersion": "string",
  • "policyItems": [
    ],
  • "replicaSetName": "string",
  • "snapshotType": "onDemand",
  • "status": "queued",
  • "storageSizeBytes": 0,
  • "type": "replicaSet"
}

1๊ฐœ์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ๋ชจ๋“  ๋ณต์› ์ž‘์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค ์— ๋Œ€ํ•œ ๋ชจ๋“  ๋ณต์› ์ž‘์—…์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด API๋Š” createServerlessInstance ์—”๋“œํฌ์ธํŠธ๋กœ ์ƒ์„ฑ๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์—์„œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์—”๋“œํฌ์ธํŠธ๋Š” 2026๋…„ 1์›”์— ์ข…๋ฃŒ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๋Œ€์‹  listFlexBackupRestoreJobs ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์—์„œ 1๊ฐœ์˜ ์Šค๋ƒ…์ƒท ๋ณต์›

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค ์˜ ์Šค๋ƒ…์ƒท ํ•˜๋‚˜๋ฅผ ๋ณต์›ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด API๋Š” createServerlessInstance ์—”๋“œํฌ์ธํŠธ๋กœ ์ƒ์„ฑ๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์—์„œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์—”๋“œํฌ์ธํŠธ๋Š” 2026๋…„ 1์›”์— ์ข…๋ฃŒ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๋Œ€์‹  createFlexBackupRestoreJob ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

๋ณต์›ํ•˜๋ ค๋Š” ์Šค๋ƒ…์ƒท์ด ์žˆ๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์—์„œ ํ•˜๋‚˜์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์˜ ์Šค๋ƒ…์ƒท ํ•˜๋‚˜๋ฅผ ๋ณต์›ํ•ฉ๋‹ˆ๋‹ค.

deliveryType
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "automated" "download" "pointInTime"

์ƒ์„ฑํ•  ๋ณต์› ์ž‘์—…์„ ๋ถ„๋ฅ˜ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

oplogInc
integer <int32> >= 1

์ด ์Šค๋ƒ…์ƒท์„ ๋ณต์›ํ•  Oplog ์ž‘์—… ๋ฒˆํ˜ธ. ์ด ์ˆซ์ž๋Š” Oplog ํƒ€์ž„์Šคํƒฌํ”„์˜ ๋‘ ๋ฒˆ์งธ ๋ถ€๋ถ„์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค๋Š” "deliveryType" : "pointInTime" ๋ฐ oplogTs๊ฐ€ 0์„ ์ดˆ๊ณผํ•  ๋•Œ ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

oplogTs
integer <int32> >= 1199145600

์ด ์Šค๋ƒ…์ƒท์„ ๋ณต์›ํ•  ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„ ์ดํ›„ ๊ฒฝ๊ณผ๋œ ์‹œ๊ฐ„(์ดˆ)์œผ๋กœ ์ด ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ˆซ์ž๋Š” Oplog ํƒ€์ž„์Šคํƒฌํ”„์˜ ์ฒซ ๋ฒˆ์งธ ๋ถ€๋ถ„์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค๋Š” "deliveryType" : "pointInTime" ๋ฐ oplogTs๊ฐ€ 0์„ ์ดˆ๊ณผํ•  ๋•Œ ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

pointInTimeUTCSeconds
integer <int32> >= 1199145600

MongoDB Cloud๊ฐ€ ์ด ์Šค๋ƒ…์ƒท์„ ๋ณต์›ํ•œ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„ ์ดํ›„ ๊ฒฝ๊ณผ๋œ ์‹œ๊ฐ„(์ดˆ)์œผ๋กœ ์ด ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค๋Š” "deliveryType" : "pointInTime" ๋ฐ pointInTimeUTCSeconds๊ฐ€ 0์„ ์ดˆ๊ณผํ•  ๋•Œ ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

snapshotId
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์Šค๋ƒ…์ƒท์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด.

targetClusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

๋ณต์› ์ž‘์—…์ด ์Šค๋ƒ…์ƒท์„ ๋ณต์›ํ•˜๋Š” ๋Œ€์ƒ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”. ๋ฆฌ์†Œ์Šค๋Š” "deliveryType": "automated"์ผ ๋•Œ ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

targetGroupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์ง€์ •๋œ targetClusterName์— ๋Œ€ํ•œ ๋Œ€์ƒ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "deliveryType": "automated",
  • "oplogInc": 1,
  • "oplogTs": 1199145600,
  • "pointInTimeUTCSeconds": 1199145600,
  • "snapshotId": "32b6e34b3d91647abb20e7b8",
  • "targetClusterName": "string",
  • "targetGroupId": "32b6e34b3d91647abb20e7b8"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cancelled": true,
  • "deliveryType": "automated",
  • "deliveryUrl": [
    ],
  • "desiredTimestamp": {
    },
  • "expired": true,
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "failed": true,
  • "finishedAt": "2019-08-24T14:15:22Z",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "oplogInc": 1,
  • "oplogTs": 1199145600,
  • "pointInTimeUTCSeconds": 1199145600,
  • "snapshotId": "32b6e34b3d91647abb20e7b8",
  • "targetClusterName": "string",
  • "targetGroupId": "32b6e34b3d91647abb20e7b8",
  • "timestamp": "2019-08-24T14:15:22Z"
}

1๊ฐœ์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด 1๊ฐœ์˜ ๋ณต์› ์ž‘์—… ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค ์— ๋Œ€ํ•œ ๋ณต์› ์ž‘์—… ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด API๋Š” createServerlessInstance ์—”๋“œํฌ์ธํŠธ๋กœ ์ƒ์„ฑ๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์—์„œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์—”๋“œํฌ์ธํŠธ๋Š” 2026๋…„ 1์›”์— ์ข…๋ฃŒ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๋Œ€์‹  getFlexBackupRestoreJob ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

restoreJobId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

๋ฐ˜ํ™˜ํ•  ๋ณต์› ์ž‘์—…์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cancelled": true,
  • "deliveryType": "automated",
  • "deliveryUrl": [
    ],
  • "desiredTimestamp": {
    },
  • "expired": true,
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "failed": true,
  • "finishedAt": "2019-08-24T14:15:22Z",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "oplogInc": 1,
  • "oplogTs": 1199145600,
  • "pointInTimeUTCSeconds": 1199145600,
  • "snapshotId": "32b6e34b3d91647abb20e7b8",
  • "targetClusterName": "string",
  • "targetGroupId": "32b6e34b3d91647abb20e7b8",
  • "timestamp": "2019-08-24T14:15:22Z"
}

1๊ฐœ์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์˜ ๋ชจ๋“  ์Šค๋ƒ…์ƒท ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค ์˜ ๋ชจ๋“  ์Šค๋ƒ…์ƒท์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด API๋Š” createServerlessInstance ์—”๋“œํฌ์ธํŠธ๋กœ ์ƒ์„ฑ๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์—์„œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์—”๋“œํฌ์ธํŠธ๋Š” 2026๋…„ 1์›”์— ์ข…๋ฃŒ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๋Œ€์‹  listFlexBackups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์—์„œ 1๊ฐœ์˜ ์Šค๋ƒ…์ƒท ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค ์˜ ์Šค๋ƒ…์ƒท ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด ์—”๋“œํฌ์ธํŠธ๋Š” createServerlessInstance API๋กœ ์ƒ์„ฑ๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์—์„œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์—”๋“œํฌ์ธํŠธ๋Š” 2026๋…„ 1์›”์— ์ข…๋ฃŒ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๋Œ€์‹  getFlexBackup ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

snapshotId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

์›ํ•˜๋Š” ์Šค๋ƒ…์ƒท์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "createdAt": "2019-08-24T14:15:22Z",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "frequencyType": "hourly",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "mongodVersion": "string",
  • "serverlessInstanceName": "string",
  • "snapshotType": "onDemand",
  • "status": "queued",
  • "storageSizeBytes": 0
}

ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์„œ๋น„์Šค

ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์„œ๋น„์Šค๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์†Œ์Šค ์กฐ์ง, ํ”„๋กœ์ ํŠธ, MongoDB ํด๋Ÿฌ์Šคํ„ฐ๋Š” Cloud Manager ๋˜๋Š” Ops Manager์— ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€์ƒ ์กฐ์ง, ํ”„๋กœ์ ํŠธ ๋ฐ MongoDB ํด๋Ÿฌ์Šคํ„ฐ๋Š” MongoDB Cloud์— ์žˆ์Šต๋‹ˆ๋‹ค. ์†Œ์Šค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” SCRAM-SHA ์™ธ์˜ ๋‹ค๋ฅธ ์ธ์ฆ์€ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

1๊ฐœ์˜ ๋กœ์ปฌ ๊ด€๋ฆฌํ˜• ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ MongoDB Atlas๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜

Cloud ๋˜๋Š” Ops Manager๊ฐ€ ๊ด€๋ฆฌํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ ํ•˜๋‚˜๋ฅผ MongoDB Atlas๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•ฉ๋‹ˆ๋‹ค.

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ๋ฐ˜๋“œ์‹œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ๊ฒ€์ฆํ•˜์„ธ์š”.

์ด API ์—”๋“œํฌ์ธํŠธ๋Š” ํ‘ธ์‹œ ์‹ค์‹œ๊ฐ„ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์—๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๋ ค๋ฉด API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : Time Series ์ปฌ๋ ‰์…˜ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์€ ํ˜„์žฌ MongoDB 6.0 ์ด์ƒ์—์„œ๋Š” ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. MongoDB 6.0 ์ด์ƒ์—์„œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์ˆ˜ํ–‰ํ•˜๋ฉด ์†Œ์Šค ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ชจ๋“  Time Series ์ปฌ๋ ‰์…˜์„ ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

์ƒ์„ฑ๋˜๋Š” ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ•˜๋‚˜.

ํ•„์ˆ˜
๊ฐ์ฒด (Destination)

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๋Œ€์ƒ์„ ์„ค๋ช…ํ•˜๋Š” ๋ฌธ์„œ.

dropDestinationData
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์ด ์‹œ์ž‘๋˜๊ธฐ ์ „์— ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋Œ€์ƒ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ๋ชจ๋“  ์ปฌ๋ ‰์…˜์„ ์ œ๊ฑฐํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

migrationHosts
์˜ ๋ฐฐ์—ด strings = 1๊ฐœ ํ•ญ๋ชฉ

์ด ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์— ์‚ฌ์šฉ๋œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ˜ธ์ŠคํŠธ ๋ชฉ๋ก.

๊ฐ์ฒด (ShardingRequest)

MongoDB 6.0 ์ด์ƒ์—์„œ ๋ณต์ œ๋ณธ ์„ธํŠธ ์†Œ์Šค์—์„œ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ๋Œ€์ƒ์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•  ๋•Œ ๋Œ€์ƒ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ์ƒค๋”ฉ์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ฌธ์„œ. ๋Œ€์ƒ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ปฌ๋ ‰์…˜์„ ์ƒค๋”ฉํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด ์ด ํ•ญ๋ชฉ์„ ๋น„์›Œ ๋‘์„ธ์š”.

ํ•„์ˆ˜
๊ฐ์ฒด (Source)

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์˜ ์ถœ์ฒ˜๋ฅผ ์„ค๋ช…ํ•˜๋Š” ๋ฌธ์„œ.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "destination": {
    },
  • "dropDestinationData": false,
  • "migrationHosts": [
    ],
  • "sharding": {
    },
  • "source": {
    }
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "lagTimeSeconds": 0,
  • "migrationHosts": [
    ],
  • "readyForCutover": true,
  • "status": "NEW"
}

1๊ฐœ์˜ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์š”์ฒญ ํ™•์ธ

์ œ๊ณต๋œ ์ž๊ฒฉ ์ฆ๋ช…, ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋””์Šคํฌ ๊ณต๊ฐ„, MongoDB ๋ฒ„์ „ ๋“ฑ์ด ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์š”์ฒญ์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๊ฒ€์‚ฌ๋ฅผ ํ†ต๊ณผํ•˜๋ฉด ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๋ ค๋ฉด API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

๊ฒ€์ฆ๋˜๋Š” ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ•˜๋‚˜.

ํ•„์ˆ˜
๊ฐ์ฒด (Destination)

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๋Œ€์ƒ์„ ์„ค๋ช…ํ•˜๋Š” ๋ฌธ์„œ.

dropDestinationData
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์ด ์‹œ์ž‘๋˜๊ธฐ ์ „์— ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋Œ€์ƒ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ๋ชจ๋“  ์ปฌ๋ ‰์…˜์„ ์ œ๊ฑฐํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

migrationHosts
์˜ ๋ฐฐ์—ด strings = 1๊ฐœ ํ•ญ๋ชฉ

์ด ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์— ์‚ฌ์šฉ๋œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ˜ธ์ŠคํŠธ ๋ชฉ๋ก.

๊ฐ์ฒด (ShardingRequest)

MongoDB 6.0 ์ด์ƒ์—์„œ ๋ณต์ œ๋ณธ ์„ธํŠธ ์†Œ์Šค์—์„œ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ๋Œ€์ƒ์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•  ๋•Œ ๋Œ€์ƒ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ์ƒค๋”ฉ์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ฌธ์„œ. ๋Œ€์ƒ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ปฌ๋ ‰์…˜์„ ์ƒค๋”ฉํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด ์ด ํ•ญ๋ชฉ์„ ๋น„์›Œ ๋‘์„ธ์š”.

ํ•„์ˆ˜
๊ฐ์ฒด (Source)

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์˜ ์ถœ์ฒ˜๋ฅผ ์„ค๋ช…ํ•˜๋Š” ๋ฌธ์„œ.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "destination": {
    },
  • "dropDestinationData": false,
  • "migrationHosts": [
    ],
  • "sharding": {
    },
  • "source": {
    }
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "errorMessage": "string",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "sourceGroupId": "32b6e34b3d91647abb20e7b8",
  • "status": "PENDING"
}

1๊ฐœ์˜ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์ž‘์—… ๋ฐ˜ํ™˜

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์ž‘์—… ํ•˜๋‚˜์˜ ์ƒํƒœ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๋ ค๋ฉด API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

validationId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 507f1f77bcf86cd799439011

์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์ž‘์—…์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "errorMessage": "string",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "sourceGroupId": "32b6e34b3d91647abb20e7b8",
  • "status": "PENDING"
}

1๊ฐœ์˜ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ž‘์—… ๋ฐ˜ํ™˜

ํ•˜๋‚˜์˜ ํด๋Ÿฌ์Šคํ„ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ž‘์—…์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ํ‘ธ์‹œ ์‹ค์‹œ๊ฐ„ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ž‘์—…์€ ํ•˜๋‚˜์˜ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ˜ธ์ŠคํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๋ ค๋ฉด API ํ‚ค์— ์กฐ์ง ๊ตฌ์„ฑ์› ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

liveMigrationId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 6296fb4c7c7aa997cf94e9a8

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "lagTimeSeconds": 0,
  • "migrationHosts": [
    ],
  • "readyForCutover": true,
  • "status": "NEW"
}

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ ํด๋Ÿฌ์Šคํ„ฐ ์ „ํ™˜

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ MongoDB Atlas๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ „ํ™˜์ด ์™„๋ฃŒ๋˜๋ฉด ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ „ํ™˜์ด ์™„๋ฃŒ๋˜๋ฉด MongoDB Atlas๊ฐ€ ์‹ค์‹œ๊ฐ„ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ์™„๋ฃŒํ•˜๊ณ  ์†Œ์Šค ํด๋Ÿฌ์Šคํ„ฐ์™€์˜ ๋™๊ธฐํ™”๋ฅผ ์ค‘์ง€ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๋ ค๋ฉด API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

liveMigrationId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 6296fb4c7c7aa997cf94e9a8

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ ๋ฐ˜ํ™˜

์ง€์ •๋œ ์กฐ์ง์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
orgId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 4888442a3354817a7320eb61

ํ”„๋กœ์ ํŠธ๊ฐ€ ํฌํ•จ๋œ ์กฐ์ง์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. /orgs ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์กฐ์ง์„ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
[
  • {
    }
]

1๊ฐœ์˜ ๋งํฌ ํ† ํฐ ์ œ๊ฑฐ

ํ•˜๋‚˜์˜ ์กฐ์ง ๋งํฌ์™€ ์กฐ์ง๊ณผ ๊ด€๋ จ๋œ ๊ณต๊ฐœ API ํ‚ค๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. MongoDB Atlas๋Š” ํ‘ธ์‹œ ์‹ค์‹œ๊ฐ„ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์—๋งŒ ๋งํฌ ํ† ํฐ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์‹ค์‹œ๊ฐ„ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜(ํ‘ธ์‹œ)์œผ๋กœ Cloud Manager ๋˜๋Š” Ops Manager์—์„œ MongoDB Atlas๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ํ‘ธ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๋ ค๋ฉด API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
orgId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 4888442a3354817a7320eb61

ํ”„๋กœ์ ํŠธ๊ฐ€ ํฌํ•จ๋œ ์กฐ์ง์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. /orgs ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์กฐ์ง์„ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ๋งํฌ ํ† ํฐ ๋งŒ๋“ค๊ธฐ

๋งํฌ๋ฅผ ์™„๋ฃŒํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋ชจ๋“  ์ •๋ณด๊ฐ€ ํฌํ•จ๋œ ํ•˜๋‚˜์˜ ๋งํฌ ํ† ํฐ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. MongoDB Atlas๋Š” ํ‘ธ์‹œ ์‹ค์‹œ๊ฐ„ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์—๋งŒ ๋งํฌ ํ† ํฐ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์‹ค์‹œ๊ฐ„ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜(ํ‘ธ์‹œ)์œผ๋กœ Cloud Manager ๋˜๋Š” Ops Manager์—์„œ MongoDB Atlas๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ํ‘ธ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๋ ค๋ฉด API ํ‚ค์— ์กฐ์ง ์†Œ์œ ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
orgId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 4888442a3354817a7320eb61

ํ”„๋กœ์ ํŠธ๊ฐ€ ํฌํ•จ๋œ ์กฐ์ง์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. /orgs ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์กฐ์ง์„ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๊ณผ ๊ด€๋ จ๋œ IP ์ฃผ์†Œ ์•ก์„ธ์Šค ๋ชฉ๋ก ํ•ญ๋ชฉ.

accessListIps
์˜ ๋ฐฐ์—ด strings

API ํ‚ค์™€ ์—ฐ๊ฒฐ๋œ IP ์ฃผ์†Œ ์•ก์„ธ์Šค ๋ชฉ๋ก ํ•ญ๋ชฉ.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "accessListIps": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "linkToken": "string"
}

ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž ์•ก์„ธ์Šค

Atlas์—์„œ AWS IAM ์—ญํ• ์„ ๋ฐ˜ํ™˜, ์ถ”๊ฐ€, ๊ถŒํ•œ ๋ถ€์—ฌ ๋ฐ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž ์•ก์„ธ์Šค ์—ญํ•  ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ์žˆ๋Š” ๋ชจ๋“  cloud ์ œ๊ณต์ž ์•ก์„ธ์Šค ์—ญํ• ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "awsIamRoles": [
    ],
  • "azureServicePrincipals": [
    ]
}

1๊ฐœ์˜ ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž ์•ก์„ธ์Šค ์—ญํ•  ๋งŒ๋“ค๊ธฐ

์ง€์ •๋œ cloud ์ œ๊ณต์ž ์— ๋Œ€ํ•ด ํ•˜๋‚˜์˜ ์•ก์„ธ์Šค ์—ญํ•  ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ผ๋ถ€ MongoDB Cloud ๊ธฐ๋Šฅ์€ ์ธ์ฆ ์— ์ด๋Ÿฌํ•œ cloud ์ œ๊ณต์ž ์•ก์„ธ์Šค ์—ญํ• ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž์— ๋Œ€ํ•ด ํ•˜๋‚˜์˜ ์—ญํ• ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

providerName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์—ญํ• ์˜ ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "providerName": "AWS"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "providerName": "AWS",
  • "atlasAWSAccountArn": "arn:aws:iam::772401394250:role/my-test-aws-role",
  • "atlasAssumedRoleExternalId": "24be57ae-3c7b-4f00-b2d8-8ad523d5bd8d",
  • "authorizedDate": "2019-08-24T14:15:22Z",
  • "createdDate": "2019-08-24T14:15:22Z",
  • "featureUsages": [
    ],
  • "iamAssumedRoleArn": "arn:aws:iam::123456789012:root",
  • "roleId": "32b6e34b3d91647abb20e7b8"
}

1๊ฐœ์˜ ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž ์•ก์„ธ์Šค ์—ญํ•  ์ธ์ฆ ํ•ด์ œ

์ง€์ •๋œ ์•ก์„ธ์Šค ์—ญํ•  ์— ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ์ทจ์†Œํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

cloudProvider
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "A" "AZURE" "GCP"

์ธ์ฆ ํ•ด์ œํ•  ์—ญํ• ์˜ ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

roleId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์—ญํ• ์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

์ง€์ •๋œ ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž ์•ก์„ธ์Šค ์—ญํ•  ๋ฐ˜ํ™˜

์ง€์ •๋œ ID์™€ ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ์žˆ๋Š” ์•ก์„ธ์Šค ์—ญํ•  ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

roleId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์—ญํ• ์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "providerName": "AWS",
  • "atlasAWSAccountArn": "arn:aws:iam::772401394250:role/my-test-aws-role",
  • "atlasAssumedRoleExternalId": "24be57ae-3c7b-4f00-b2d8-8ad523d5bd8d",
  • "authorizedDate": "2019-08-24T14:15:22Z",
  • "createdDate": "2019-08-24T14:15:22Z",
  • "featureUsages": [
    ],
  • "iamAssumedRoleArn": "arn:aws:iam::123456789012:root",
  • "roleId": "32b6e34b3d91647abb20e7b8"
}

1๊ฐœ์˜ ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž ์•ก์„ธ์Šค ์—ญํ• ์— ๊ถŒํ•œ ๋ถ€์—ฌ

์ง€์ •๋œ ์•ก์„ธ์Šค ์—ญํ•  ์— ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด API ์—”๋“œํฌ์ธํŠธ๋Š” MongoDB Cloud ์„œ๋น„์Šค์— ๋Œ€ํ•œ ํ†ตํ•ฉ ์•ก์„ธ์Šค ์ƒ์„ฑํ•˜๋Š” ์ ˆ์ฐจ์˜ ํ•œ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. GCP ์„œ๋น„์Šค ๊ณ„์ • ์•ก์„ธ์Šค ์—๋Š” ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

roleId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

์—ญํ• ์„ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ์•ก์„ธ์Šค ์—ญํ• ์— ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

providerName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์—ญํ• ์˜ ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

iamAssumedRoleArn
๋ฌธ์ž์—ด [20 ... 2048 ]์ž

MongoDB Cloud๊ฐ€ AWS ๊ณ„์ •์˜ ๋ฆฌ์†Œ์Šค์— ์•ก์„ธ์Šคํ•  ๋•Œ ๊ฐ€์ •ํ•˜๋Š” AWS(Amazon Web Services) IAM(ID ๋ฐ ์•ก์„ธ์Šค ๊ด€๋ฆฌ) ์—ญํ• ์„ ์‹๋ณ„ํ•˜๋Š” ARN(Amazon ๋ฆฌ์†Œ์Šค ์ด๋ฆ„).

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "providerName": "AWS",
  • "iamAssumedRoleArn": "arn:aws:iam::123456789012:root"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
์˜ˆ์‹œ
{
  • "providerName": "AWS",
  • "atlasAWSAccountArn": "arn:aws:iam::772401394250:role/my-test-aws-role",
  • "atlasAssumedRoleExternalId": "24be57ae-3c7b-4f00-b2d8-8ad523d5bd8d",
  • "authorizedDate": "2019-08-24T14:15:22Z",
  • "createdDate": "2019-08-24T14:15:22Z",
  • "featureUsages": [
    ],
  • "iamAssumedRoleArn": "arn:aws:iam::123456789012:root",
  • "roleId": "32b6e34b3d91647abb20e7b8"
}

ํด๋Ÿฌ์Šคํ„ฐ ์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜

ํด๋Ÿฌ์Šคํ„ฐ ์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๋ฐ˜ํ™˜, ์‹œ์ž‘ ๋˜๋Š” ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์ข…๋ฃŒ

ํด๋Ÿฌ์Šคํ„ฐ ์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜์ด ์ง„ํ–‰ ์ค‘์ธ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "clusterName": "string",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "outageFilters": [
    ],
  • "startRequestDate": "2019-08-24T14:15:22Z",
  • "state": "START_REQUESTED"
}

1๊ฐœ์˜ ์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฐ˜ํ™˜

ํ•˜๋‚˜์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ํ•˜๋‚˜ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜์ด ์ง„ํ–‰ ์ค‘์ธ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "clusterName": "string",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "outageFilters": [
    ],
  • "startRequestDate": "2019-08-24T14:15:22Z",
  • "state": "START_REQUESTED"
}

์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์‹œ์ž‘

ํด๋Ÿฌ์Šคํ„ฐ ์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ์ง„ํ–‰ํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (AtlasClusterOutageSimulationOutageFilter) non-empty

ํด๋Ÿฌ์Šคํ„ฐ ์žฅ์•  ์‹œ๋ฎฌ๋ ˆ์ด์…˜์˜ ์œ ํ˜•์„ ์ง€์ •ํ•˜๋Š” ์„ค์ • ๋ชฉ๋ก.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "outageFilters": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "clusterName": "string",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "outageFilters": [
    ],
  • "startRequestDate": "2019-08-24T14:15:22Z",
  • "state": "START_REQUESTED"
}

ํด๋Ÿฌ์Šคํ„ฐ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐฐํฌ๋ฅผ ๋ฐ˜ํ™˜, ์ถ”๊ฐ€, ํŽธ์ง‘ ๋ฐ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ ๊ตฌ์„ฑ์„ ๋ณ€๊ฒฝํ•˜๋ฉด ๋น„์šฉ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํ”„๋กœ์ ํŠธ ID๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ์Šน์ธ๋œ ํด๋Ÿฌ์Šคํ„ฐ ๋ฐ˜ํ™˜

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

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ํด๋Ÿฌ์Šคํ„ฐ ๋ฐ˜ํ™˜

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

์ด ์—”๋“œํฌ์ธํŠธ๋Š” createCluster ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” Flex ํด๋Ÿฌ์Šคํ„ฐ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ ์ด์ „์˜ M2/M5 ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋„ 2026๋…„ 1์›”๊นŒ์ง€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Flex ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๋Œ€์‹  listFlexClusters ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. ์ง€์› ์ค‘๋‹จ๋œ ๋ฒ„์ „: v2-{2023-02-01}, v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

includeDeletedWithRetainedBackups
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

๋ฐฑ์—…์„ ์œ ์ง€ํ•˜๋ฉด์„œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋ฐ˜ํ™˜ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

๋‹จ์ผ ํ”„๋กœ์ ํŠธ์—์„œ ๋‹จ์ผ ํด๋Ÿฌ์Šคํ„ฐ ์ƒ์„ฑ

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

M2 ๋˜๋Š” M5์˜ instanceSize๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋Œ€์‹  Flex ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. M2 ๋˜๋Š” M5์˜ instanceSize์— ๋Œ€ํ•œ ์ง€์›์€ 2026๋…„ 1์›”์— ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ์ด๋Ÿฌํ•œ ๊ตฌ์„ฑ์—๋Š” createFlexCluster API๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ์ง€์› ์ค‘๋‹จ๋œ ๋ฒ„์ „: v2-{2024-08-05}, v2-{2023-02-01}, v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-10-23+json

์ด ํ”„๋กœ์ ํŠธ์—์„œ ์ƒ์„ฑํ•  ํด๋Ÿฌ์Šคํ„ฐ์ž…๋‹ˆ๋‹ค.

acceptDataRisksAndForceReplicaSetReconfig
๋ฌธ์ž์—ด <date-time>

๋ฆฌ์ „ ์ค‘๋‹จ์œผ๋กœ ์ธํ•ด ํ”„๋ผ์ด๋จธ๋ฆฌ ํ”„๋ผ์ด๋จธ๋ฆฌ ๋ณต๊ตฌํ•˜๊ธฐ ์œ„ํ•ด ์žฌ๊ตฌ์„ฑ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํ† ํด๋กœ์ง€ ์žฌ๊ตฌ์„ฑ๊ณผ ํ•จ๊ป˜ ์ด ํ•„๋“œ ์ œ์ถœ ์ƒˆ๋กœ์šด ๋ฆฌ์ „ ์ค‘๋‹จ ๋ฐฉ์ง€ ํ† ํด๋กœ์ง€ ์š”์ฒญ. ํˆฌํ‘œ ์„ ํƒ ๊ฐ€๋Šฅ ๋…ธ๋“œ ๋Œ€๋ถ€๋ถ„์ด ์ค‘๋‹จ๋œ ์ƒํƒœ์—์„œ ๊ฐ•์ œ๋กœ ์žฌ๊ตฌ์„ฑํ•˜๋ฉด ๋ณต์ œ๋œ ์“ฐ๊ธฐ(๋Œ€๋ถ€๋ถ„์˜ ์ปค๋ฐ‹๋œ ์“ฐ๊ธฐ ํฌํ•จ)๊ฐ€ ์ƒˆ ํ”„๋ผ์ด๋จธ๋ฆฌ ๋…ธ๋“œ์— ๋ณต์ œ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ๊ฐ€ ์†์‹ค๋  ์œ„ํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. MongoDB Atlas ๋ฌธ์„œ์— ์ž์„ธํ•œ ๋‚ด์šฉ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์œ„ํ—˜์„ ์ˆ˜๋ฐ˜ํ•˜๋Š” ์ž‘์—…์„ ๊ณ„์† ์ง„ํ–‰ํ•˜๋ ค๋ฉด acceptDataRisksAndForceReplicaSetReconfig ๋ฅผ ํ˜„์žฌ ๋‚ ์งœ๋กœ ์„ค์ •ํ•˜๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์ฒด (ApiAtlasClusterAdvancedConfigurationView)

๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์„ธ๋ถ€ ์‚ฌํ•ญ์˜ ํ•˜์œ„ ์ง‘ํ•ฉ์„ ๊ตฌ์„ฑํ•˜๋Š” ์„ค์ • ๊ทธ๋ฃน์ž…๋‹ˆ๋‹ค.

backupEnabled
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ true ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ๋กœ ์„ค์ •ํ•˜๋‹ค ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.true NVMe ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ฒฝ์šฐ ์ด ๊ฐ’์„ ๋กœ ์„ค์ •ํ•˜๋‹ค ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฐฑ์—…์€ ์ „์šฉ ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•˜๊ณ  ํ…Œ๋„ŒํŠธ ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๊ณต์œ  ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋กœ ์„ค์ •ํ•˜๋‹ค false ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฐ์ฒด (Business Intelligence ์„ค์ •์„ ์œ„ํ•œ MongoDB Connector)

์ด ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ Business Intelligence์šฉ MongoDB Connector๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์„ค์ •์ž…๋‹ˆ๋‹ค.

clusterType
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "REPLICASET" "SHARDED" "GEOSHARDED"

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋…ธ๋“œ์˜ ๊ตฌ์„ฑ.

configServerManagementMode
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "ATLAS_MANAGED"
์—ด๊ฑฐํ˜•: "ATLAS_MANAGED" "FIXED_TO_DEDICATED"

์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ์œ„ํ•œ Config ์„œ๋ฒ„ ๊ด€๋ฆฌ ๋ชจ๋“œ์ž…๋‹ˆ๋‹ค.

ATLAS_MANAGED๋กœ ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ, Atlas๋Š” ์ตœ์ ์˜ ์„ฑ๋Šฅ๊ณผ ๋น„์šฉ ์ ˆ๊ฐ์„ ์œ„ํ•ด ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ตฌ์„ฑ ์„œ๋ฒ„ ์œ ํ˜•์„ ์ž๋™์œผ๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

FIXED_TO_DEDICATION์œผ๋กœ ๊ตฌ์„ฑ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋Š” ํ•ญ์ƒ ์ „์šฉ config ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

diskWarmingMode
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "FULLY_WARMED"
์—ด๊ฑฐํ˜•: "FULLY_WARMED" "VISIBLE_EARLIER"

๋””์Šคํฌ ๋ณด์˜จ ๋ชจ๋“œ ์„ ํƒ.

encryptionAtRestProvider
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "NONE" "A" "AZURE" "GCP"

ํด๋Ÿฌ์Šคํ„ฐ์— ์ถ”๊ฐ€ ์ €์žฅ ์‹œ ์•”ํ˜ธํ™” ๊ณ„์ธต์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ๊ฐ ํ‚ค๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž. ๋ฏธํ™œ์„ฑํ™” ์•”ํ˜ธํ™”๋ฅผ ์œ„ํ•œ ๊ณ ๊ฐ ํ‚ค ๊ด€๋ฆฌ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด ํด๋Ÿฌ์Šคํ„ฐ replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize ์„ค์ •์„ M10 ์ด์ƒ์œผ๋กœ ์ง€์ •ํ•˜๊ณ  "backupEnabled" : false ๋˜๋Š” ์™„์ „ํžˆ ์ƒ๋žตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

globalClusterSelfManagedSharding
๋ถ€์šธ

์ƒˆ ๊ธ€๋กœ๋ฒŒ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์ƒค๋”ฉ ๊ด€๋ฆฌ ๋ชจ๋“œ๋ฅผ ๊ตฌ์„ฑํ•˜๋ ค๋ฉด ์ด ํ•„๋“œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

false๋กœ ์„ค์ •ํ•˜๋ฉด ๊ด€๋ฆฌ ๋ชจ๋“œ๊ฐ€ Atlas ๊ด€๋ฆฌ ์ƒค๋”ฉ์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ๊ธ€๋กœ๋ฒŒ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ƒค๋”ฉ์„ ์™„๋ฒฝํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๋ฉฐ ์›ํ™œํ•œ ๋ฐฐํฌ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋„๋ก ๊ตฌ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

true๋กœ ์„ค์ •ํ•˜๋ฉด ๊ด€๋ฆฌ ๋ชจ๋“œ๊ฐ€ ์ž์ฒด ๊ด€๋ฆฌ ์ƒค๋”ฉ์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์ƒค๋“œ ๊ด€๋ฆฌ๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋งก๊ธฐ๋ฉฐ ์œ ์—ฐํ•œ ๊ณ ๊ธ‰ ๋ฐฐํฌ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋ฐฐํฌ๋œ ํ›„์—๋Š” ์ด ์„ค์ •์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (์ปดํฌ๋„ŒํŠธ ๋ ˆ์ด๋ธ”)
๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ์— ํƒœ๊ทธ๋ฅผ ์ง€์ •ํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜๋Š” 1~255์ž ๊ธธ์ด์˜ ํ‚ค-๊ฐ’ ์Œ ์ปฌ๋ ‰์…˜. MongoDB Cloud ์ฝ˜์†”์—๋Š” ๋ ˆ์ด๋ธ”์ด ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ ๋ ˆ์ด๋ธ”์€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ ํ–ฅํ›„ ์ถœ์‹œํ•˜๋‹ค ์—์„œ ์ œ๊ฑฐ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๋Œ€์‹  ๋ฆฌ์†Œ์Šค ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๊ฐ์ฒด (EmployeeAccessGrantView)

ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ์ˆ˜์ค€ ๋ฐ ๋งŒ๋ฃŒ ๊ถŒํ•œ์„ MongoDB ์ง์›์—๊ฒŒ ๋ถ€์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

mongoDBMajorVersion
๋ฌธ์ž์—ด

ํด๋Ÿฌ์Šคํ„ฐ ์˜ MongoDB ์ฃผ์š” ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ๋ฐ”์ด๋„ˆ๋ฆฌ ๋ฉ”์ด์ € ๋ฒ„์ „์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

์ƒ์„ฑ ์‹œ: ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ MongoDB ๋ฒ„์ „ ์ค‘์—์„œ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ํ˜„์žฌ ๊ถŒ์žฅ๋˜๋Š” ๊ธฐ๋ณธ๊ฐ’์„ ์ง€์ •ํ•˜์ง€ ์•Š๊ณ  ๊ทธ๋Œ€๋กœ ๋‘์–ด MongoDB ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ถŒ์žฅ๋˜๋Š” ๋ฒ„์ „์€ ์ตœ์‹  LTS(์žฅ๊ธฐ ์ง€์›) ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ ์ „์ฒด ๋ฆด๋ฆฌ์Šค ์ฃผ๊ธฐ ๋™์•ˆ ๊ฐ€์žฅ ์ตœ๊ทผ์— ๋ฆด๋ฆฌ์Šค๋œ ๋ฒ„์ „์œผ๋กœ ๋ณด์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํŠน์ • ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ„์ „์„ ์•Œ์•„๋ณด๋ ค๋ฉด ๋งํฌ๋œ ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜๊ฑฐ๋‚˜ ํ”„๋กœ์ ํŠธ LTS ๋ฒ„์ „ ์—”๋“œํฌ์ธํŠธ์— ๋Œ€ํ•œ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

์—…๋ฐ์ดํŠธ ์‹œ: ํ•œ ๋ฒˆ์— 1๊ฐœ์˜ ์ฃผ์š” ๋ฒ„์ „๋งŒ ๋ฒ„์ „์„ ์ฆ๊ฐ€์‹œํ‚ต๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ํ˜„์žฌ MongoDB ๋ฒ„์ „๋ณด๋‹ค ์ •ํ™•ํžˆ ํ•œ ์ฃผ์š” ๋ฒ„์ „ ๋‚ฎ์€ MongoDB ๊ธฐ๋Šฅ ํ˜ธํ™˜์„ฑ ๋ฒ„์ „์— ๊ณ ์ •๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ, MongoDB ๋ฒ„์ „์„ ์ด์ „ ์ฃผ์š” ๋ฒ„์ „์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฆ„
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

paused
๋ถ€์šธ

ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ผ์‹œ ์ค‘์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

pitEnabled
๋ถ€์šธ

ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ง€์†์ ์ธ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์‚ฌ์šฉ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

redactClientLogData
๋ถ€์šธ

๋กœ๊ทธ ํŽธ์ง‘์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

์ด ์„ค์ •์€ mongod ๋˜๋Š” mongos๋ฅผ ๊ตฌ์„ฑํ•˜์—ฌ ๋กœ๊น…ํ•˜๊ธฐ ์ „์— ์ง€์ •๋œ ๋กœ๊ทธ ์ด๋ฒคํŠธ์— ์ˆ˜๋ฐ˜๋˜๋Š” ๋ชจ๋“  ๋ฉ”์‹œ์ง€์—์„œ ๋ฌธ์„œ ํ•„๋“œ ์ฝ˜ํ…์ธ ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋œ ์ž ์žฌ์ ์œผ๋กœ ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ง„๋‹จ ๋กœ๊ทธ์— ๊ธฐ๋กํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋ฅ˜ ๋˜๋Š” ์ž‘์—… ์ฝ”๋“œ, ์ค„ ๋ฒˆํ˜ธ, ์†Œ์Šค ํŒŒ์ผ ์ด๋ฆ„๊ณผ ๊ฐ™์€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋Š” ์—ฌ์ „ํžˆ ๋กœ๊ทธ์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

redactClientLogData๋ฅผ ๋ฏธ์‚ฌ์šฉ ๋ฐ์ดํ„ฐ ์•”ํ˜ธํ™” ๋ฐ TLS/SSL(์ „์†ก ์•”ํ˜ธํ™”)๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์—ฌ ๊ทœ์ œ ์š”๊ฑด์„ ์ค€์ˆ˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ : ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ด ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜๋Š” ์ฆ‰์‹œ ๋กค๋ง ์žฌ์‹œ์ž‘์ด ํŠธ๋ฆฌ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.

replicaSetScalingStrategy
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "WORKLOAD_TYPE"
์—ด๊ฑฐํ˜•: '์ˆœ์ฐจ์ ' "WORKLOAD_TYPE" "NODE_TYPE"

์ด ํ•„๋“œ๋ฅผ ์„ค์ •ํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ณต์ œ๋ณธ ์„ธํŠธ ์Šค์ผ€์ผ๋ง ๋ชจ๋“œ๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ Atlas๋Š” WORKLOAD_TYPE์— ๋”ฐ๋ผ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Atlas๊ฐ€ ์šด์˜ ๋…ธ๋“œ์™€ ํ•จ๊ป˜ ๋ถ„์„ ๋…ธ๋“œ๋ฅผ ๋ณ‘๋ ฌ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

SEQUENTIAL๋กœ ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ Atlas๋Š” ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ์ˆœ์ฐจ์ ์œผ๋กœ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์•ˆ์ •๋œ ์ƒํƒœ์˜ ์›Œํฌ๋กœ๋“œ ๋ฐ ์ง€์—ฐ ์‹œ๊ฐ„์— ๋ฏผ๊ฐํ•œ ์„ธ์ปจ๋”๋ฆฌ ์ฝ๊ธฐ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋Œ€์ƒ์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

NODE_TYPE์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ฉด Atlas๋Š” ์ฝ๊ธฐ ์ „์šฉ ๋ฐ ๋ถ„์„ ๋…ธ๋“œ์™€ ๋ณ‘๋ ฌ๋กœ ์„ ํƒ ๊ฐ€๋Šฅํ•œ ๋…ธ๋“œ๋ฅผ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์ž์ฃผ ๊ทธ๋ฆฌ๊ณ  ์‹ ์†ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ๊ณ„์ธต ํ™•์žฅ์ด ํ•„์š”ํ•œ ๋Œ€๊ทœ๋ชจ ๋™์  ์›Œํฌ๋กœ๋“œ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ฐ€์žฅ ๋น ๋ฅธ ํ™•์žฅ ์ „๋žต์ด์ง€๋งŒ ๊ด‘๋ฒ”์œ„ํ•œ ์„ธ์ปจ๋”๋ฆฌ ์ฝ๊ธฐ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ์›Œํฌ๋กœ๋“œ ์ง€์—ฐ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (๋ณต์ œ ์‚ฌ์–‘)

ํด๋Ÿฌ์Šคํ„ฐ ๋ฆฌ์ „์„ ๊ตฌ์„ฑํ•˜๋Š” ์„ค์ • ๋ชฉ๋ก. ์ด ๋ฐฐ์—ด์—๋Š” ์ƒค๋“œ๋‹น ๊ฐ์ฒด 1๊ฐœ๊ฐ€ ์žˆ์œผ๋ฉฐ, ๊ฐ ์ƒค๋“œ์˜ ๋…ธ๋“œ ๊ตฌ์„ฑ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋ณต์ œ๋ณธ ์„ธํŠธ๋Š” ๋…ธ๋“œ ๊ตฌ์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ์ฒด๊ฐ€ 1๊ฐœ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.

rootCertType
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "ISRGROOTX1"
๊ฐ’: "ISRGROOTX1"

MongoDB Cloud ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ฃจํŠธ ์ธ์ฆ ๊ธฐ๊ด€. MongoDB Cloud๋Š” Internet Security Research ๊ทธ๋ฃน์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (Resource Tag)

ํด๋Ÿฌ์Šคํ„ฐ์— ํƒœ๊ทธ๋ฅผ ์ง€์ •ํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜๊ธฐ ์œ„ํ•œ 1~255์ž ๊ธธ์ด์˜ ํ‚ค-๊ฐ’ ์Œ์ด ํฌํ•จ๋œ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

terminationProtectionEnabled
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ข…๋ฃŒ ๋ณดํ˜ธ ํ™œ์„ฑํ™” ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. true๋กœ ์„ค์ •ํ•˜๋ฉด MongoDB Cloud๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‚ญ์ œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. false๋กœ ์„ค์ •ํ•˜๋ฉด MongoDB Cloud๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

versionReleaseSystem
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "LTS"
์—ด๊ฑฐํ˜•: "LTS" "CONTINUOUS"

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ MongoDB ๋ฒ„์ „์„ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๊ฐ’์ด CONTINUOUS์ธ ๊ฒฝ์šฐ mongoDBMajorVersion์„ ์ง€์ •ํ•˜์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-10-23+json

ํด๋Ÿฌ์Šคํ„ฐ

{
  • "clusterType": "SHARDED",
  • "name": "myCluster",
  • "replicationSpecs": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-10-23+json
{
  • "acceptDataRisksAndForceReplicaSetReconfig": "2019-08-24T14:15:22Z",
  • "advancedConfiguration": {
    },
  • "backupEnabled": false,
  • "biConnector": {
    },
  • "clusterType": "REPLICASET",
  • "configServerManagementMode": "ATLAS_MANAGED",
  • "configServerType": "DEDICATED",
  • "connectionStrings": {
    },
  • "createDate": "2019-08-24T14:15:22Z",
  • "diskWarmingMode": "FULLY_WARMED",
  • "encryptionAtRestProvider": "NONE",
  • "featureCompatibilityVersion": "string",
  • "featureCompatibilityVersionExpirationDate": "2019-08-24T14:15:22Z",
  • "globalClusterSelfManagedSharding": true,
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "labels": [
    ],
  • "links": [],
  • "mongoDBEmployeeAccessGrant": {},
  • "mongoDBMajorVersion": "string",
  • "mongoDBVersion": "string",
  • "name": "string",
  • "paused": true,
  • "pitEnabled": true,
  • "redactClientLogData": true,
  • "replicaSetScalingStrategy": "SEQUENTIAL",
  • "replicationSpecs": [
    ],
  • "rootCertType": "ISRGROOTX1",
  • "stateName": "IDLE",
  • "tags": [
    ],
  • "terminationProtectionEnabled": false,
  • "versionReleaseSystem": "LTS"
}

๋ชจ๋“  ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž ๋ฆฌ์ „ ๋ฐ˜ํ™˜

์ง€์ •๋œ ๊ณ„์ธต ์—์„œ ์ง€์ •๋œ cloud ์ œ๊ณต์ž ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฆฌ์ „ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

providers
์˜ ๋ฐฐ์—ด strings

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

tier
๋ฌธ์ž์—ด

๋ฆฌ์ „์„ ๊ฒ€์ƒ‰ํ•  ํด๋Ÿฌ์Šคํ„ฐ ๊ณ„์ธต.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ๊ณต์œ  ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ ์—…๊ทธ๋ ˆ์ด๋“œ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ๊ณต์œ  ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ Flex ๋˜๋Š” ์ „์šฉ(M10+) ํด๋Ÿฌ์Šคํ„ฐ ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ํด๋Ÿฌ์Šคํ„ฐ ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ํ”„๋กœ์ ํŠธ ์ตœ๋Œ€ 25 ๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ด ์—”๋“œํฌ์ธํŠธ๋Š” createCluster API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” Flex ํด๋Ÿฌ์Šคํ„ฐ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ ์ด์ „์˜ M2/M5 ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ 2026๋…„ 1์›”๊นŒ์ง€ instanceSizeName์„ โ€œM2โ€ ๋˜๋Š” โ€œM5โ€๋กœ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์ง€์›๋ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ 2026๋…„ 1์›”๊นŒ์ง€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ทธ ์ดํ›„์—๋Š” M0 ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€์‹  upgradeFlexCluster ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์˜ ๊ณต์œ  ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ ์—…๊ทธ๋ ˆ์ด๋“œ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด.

acceptDataRisksAndForceReplicaSetReconfig
๋ฌธ์ž์—ด <date-time>

๋ฆฌ์ „ ์ค‘๋‹จ์œผ๋กœ ์ธํ•ด ํ”„๋ผ์ด๋จธ๋ฆฌ ํ”„๋ผ์ด๋จธ๋ฆฌ ๋ณต๊ตฌํ•˜๊ธฐ ์œ„ํ•ด ์žฌ๊ตฌ์„ฑ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํ† ํด๋กœ์ง€ ์žฌ๊ตฌ์„ฑ๊ณผ ํ•จ๊ป˜ ์ด ํ•„๋“œ ์ œ์ถœ ์ƒˆ๋กœ์šด ๋ฆฌ์ „ ์ค‘๋‹จ ๋ฐฉ์ง€ ํ† ํด๋กœ์ง€ ์š”์ฒญ. ํˆฌํ‘œ ์„ ํƒ ๊ฐ€๋Šฅ ๋…ธ๋“œ ๋Œ€๋ถ€๋ถ„์ด ์ค‘๋‹จ๋œ ์ƒํƒœ์—์„œ ๊ฐ•์ œ๋กœ ์žฌ๊ตฌ์„ฑํ•˜๋ฉด ๋ณต์ œ๋œ ์“ฐ๊ธฐ(๋Œ€๋ถ€๋ถ„์˜ ์ปค๋ฐ‹๋œ ์“ฐ๊ธฐ ํฌํ•จ)๊ฐ€ ์ƒˆ ํ”„๋ผ์ด๋จธ๋ฆฌ ๋…ธ๋“œ์— ๋ณต์ œ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ๊ฐ€ ์†์‹ค๋  ์œ„ํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. MongoDB Atlas ๋ฌธ์„œ์— ์ž์„ธํ•œ ๋‚ด์šฉ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์œ„ํ—˜์„ ์ˆ˜๋ฐ˜ํ•˜๋Š” ์ž‘์—…์„ ๊ณ„์† ์ง„ํ–‰ํ•˜๋ ค๋ฉด acceptDataRisksAndForceReplicaSetReconfig ๋ฅผ ํ˜„์žฌ ๋‚ ์งœ๋กœ ์„ค์ •ํ•˜๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์ฒด (ApiAtlasClusterAdvancedConfigurationView)

๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์„ธ๋ถ€ ์‚ฌํ•ญ์˜ ํ•˜์œ„ ์ง‘ํ•ฉ์„ ๊ตฌ์„ฑํ•˜๋Š” ์„ค์ • ๊ทธ๋ฃน์ž…๋‹ˆ๋‹ค.

๊ฐ์ฒด (์ž๋™ ํด๋Ÿฌ์Šคํ„ฐ ํ™•์žฅ ์„ค์ •)

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์ธ์Šคํ„ด์Šค ํฌ๊ธฐ์˜ ๋ฒ”์œ„.

backupEnabled
๋ถ€์šธ

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. true๋กœ ์„ค์ •ํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. NVMe ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ฒฝ์šฐ ์ด ๊ฐ’์„ true๋กœ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฐฑ์—…์€ ์ „์šฉ ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์„, ํ…Œ๋„ŒํŠธ ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๊ณต์œ  ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. false๋กœ ์„ค์ •ํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ์—์„œ MongoDB Cloud ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฐ์ฒด (Business Intelligence ์„ค์ •์„ ์œ„ํ•œ MongoDB Connector)

์ด ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ Business Intelligence์šฉ MongoDB Connector๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์„ค์ •์ž…๋‹ˆ๋‹ค.

clusterType
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "REPLICASET" "SHARDED" "GEOSHARDED"

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋…ธ๋“œ์˜ ๊ตฌ์„ฑ.

configServerManagementMode
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "ATLAS_MANAGED"
์—ด๊ฑฐํ˜•: "ATLAS_MANAGED" "FIXED_TO_DEDICATED"

์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ์œ„ํ•œ Config ์„œ๋ฒ„ ๊ด€๋ฆฌ ๋ชจ๋“œ์ž…๋‹ˆ๋‹ค.

ATLAS_MANAGED๋กœ ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ, Atlas๋Š” ์ตœ์ ์˜ ์„ฑ๋Šฅ๊ณผ ๋น„์šฉ ์ ˆ๊ฐ์„ ์œ„ํ•ด ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ตฌ์„ฑ ์„œ๋ฒ„ ์œ ํ˜•์„ ์ž๋™์œผ๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

FIXED_TO_DEDICATION์œผ๋กœ ๊ตฌ์„ฑ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋Š” ํ•ญ์ƒ ์ „์šฉ config ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

diskSizeGB
์ˆซ์ž <double> [ 10 .. 4096 ]

์ธ์Šคํ„ด์Šค ๋ฐ์ดํ„ฐ ๋ณผ๋ฅจ์˜ ์Šคํ† ๋ฆฌ์ง€ ์šฉ๋Ÿ‰์€ ๊ธฐ๊ฐ€๋ฐ”์ดํŠธ ๋‹จ์œ„๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค. ์šฉ๋Ÿ‰์„ ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด ์ด ์ˆซ์ž๋ฅผ ๋Š˜๋ฆฌ์„ธ์š”.

์ด ๊ฐ’์€ M0/M2/M5 ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ๊ตฌ์„ฑํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

MongoDB Cloud๋Š” replicationSpecs๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๋””์Šคํฌ ํฌ๊ธฐ๋ฅผ ์ตœ์†Œ๊ฐ’(10GB) ๋ฏธ๋งŒ์œผ๋กœ ์ง€์ •ํ•˜๋ฉด ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๊ธฐ๋ณธ๊ฐ’์ธ ์ตœ์†Œ ๋””์Šคํฌ ํฌ๊ธฐ ๊ฐ’์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

์Šคํ† ๋ฆฌ์ง€ ์š”๊ธˆ์€ ๊ธฐ๋ณธ๊ฐ’์„ ์„ ํƒํ•˜๋Š”์ง€, ์•„๋‹ˆ๋ฉด ์‚ฌ์šฉ์ž ์ง€์ • ๊ฐ’์„ ์„ ํƒํ•˜๋Š”์ง€์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค.

์„ ํƒํ•œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ตœ๋Œ€ RAM์˜ 50๋ฐฐ๋ฅผ ์ดˆ๊ณผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ์ €์žฅ ๊ณต๊ฐ„์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋” ๋†’์€ ํ‹ฐ์–ด๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

diskWarmingMode
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "FULLY_WARMED"
์—ด๊ฑฐํ˜•: "FULLY_WARMED" "VISIBLE_EARLIER"

๋””์Šคํฌ ๋ณด์˜จ ๋ชจ๋“œ ์„ ํƒ.

encryptionAtRestProvider
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "NONE" "A" "AZURE" "GCP"

ํด๋Ÿฌ์Šคํ„ฐ์— ์ถ”๊ฐ€ ์ €์žฅ ์‹œ ์•”ํ˜ธํ™” ๊ณ„์ธต์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ๊ฐ ํ‚ค๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž. ๋ฏธํ™œ์„ฑํ™” ์•”ํ˜ธํ™”๋ฅผ ์œ„ํ•œ ๊ณ ๊ฐ ํ‚ค ๊ด€๋ฆฌ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด ํด๋Ÿฌ์Šคํ„ฐ replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize ์„ค์ •์„ M10 ์ด์ƒ์œผ๋กœ ์ง€์ •ํ•˜๊ณ  "backupEnabled" : false ๋˜๋Š” ์™„์ „ํžˆ ์ƒ๋žตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

globalClusterSelfManagedSharding
๋ถ€์šธ

์ƒˆ ๊ธ€๋กœ๋ฒŒ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์ƒค๋”ฉ ๊ด€๋ฆฌ ๋ชจ๋“œ๋ฅผ ๊ตฌ์„ฑํ•˜๋ ค๋ฉด ์ด ํ•„๋“œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

false๋กœ ์„ค์ •ํ•˜๋ฉด ๊ด€๋ฆฌ ๋ชจ๋“œ๊ฐ€ Atlas ๊ด€๋ฆฌ ์ƒค๋”ฉ์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ๊ธ€๋กœ๋ฒŒ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ƒค๋”ฉ์„ ์™„๋ฒฝํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๋ฉฐ ์›ํ™œํ•œ ๋ฐฐํฌ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋„๋ก ๊ตฌ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

true๋กœ ์„ค์ •ํ•˜๋ฉด ๊ด€๋ฆฌ ๋ชจ๋“œ๊ฐ€ ์ž์ฒด ๊ด€๋ฆฌ ์ƒค๋”ฉ์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์ƒค๋“œ ๊ด€๋ฆฌ๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋งก๊ธฐ๋ฉฐ ์œ ์—ฐํ•œ ๊ณ ๊ธ‰ ๋ฐฐํฌ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋ฐฐํฌ๋œ ํ›„์—๋Š” ์ด ์„ค์ •์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (์ปดํฌ๋„ŒํŠธ ๋ ˆ์ด๋ธ”)
๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ์— ํƒœ๊ทธ๋ฅผ ์ง€์ •ํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜๋Š” 1~255์ž ๊ธธ์ด์˜ ํ‚ค-๊ฐ’ ์Œ ์ปฌ๋ ‰์…˜. MongoDB Cloud ์ฝ˜์†”์—๋Š” ๋ ˆ์ด๋ธ”์ด ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ ๋ ˆ์ด๋ธ”์€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ ํ–ฅํ›„ ์ถœ์‹œํ•˜๋‹ค ์—์„œ ์ œ๊ฑฐ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๋Œ€์‹  ๋ฆฌ์†Œ์Šค ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๊ฐ์ฒด (EmployeeAccessGrantView)

ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ์ˆ˜์ค€ ๋ฐ ๋งŒ๋ฃŒ ๊ถŒํ•œ์„ MongoDB ์ง์›์—๊ฒŒ ๋ถ€์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

mongoDBMajorVersion
๋ฌธ์ž์—ด

ํด๋Ÿฌ์Šคํ„ฐ์˜ MongoDB ์ฃผ์š” ๋ฒ„์ „์ž…๋‹ˆ๋‹ค.

์ƒ์„ฑ ์‹œ: ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ MongoDB ๋ฒ„์ „ ์ค‘์—์„œ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ํ˜„์žฌ ๊ถŒ์žฅ๋˜๋Š” ๊ธฐ๋ณธ๊ฐ’์„ ์ง€์ •ํ•˜์ง€ ์•Š๊ณ  ๊ทธ๋Œ€๋กœ ๋‘์–ด MongoDB ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ถŒ์žฅ๋˜๋Š” ๋ฒ„์ „์€ ์ตœ์‹  LTS(์žฅ๊ธฐ ์ง€์›) ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ ์ „์ฒด ๋ฆด๋ฆฌ์Šค ์ฃผ๊ธฐ ๋™์•ˆ ๊ฐ€์žฅ ์ตœ๊ทผ์— ๋ฆด๋ฆฌ์Šค๋œ ๋ฒ„์ „์œผ๋กœ ๋ณด์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํŠน์ • ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ„์ „์„ ์•Œ์•„๋ณด๋ ค๋ฉด ๋งํฌ๋œ ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜๊ฑฐ๋‚˜ ํ”„๋กœ์ ํŠธ LTS ๋ฒ„์ „ ์—”๋“œํฌ์ธํŠธ์— ๋Œ€ํ•œ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

์—…๋ฐ์ดํŠธ ์‹œ: ํ•œ ๋ฒˆ์— 1๊ฐœ์˜ ์ฃผ์š” ๋ฒ„์ „๋งŒ ๋ฒ„์ „์„ ์ฆ๊ฐ€์‹œํ‚ต๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ํ˜„์žฌ MongoDB ๋ฒ„์ „๋ณด๋‹ค ์ •ํ™•ํžˆ ํ•œ ์ฃผ์š” ๋ฒ„์ „ ๋‚ฎ์€ MongoDB ๊ธฐ๋Šฅ ํ˜ธํ™˜์„ฑ ๋ฒ„์ „์— ๊ณ ์ •๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ, MongoDB ๋ฒ„์ „์„ ์ด์ „ ์ฃผ์š” ๋ฒ„์ „์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

mongoDBVersion
๋ฌธ์ž์—ด([\d]+\.[\d]+\.[\d]+)

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์‹คํ–‰ํ•˜๋Š” MongoDB ๋ฒ„์ „.

์ด๋ฆ„
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

numShards
integer <int32> [ 1 .. 50 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋ฐฐํฌํ•  ์ƒค๋“œ(์ตœ๋Œ€ 50๊ฐœ). ๋ฆฌ์†Œ์Šค๋Š” ๋ณต์ œ๋ณธ ์„ธํŠธ์˜ ๊ฒฝ์šฐ 1๋ฅผ, ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ฒฝ์šฐ 2 ์ด์ƒ์˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜ํ™˜๋œ ๊ฐ’์€ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ƒค๋“œ ์ˆ˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

paused
๋ถ€์šธ

ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ผ์‹œ ์ค‘์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

pitEnabled
๋ถ€์šธ

ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ง€์†์ ์ธ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์‚ฌ์šฉ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

providerBackupEnabled
๋ถ€์šธ

M10 ์ด์ƒ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. true๋กœ ์„ค์ •ํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค์™€ BackupEnabled๋ฅผ false๋กœ ์„ค์ •ํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ์—์„œ MongoDB ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฐ์ฒด (ํด๋Ÿฌ์Šคํ„ฐ์˜ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ œ๊ณต์ž ์„ค์ •)

ํ”„๋กœ๋น„์ €๋‹๋œ MongoDB ํ˜ธ์ŠคํŠธ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž ์„ค์ • ๊ทธ๋ฃน.

replicaSetScalingStrategy
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "WORKLOAD_TYPE"
์—ด๊ฑฐํ˜•: '์ˆœ์ฐจ์ ' "WORKLOAD_TYPE" "NODE_TYPE"

์ด ํ•„๋“œ๋ฅผ ์„ค์ •ํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ณต์ œ๋ณธ ์„ธํŠธ ์Šค์ผ€์ผ๋ง ๋ชจ๋“œ๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ Atlas๋Š” WORKLOAD_TYPE์— ๋”ฐ๋ผ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Atlas๊ฐ€ ์šด์˜ ๋…ธ๋“œ์™€ ํ•จ๊ป˜ ๋ถ„์„ ๋…ธ๋“œ๋ฅผ ๋ณ‘๋ ฌ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

SEQUENTIAL๋กœ ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ Atlas๋Š” ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ์ˆœ์ฐจ์ ์œผ๋กœ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์•ˆ์ •๋œ ์ƒํƒœ์˜ ์›Œํฌ๋กœ๋“œ ๋ฐ ์ง€์—ฐ ์‹œ๊ฐ„์— ๋ฏผ๊ฐํ•œ ์„ธ์ปจ๋”๋ฆฌ ์ฝ๊ธฐ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋Œ€์ƒ์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

NODE_TYPE์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ฉด Atlas๋Š” ์ฝ๊ธฐ ์ „์šฉ ๋ฐ ๋ถ„์„ ๋…ธ๋“œ์™€ ๋ณ‘๋ ฌ๋กœ ์„ ํƒ ๊ฐ€๋Šฅํ•œ ๋…ธ๋“œ๋ฅผ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์ž์ฃผ ๊ทธ๋ฆฌ๊ณ  ์‹ ์†ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ๊ณ„์ธต ํ™•์žฅ์ด ํ•„์š”ํ•œ ๋Œ€๊ทœ๋ชจ ๋™์  ์›Œํฌ๋กœ๋“œ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ฐ€์žฅ ๋น ๋ฅธ ํ™•์žฅ ์ „๋žต์ด์ง€๋งŒ ๊ด‘๋ฒ”์œ„ํ•œ ์„ธ์ปจ๋”๋ฆฌ ์ฝ๊ธฐ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ์›Œํฌ๋กœ๋“œ ์ง€์—ฐ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

replicationFactor
integer <int32>
๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 3
์—ด๊ฑฐํ˜•: 3 5 7

๋ณต์ œ๋ณธ ์„ธํŠธ์— ์†ํ•œ ๋ฉค๋ฒ„ ์ˆ˜. ๊ฐ ๊ตฌ์„ฑ์›์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ฌ๋ณธ์„ ์œ ์ง€ํ•˜์—ฌ ๊ณ ๊ฐ€์šฉ์„ฑ๊ณผ ๋ฐ์ดํ„ฐ ์ค‘๋ณต์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋Œ€์‹  replicationSpecs์„ ์‚ฌ์šฉํ•˜์„ธ์š”.

๊ฐ์ฒด (๋ฆฌ์ „ ๊ตฌ์„ฑ)

MongoDB Cloud๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ๋ฅผ ํ”„๋กœ๋น„์ €๋‹ํ•˜๋Š” ๋ฌผ๋ฆฌ์  ์œ„์น˜.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (LegacyReplicationSpec)

ํด๋Ÿฌ์Šคํ„ฐ ๋ฆฌ์ „์„ ๊ตฌ์„ฑํ•˜๋Š” ์„ค์ • ๋ชฉ๋ก.

  • ๊ธ€๋กœ๋ฒŒ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ฒฝ์šฐ ๋ฐฐ์—ด์˜ ๊ฐ ๊ฐ์ฒด๋Š” MongoDB Cloud๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ๋ฅผ ๋ฐฐํฌํ•˜๋Š” ํ•˜๋‚˜์˜ ์˜์—ญ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
  • ๊ธ€๋กœ๋ฒŒ์ด ์•„๋‹Œ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ๋ฐ ๋ณต์ œ๋ณธ ์„ธํŠธ์˜ ๊ฒฝ์šฐ MongoDB Cloud์˜ ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ ๋ฐฐํฌ ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ์ฒด๊ฐ€ ํ•˜๋‚˜ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.
rootCertType
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "ISRGROOTX1"
๊ฐ’: "ISRGROOTX1"

MongoDB Atlas ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ฃจํŠธ ์ธ์ฆ ๊ธฐ๊ด€. MongoDB Cloud๋Š” Internet Security Research ๊ทธ๋ฃน์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (Resource Tag)

ํด๋Ÿฌ์Šคํ„ฐ์— ํƒœ๊ทธ๋ฅผ ์ง€์ •ํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜๊ธฐ ์œ„ํ•œ 1~255์ž ๊ธธ์ด์˜ ํ‚ค-๊ฐ’ ์Œ์ด ํฌํ•จ๋œ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

terminationProtectionEnabled
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ข…๋ฃŒ ๋ณดํ˜ธ ํ™œ์„ฑํ™” ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. true๋กœ ์„ค์ •ํ•˜๋ฉด MongoDB Cloud๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‚ญ์ œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. false๋กœ ์„ค์ •ํ•˜๋ฉด MongoDB Cloud๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

versionReleaseSystem
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "LTS"
์—ด๊ฑฐํ˜•: "LTS" "CONTINUOUS"

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ MongoDB ๋ฒ„์ „์„ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๊ฐ’์ด CONTINUOUS์ธ ๊ฒฝ์šฐ mongoDBMajorVersion์„ ์ง€์ •ํ•˜์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "acceptDataRisksAndForceReplicaSetReconfig": "2019-08-24T14:15:22Z",
  • "advancedConfiguration": {
    },
  • "autoScaling": {
    },
  • "backupEnabled": true,
  • "biConnector": {
    },
  • "clusterType": "REPLICASET",
  • "configServerManagementMode": "ATLAS_MANAGED",
  • "diskSizeGB": 10,
  • "diskWarmingMode": "FULLY_WARMED",
  • "encryptionAtRestProvider": "NONE",
  • "globalClusterSelfManagedSharding": true,
  • "labels": [
    ],
  • "mongoDBEmployeeAccessGrant": {
    },
  • "mongoDBMajorVersion": "5.0",
  • "mongoDBVersion": "5.0.25",
  • "name": "string",
  • "numShards": 1,
  • "paused": true,
  • "pitEnabled": true,
  • "providerBackupEnabled": true,
  • "providerSettings": {
    },
  • "replicaSetScalingStrategy": "SEQUENTIAL",
  • "replicationFactor": 3,
  • "replicationSpec": {
    },
  • "replicationSpecs": [
    ],
  • "rootCertType": "ISRGROOTX1",
  • "tags": [
    ],
  • "terminationProtectionEnabled": false,
  • "versionReleaseSystem": "LTS"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "acceptDataRisksAndForceReplicaSetReconfig": "2019-08-24T14:15:22Z",
  • "advancedConfiguration": {
    },
  • "autoScaling": {
    },
  • "backupEnabled": true,
  • "biConnector": {
    },
  • "clusterType": "REPLICASET",
  • "configServerManagementMode": "ATLAS_MANAGED",
  • "configServerType": "DEDICATED",
  • "connectionStrings": {
    },
  • "createDate": "2019-08-24T14:15:22Z",
  • "diskSizeGB": 10,
  • "diskWarmingMode": "FULLY_WARMED",
  • "encryptionAtRestProvider": "NONE",
  • "featureCompatibilityVersion": "string",
  • "featureCompatibilityVersionExpirationDate": "2019-08-24T14:15:22Z",
  • "globalClusterSelfManagedSharding": true,
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "labels": [
    ],
  • "links": [],
  • "mongoDBEmployeeAccessGrant": {},
  • "mongoDBMajorVersion": "5.0",
  • "mongoDBVersion": "5.0.25",
  • "mongoURI": "string",
  • "mongoURIUpdated": "2019-08-24T14:15:22Z",
  • "mongoURIWithOptions": "string",
  • "name": "string",
  • "numShards": 1,
  • "paused": true,
  • "pitEnabled": true,
  • "providerBackupEnabled": true,
  • "providerSettings": {
    },
  • "replicaSetScalingStrategy": "SEQUENTIAL",
  • "replicationFactor": 3,
  • "replicationSpec": {
    },
  • "replicationSpecs": [
    ],
  • "rootCertType": "ISRGROOTX1",
  • "srvAddress": "string",
  • "stateName": "IDLE",
  • "tags": [
    ],
  • "terminationProtectionEnabled": false,
  • "versionReleaseSystem": "LTS"
}

1๊ฐœ์˜ ๊ณต์œ  ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ์ง€์› ์ค‘๋‹จ๋จ

์ƒˆ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ด ์—”๋“œํฌ์ธํŠธ๋Š” 2025๋…„ 2์›”๋ถ€๋กœ ์ง€์› ์ค‘๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Flex ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ ค๋ฉด upgradeFlexCluster ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ๊ณต์œ  ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ํด๋Ÿฌ์Šคํ„ฐ ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์˜ ๊ณต์œ  ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ ์—…๊ทธ๋ ˆ์ด๋“œ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด.

์ด๋ฆ„
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

ํ•„์ˆ˜
๊ฐ์ฒด (์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•œ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ œ๊ณต์ž ์„ค์ •)

ํ”„๋กœ๋น„์ €๋‹๋œ MongoDB ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž ์„ค์ • ๊ทธ๋ฃน.

๊ฐ์ฒด (์„œ๋ฒ„๋ฆฌ์Šค ๋ฐฑ์—… ์˜ต์…˜)

์„œ๋ฒ„๋ฆฌ์Šค ๋ฐฑ์—…์„ ๊ตฌ์„ฑํ•˜๋Š” ์„ค์ • ๊ทธ๋ฃน.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (Resource Tag)

์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์— ํƒœ๊ทธ๋ฅผ ์ง€์ •ํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜๋Š” 1~255์ž ๊ธธ์ด์˜ ํ‚ค-๊ฐ’ ์Œ์ด ํฌํ•จ๋œ ๋ชฉ๋ก.

terminationProtectionEnabled
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค์—์„œ ์ข…๋ฃŒ ๋ฐฉ์ง€ ๊ธฐ๋Šฅ ํ™œ์„ฑํ™” ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. true๋กœ ์„ค์ •ํ•˜๋ฉด MongoDB Cloud๊ฐ€๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ญ์ œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. false๋กœ ์„ค์ •ํ•˜๋ฉด MongoDB Cloud๊ฐ€ ์„œ๋ฒ„๋ฆฌ์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "name": "string",
  • "providerSettings": {
    },
  • "serverlessBackupOptions": {
    },
  • "tags": [
    ],
  • "terminationProtectionEnabled": false
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "connectionStrings": {
    },
  • "createDate": "2019-08-24T14:15:22Z",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "mongoDBVersion": "string",
  • "name": "string",
  • "providerSettings": {
    },
  • "serverlessBackupOptions": {
    },
  • "stateName": "IDLE",
  • "tags": [
    ],
  • "terminationProtectionEnabled": false
}

ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ์—์„œ ํ•˜๋‚˜์˜ ํด๋Ÿฌ์Šคํ„ฐ ์ œ๊ฑฐ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํด๋Ÿฌ์Šคํ„ฐ ํ•œ ๊ฐœ๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ ์‚ญ์ œํ•˜๋ ค๋ฉด ์ข…๋ฃŒ ๋ฐฉ์ง€ ๊ธฐ๋Šฅ์ด ๋น„ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ ์„œ๋ฒ„๋ฆฌ์Šค ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์ด ์—”๋“œํฌ์ธํŠธ๋Š” createCluster ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” Flex ํด๋Ÿฌ์Šคํ„ฐ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ ์ด์ „์˜ M2/M5 ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋„ 2026๋…„ 1์›”๊นŒ์ง€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Flex ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๋Œ€์‹  deleteFlexCluster ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. ์ง€์› ์ค‘๋‹จ๋œ ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

retainBackups
๋ถ€์šธ

์‚ญ์ œ๋œ ์ „์šฉ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ฐฑ์—… ์Šค๋ƒ…์ƒท ์œ ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ ๋ฐ˜ํ™˜

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

์ด ์—”๋“œํฌ์ธํŠธ๋Š” createCluster ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋œ Flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” Flex ํด๋Ÿฌ์Šคํ„ฐ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋œ ์ด์ „์˜ M2/M5 ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋„ 2026๋…„ 1์›”๊นŒ์ง€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Flex ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๋Œ€์‹  getFlexCluster ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. ์ง€์› ์ค‘๋‹จ๋œ ๋ฒ„์ „: v2-{2023-02-01}, v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์ด ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "acceptDataRisksAndForceReplicaSetReconfig": "2019-08-24T14:15:22Z",
  • "advancedConfiguration": {
    },
  • "backupEnabled": false,
  • "biConnector": {
    },
  • "clusterType": "REPLICASET",
  • "configServerManagementMode": "ATLAS_MANAGED",
  • "configServerType": "DEDICATED",
  • "connectionStrings": {
    },
  • "createDate": "2019-08-24T14:15:22Z",
  • "diskWarmingMode": "FULLY_WARMED",
  • "encryptionAtRestProvider": "NONE",
  • "featureCompatibilityVersion": "string",
  • "featureCompatibilityVersionExpirationDate": "2019-08-24T14:15:22Z",
  • "globalClusterSelfManagedSharding": true,
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "labels": [
    ],
  • "links": [],
  • "mongoDBEmployeeAccessGrant": {},
  • "mongoDBMajorVersion": "string",
  • "mongoDBVersion": "string",
  • "name": "string",
  • "paused": true,
  • "pitEnabled": true,
  • "redactClientLogData": true,
  • "replicaSetScalingStrategy": "SEQUENTIAL",
  • "replicationSpecs": [
    ],
  • "rootCertType": "ISRGROOTX1",
  • "stateName": "IDLE",
  • "tags": [
    ],
  • "terminationProtectionEnabled": false,
  • "versionReleaseSystem": "LTS"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ ์ˆ˜์ •

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ์žˆ๋Š” ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ์˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๋™์ผํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ ์œ ์ง€ํ•˜๋Š” ํ˜ธ์ŠคํŠธ ๊ทธ๋ฃน ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ๋น„๋Œ€์นญ ํฌ๊ธฐ์˜ ์ƒค๋“œ๋กœ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์—…๋ฐ์ดํŠธ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ข…๋ฃŒ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์„ ์—…๋ฐ์ดํŠธ ํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ชจ๋“  ์—…๋ฐ์ดํŠธ์˜ ๊ฒฝ์šฐ ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ํด๋Ÿฌ์Šคํ„ฐ ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ผ์‹œ ์ค‘์ง€๋œ ํด๋Ÿฌ์Šคํ„ฐ (paused : true)๋Š” ์ˆ˜์ •ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. paused : false์„(๋ฅผ) ์„ค์ •ํ•˜๋‹ค ํ•˜๋ ค๋ฉด ์ด ์—”๋“œํฌ์ธํŠธ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ์—”๋“œํฌ์ธํŠธ๊ฐ€ paused : false๋กœ ์‘๋‹ตํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ ์— ์ ์šฉํ•˜๋ ค๋Š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜์—ฌ ๋‹ค์‹œ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ ์„œ๋ฒ„๋ฆฌ์Šค ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ ์ค‘๋‹จ๋œ ๋ฒ„์ „: v2-{2024-08-05}, v2-{2023-02-01}, v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-10-23+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์—์„œ ์—…๋ฐ์ดํŠธํ•  ํด๋Ÿฌ์Šคํ„ฐ.

acceptDataRisksAndForceReplicaSetReconfig
๋ฌธ์ž์—ด <date-time>

๋ฆฌ์ „ ์ค‘๋‹จ์œผ๋กœ ์ธํ•ด ํ”„๋ผ์ด๋จธ๋ฆฌ ํ”„๋ผ์ด๋จธ๋ฆฌ ๋ณต๊ตฌํ•˜๊ธฐ ์œ„ํ•ด ์žฌ๊ตฌ์„ฑ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํ† ํด๋กœ์ง€ ์žฌ๊ตฌ์„ฑ๊ณผ ํ•จ๊ป˜ ์ด ํ•„๋“œ ์ œ์ถœ ์ƒˆ๋กœ์šด ๋ฆฌ์ „ ์ค‘๋‹จ ๋ฐฉ์ง€ ํ† ํด๋กœ์ง€ ์š”์ฒญ. ํˆฌํ‘œ ์„ ํƒ ๊ฐ€๋Šฅ ๋…ธ๋“œ ๋Œ€๋ถ€๋ถ„์ด ์ค‘๋‹จ๋œ ์ƒํƒœ์—์„œ ๊ฐ•์ œ๋กœ ์žฌ๊ตฌ์„ฑํ•˜๋ฉด ๋ณต์ œ๋œ ์“ฐ๊ธฐ(๋Œ€๋ถ€๋ถ„์˜ ์ปค๋ฐ‹๋œ ์“ฐ๊ธฐ ํฌํ•จ)๊ฐ€ ์ƒˆ ํ”„๋ผ์ด๋จธ๋ฆฌ ๋…ธ๋“œ์— ๋ณต์ œ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ๊ฐ€ ์†์‹ค๋  ์œ„ํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. MongoDB Atlas ๋ฌธ์„œ์— ์ž์„ธํ•œ ๋‚ด์šฉ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์œ„ํ—˜์„ ์ˆ˜๋ฐ˜ํ•˜๋Š” ์ž‘์—…์„ ๊ณ„์† ์ง„ํ–‰ํ•˜๋ ค๋ฉด acceptDataRisksAndForceReplicaSetReconfig ๋ฅผ ํ˜„์žฌ ๋‚ ์งœ๋กœ ์„ค์ •ํ•˜๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์ฒด (ApiAtlasClusterAdvancedConfigurationView)

๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์„ธ๋ถ€ ์‚ฌํ•ญ์˜ ํ•˜์œ„ ์ง‘ํ•ฉ์„ ๊ตฌ์„ฑํ•˜๋Š” ์„ค์ • ๊ทธ๋ฃน์ž…๋‹ˆ๋‹ค.

backupEnabled
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ true ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ๋กœ ์„ค์ •ํ•˜๋‹ค ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.true NVMe ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ฒฝ์šฐ ์ด ๊ฐ’์„ ๋กœ ์„ค์ •ํ•˜๋‹ค ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฐฑ์—…์€ ์ „์šฉ ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ํด๋ผ์šฐ๋“œ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•˜๊ณ  ํ…Œ๋„ŒํŠธ ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๊ณต์œ  ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋กœ ์„ค์ •ํ•˜๋‹ค false ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฑ์—…์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฐ์ฒด (Business Intelligence ์„ค์ •์„ ์œ„ํ•œ MongoDB Connector)

์ด ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ Business Intelligence์šฉ MongoDB Connector๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์„ค์ •์ž…๋‹ˆ๋‹ค.

clusterType
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "REPLICASET" "SHARDED" "GEOSHARDED"

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋…ธ๋“œ์˜ ๊ตฌ์„ฑ.

configServerManagementMode
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "ATLAS_MANAGED"
์—ด๊ฑฐํ˜•: "ATLAS_MANAGED" "FIXED_TO_DEDICATED"

์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ ์œ„ํ•œ Config ์„œ๋ฒ„ ๊ด€๋ฆฌ ๋ชจ๋“œ์ž…๋‹ˆ๋‹ค.

ATLAS_MANAGED๋กœ ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ, Atlas๋Š” ์ตœ์ ์˜ ์„ฑ๋Šฅ๊ณผ ๋น„์šฉ ์ ˆ๊ฐ์„ ์œ„ํ•ด ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ตฌ์„ฑ ์„œ๋ฒ„ ์œ ํ˜•์„ ์ž๋™์œผ๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

FIXED_TO_DEDICATION์œผ๋กœ ๊ตฌ์„ฑ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋Š” ํ•ญ์ƒ ์ „์šฉ config ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

diskWarmingMode
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "FULLY_WARMED"
์—ด๊ฑฐํ˜•: "FULLY_WARMED" "VISIBLE_EARLIER"

๋””์Šคํฌ ๋ณด์˜จ ๋ชจ๋“œ ์„ ํƒ.

encryptionAtRestProvider
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "NONE" "A" "AZURE" "GCP"

ํด๋Ÿฌ์Šคํ„ฐ์— ์ถ”๊ฐ€ ์ €์žฅ ์‹œ ์•”ํ˜ธํ™” ๊ณ„์ธต์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ๊ฐ ํ‚ค๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž. ๋ฏธํ™œ์„ฑํ™” ์•”ํ˜ธํ™”๋ฅผ ์œ„ํ•œ ๊ณ ๊ฐ ํ‚ค ๊ด€๋ฆฌ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด ํด๋Ÿฌ์Šคํ„ฐ replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize ์„ค์ •์„ M10 ์ด์ƒ์œผ๋กœ ์ง€์ •ํ•˜๊ณ  "backupEnabled" : false ๋˜๋Š” ์™„์ „ํžˆ ์ƒ๋žตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

globalClusterSelfManagedSharding
๋ถ€์šธ

์ƒˆ ๊ธ€๋กœ๋ฒŒ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์ƒค๋”ฉ ๊ด€๋ฆฌ ๋ชจ๋“œ๋ฅผ ๊ตฌ์„ฑํ•˜๋ ค๋ฉด ์ด ํ•„๋“œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

false๋กœ ์„ค์ •ํ•˜๋ฉด ๊ด€๋ฆฌ ๋ชจ๋“œ๊ฐ€ Atlas ๊ด€๋ฆฌ ์ƒค๋”ฉ์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ๊ธ€๋กœ๋ฒŒ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ƒค๋”ฉ์„ ์™„๋ฒฝํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๋ฉฐ ์›ํ™œํ•œ ๋ฐฐํฌ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋„๋ก ๊ตฌ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

true๋กœ ์„ค์ •ํ•˜๋ฉด ๊ด€๋ฆฌ ๋ชจ๋“œ๊ฐ€ ์ž์ฒด ๊ด€๋ฆฌ ์ƒค๋”ฉ์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์ƒค๋“œ ๊ด€๋ฆฌ๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋งก๊ธฐ๋ฉฐ ์œ ์—ฐํ•œ ๊ณ ๊ธ‰ ๋ฐฐํฌ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋ฐฐํฌ๋œ ํ›„์—๋Š” ์ด ์„ค์ •์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (์ปดํฌ๋„ŒํŠธ ๋ ˆ์ด๋ธ”)
๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ์— ํƒœ๊ทธ๋ฅผ ์ง€์ •ํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜๋Š” 1~255์ž ๊ธธ์ด์˜ ํ‚ค-๊ฐ’ ์Œ ์ปฌ๋ ‰์…˜. MongoDB Cloud ์ฝ˜์†”์—๋Š” ๋ ˆ์ด๋ธ”์ด ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ ๋ ˆ์ด๋ธ”์€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ ํ–ฅํ›„ ์ถœ์‹œํ•˜๋‹ค ์—์„œ ์ œ๊ฑฐ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ๋Œ€์‹  ๋ฆฌ์†Œ์Šค ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๊ฐ์ฒด (EmployeeAccessGrantView)

ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ์ˆ˜์ค€ ๋ฐ ๋งŒ๋ฃŒ ๊ถŒํ•œ์„ MongoDB ์ง์›์—๊ฒŒ ๋ถ€์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

mongoDBMajorVersion
๋ฌธ์ž์—ด

ํด๋Ÿฌ์Šคํ„ฐ ์˜ MongoDB ์ฃผ์š” ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ๋ฐ”์ด๋„ˆ๋ฆฌ ๋ฉ”์ด์ € ๋ฒ„์ „์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

์ƒ์„ฑ ์‹œ: ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ MongoDB ๋ฒ„์ „ ์ค‘์—์„œ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ํ˜„์žฌ ๊ถŒ์žฅ๋˜๋Š” ๊ธฐ๋ณธ๊ฐ’์„ ์ง€์ •ํ•˜์ง€ ์•Š๊ณ  ๊ทธ๋Œ€๋กœ ๋‘์–ด MongoDB ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ถŒ์žฅ๋˜๋Š” ๋ฒ„์ „์€ ์ตœ์‹  LTS(์žฅ๊ธฐ ์ง€์›) ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ ์ „์ฒด ๋ฆด๋ฆฌ์Šค ์ฃผ๊ธฐ ๋™์•ˆ ๊ฐ€์žฅ ์ตœ๊ทผ์— ๋ฆด๋ฆฌ์Šค๋œ ๋ฒ„์ „์œผ๋กœ ๋ณด์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํŠน์ • ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ„์ „์„ ์•Œ์•„๋ณด๋ ค๋ฉด ๋งํฌ๋œ ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜๊ฑฐ๋‚˜ ํ”„๋กœ์ ํŠธ LTS ๋ฒ„์ „ ์—”๋“œํฌ์ธํŠธ์— ๋Œ€ํ•œ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

์—…๋ฐ์ดํŠธ ์‹œ: ํ•œ ๋ฒˆ์— 1๊ฐœ์˜ ์ฃผ์š” ๋ฒ„์ „๋งŒ ๋ฒ„์ „์„ ์ฆ๊ฐ€์‹œํ‚ต๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ํ˜„์žฌ MongoDB ๋ฒ„์ „๋ณด๋‹ค ์ •ํ™•ํžˆ ํ•œ ์ฃผ์š” ๋ฒ„์ „ ๋‚ฎ์€ MongoDB ๊ธฐ๋Šฅ ํ˜ธํ™˜์„ฑ ๋ฒ„์ „์— ๊ณ ์ •๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ, MongoDB ๋ฒ„์ „์„ ์ด์ „ ์ฃผ์š” ๋ฒ„์ „์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฆ„
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

paused
๋ถ€์šธ

ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ผ์‹œ ์ค‘์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

pitEnabled
๋ถ€์šธ

ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ง€์†์ ์ธ ํด๋ผ์šฐ๋“œ ๋ฐฑ์—… ์‚ฌ์šฉ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ.

redactClientLogData
๋ถ€์šธ

๋กœ๊ทธ ํŽธ์ง‘์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

์ด ์„ค์ •์€ mongod ๋˜๋Š” mongos๋ฅผ ๊ตฌ์„ฑํ•˜์—ฌ ๋กœ๊น…ํ•˜๊ธฐ ์ „์— ์ง€์ •๋œ ๋กœ๊ทธ ์ด๋ฒคํŠธ์— ์ˆ˜๋ฐ˜๋˜๋Š” ๋ชจ๋“  ๋ฉ”์‹œ์ง€์—์„œ ๋ฌธ์„œ ํ•„๋“œ ์ฝ˜ํ…์ธ ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋œ ์ž ์žฌ์ ์œผ๋กœ ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ง„๋‹จ ๋กœ๊ทธ์— ๊ธฐ๋กํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋ฅ˜ ๋˜๋Š” ์ž‘์—… ์ฝ”๋“œ, ์ค„ ๋ฒˆํ˜ธ, ์†Œ์Šค ํŒŒ์ผ ์ด๋ฆ„๊ณผ ๊ฐ™์€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋Š” ์—ฌ์ „ํžˆ ๋กœ๊ทธ์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

redactClientLogData๋ฅผ ๋ฏธ์‚ฌ์šฉ ๋ฐ์ดํ„ฐ ์•”ํ˜ธํ™” ๋ฐ TLS/SSL(์ „์†ก ์•”ํ˜ธํ™”)๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์—ฌ ๊ทœ์ œ ์š”๊ฑด์„ ์ค€์ˆ˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ : ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ด ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜๋Š” ์ฆ‰์‹œ ๋กค๋ง ์žฌ์‹œ์ž‘์ด ํŠธ๋ฆฌ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.

replicaSetScalingStrategy
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "WORKLOAD_TYPE"
์—ด๊ฑฐํ˜•: '์ˆœ์ฐจ์ ' "WORKLOAD_TYPE" "NODE_TYPE"

์ด ํ•„๋“œ๋ฅผ ์„ค์ •ํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ณต์ œ๋ณธ ์„ธํŠธ ์Šค์ผ€์ผ๋ง ๋ชจ๋“œ๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ Atlas๋Š” WORKLOAD_TYPE์— ๋”ฐ๋ผ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Atlas๊ฐ€ ์šด์˜ ๋…ธ๋“œ์™€ ํ•จ๊ป˜ ๋ถ„์„ ๋…ธ๋“œ๋ฅผ ๋ณ‘๋ ฌ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

SEQUENTIAL๋กœ ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ Atlas๋Š” ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ์ˆœ์ฐจ์ ์œผ๋กœ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์•ˆ์ •๋œ ์ƒํƒœ์˜ ์›Œํฌ๋กœ๋“œ ๋ฐ ์ง€์—ฐ ์‹œ๊ฐ„์— ๋ฏผ๊ฐํ•œ ์„ธ์ปจ๋”๋ฆฌ ์ฝ๊ธฐ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋Œ€์ƒ์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

NODE_TYPE์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ฉด Atlas๋Š” ์ฝ๊ธฐ ์ „์šฉ ๋ฐ ๋ถ„์„ ๋…ธ๋“œ์™€ ๋ณ‘๋ ฌ๋กœ ์„ ํƒ ๊ฐ€๋Šฅํ•œ ๋…ธ๋“œ๋ฅผ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋Š” ์ž์ฃผ ๊ทธ๋ฆฌ๊ณ  ์‹ ์†ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ๊ณ„์ธต ํ™•์žฅ์ด ํ•„์š”ํ•œ ๋Œ€๊ทœ๋ชจ ๋™์  ์›Œํฌ๋กœ๋“œ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ฐ€์žฅ ๋น ๋ฅธ ํ™•์žฅ ์ „๋žต์ด์ง€๋งŒ ๊ด‘๋ฒ”์œ„ํ•œ ์„ธ์ปจ๋”๋ฆฌ ์ฝ๊ธฐ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ์›Œํฌ๋กœ๋“œ ์ง€์—ฐ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (๋ณต์ œ ์‚ฌ์–‘)

ํด๋Ÿฌ์Šคํ„ฐ ๋ฆฌ์ „์„ ๊ตฌ์„ฑํ•˜๋Š” ์„ค์ • ๋ชฉ๋ก. ์ด ๋ฐฐ์—ด์—๋Š” ์ƒค๋“œ๋‹น ๊ฐ์ฒด 1๊ฐœ๊ฐ€ ์žˆ์œผ๋ฉฐ, ๊ฐ ์ƒค๋“œ์˜ ๋…ธ๋“œ ๊ตฌ์„ฑ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋ณต์ œ๋ณธ ์„ธํŠธ๋Š” ๋…ธ๋“œ ๊ตฌ์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ์ฒด๊ฐ€ 1๊ฐœ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.

rootCertType
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "ISRGROOTX1"
๊ฐ’: "ISRGROOTX1"

MongoDB Cloud ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ฃจํŠธ ์ธ์ฆ ๊ธฐ๊ด€. MongoDB Cloud๋Š” Internet Security Research ๊ทธ๋ฃน์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (Resource Tag)

ํด๋Ÿฌ์Šคํ„ฐ์— ํƒœ๊ทธ๋ฅผ ์ง€์ •ํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•˜๊ธฐ ์œ„ํ•œ 1~255์ž ๊ธธ์ด์˜ ํ‚ค-๊ฐ’ ์Œ์ด ํฌํ•จ๋œ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

terminationProtectionEnabled
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ข…๋ฃŒ ๋ณดํ˜ธ ํ™œ์„ฑํ™” ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. true๋กœ ์„ค์ •ํ•˜๋ฉด MongoDB Cloud๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‚ญ์ œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. false๋กœ ์„ค์ •ํ•˜๋ฉด MongoDB Cloud๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

versionReleaseSystem
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "LTS"
์—ด๊ฑฐํ˜•: "LTS" "CONTINUOUS"

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ MongoDB ๋ฒ„์ „์„ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๊ฐ’์ด CONTINUOUS์ธ ๊ฒฝ์šฐ mongoDBMajorVersion์„ ์ง€์ •ํ•˜์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-10-23+json
{
  • "acceptDataRisksAndForceReplicaSetReconfig": "2019-08-24T14:15:22Z",
  • "advancedConfiguration": {
    },
  • "backupEnabled": false,
  • "biConnector": {
    },
  • "clusterType": "REPLICASET",
  • "configServerManagementMode": "ATLAS_MANAGED",
  • "diskWarmingMode": "FULLY_WARMED",
  • "encryptionAtRestProvider": "NONE",
  • "globalClusterSelfManagedSharding": true,
  • "labels": [
    ],
  • "mongoDBEmployeeAccessGrant": {
    },
  • "mongoDBMajorVersion": "string",
  • "name": "string",
  • "paused": true,
  • "pitEnabled": true,
  • "redactClientLogData": true,
  • "replicaSetScalingStrategy": "SEQUENTIAL",
  • "replicationSpecs": [
    ],
  • "rootCertType": "ISRGROOTX1",
  • "tags": [
    ],
  • "terminationProtectionEnabled": false,
  • "versionReleaseSystem": "LTS"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-10-23+json
{
  • "acceptDataRisksAndForceReplicaSetReconfig": "2019-08-24T14:15:22Z",
  • "advancedConfiguration": {
    },
  • "backupEnabled": false,
  • "biConnector": {
    },
  • "clusterType": "REPLICASET",
  • "configServerManagementMode": "ATLAS_MANAGED",
  • "configServerType": "DEDICATED",
  • "connectionStrings": {
    },
  • "createDate": "2019-08-24T14:15:22Z",
  • "diskWarmingMode": "FULLY_WARMED",
  • "encryptionAtRestProvider": "NONE",
  • "featureCompatibilityVersion": "string",
  • "featureCompatibilityVersionExpirationDate": "2019-08-24T14:15:22Z",
  • "globalClusterSelfManagedSharding": true,
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "id": "32b6e34b3d91647abb20e7b8",
  • "labels": [
    ],
  • "links": [],
  • "mongoDBEmployeeAccessGrant": {},
  • "mongoDBMajorVersion": "string",
  • "mongoDBVersion": "string",
  • "name": "string",
  • "paused": true,
  • "pitEnabled": true,
  • "redactClientLogData": true,
  • "replicaSetScalingStrategy": "SEQUENTIAL",
  • "replicationSpecs": [
    ],
  • "rootCertType": "ISRGROOTX1",
  • "stateName": "IDLE",
  • "tags": [
    ],
  • "terminationProtectionEnabled": false,
  • "versionReleaseSystem": "LTS"
}

์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ ์ž๋™ ํ™•์žฅ ์ž‘์—…์˜ ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด๋ถ€ ๊ตฌ์„ฑ์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ์‚ฌ์šฉ ์ค‘๋‹จ๋จ

์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ์ž๋™ ํ™•์žฅ์˜ ๋‚ด๋ถ€ ๊ตฌ์„ฑ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ์—”๋“œํฌ์ธํŠธ๋Š” ๊ตฌํ˜• API์—์„œ ์—…๋ฐ์ดํŠธ๋œ ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๊ฐœ๋ณ„ ์ƒค๋“œ ์ž๋™ ํ™•์žฅ์„ ์ง€์›ํ•˜๋Š”์ง€ ์ง„๋‹จํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์ด ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "autoScalingMode": "INDEPENDENT_SHARD_SCALING"
}

1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด 1๊ฐœ์˜ ๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์˜ต์…˜ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ํด๋Ÿฌ์Šคํ„ฐ ํ•œ ๊ฐœ์— ๋Œ€ํ•œ ๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๋™์ผํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ ์œ ์ง€ํ•˜๋Š” ํ˜ธ์ŠคํŠธ ๊ทธ๋ฃน ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์„ธ๋ถ€ ์ •๋ณด์—๋Š” ์ฝ๊ธฐ/ ์“ฐ๊ธฐ ๊ณ ๋ ค (write concern), ์ธ๋ฑ์Šค ๋ฐ oplog ์ œํ•œ, ๊ธฐํƒ€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค์ •์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ M0 ๋ฌด๋ฃŒ ํด๋Ÿฌ์Šคํ„ฐ, M2 ๋ฐ M5 ๊ณต์œ  ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ, flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "changeStreamOptionsPreAndPostImagesExpireAfterSeconds": -1,
  • "chunkMigrationConcurrency": 0,
  • "customOpensslCipherConfigTls12": [
    ],
  • "defaultMaxTimeMS": 0,
  • "defaultWriteConcern": "string",
  • "javascriptEnabled": true,
  • "minimumEnabledTlsProtocol": "TLS1_0",
  • "noTableScan": true,
  • "oplogMinRetentionHours": 0,
  • "oplogSizeMB": 0,
  • "queryStatsLogVerbosity": 0,
  • "sampleRefreshIntervalBIConnector": 0,
  • "sampleSizeBIConnector": 0,
  • "tlsCipherConfigMode": "CUSTOM",
  • "transactionLifetimeLimitSeconds": 1
}

1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์˜ต์…˜ ์—…๋ฐ์ดํŠธ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ์— ๋Œ€ํ•œ ๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๋™์ผํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ ์œ ์ง€ํ•˜๋Š” ํ˜ธ์ŠคํŠธ ๊ทธ๋ฃน ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์„ธ๋ถ€ ์ •๋ณด์—๋Š” ์ฝ๊ธฐ/ ์“ฐ๊ธฐ ๊ณ ๋ ค (write concern), ์ธ๋ฑ์Šค ๋ฐ oplog ์ œํ•œ, ๊ธฐํƒ€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค์ •์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ํด๋Ÿฌ์Šคํ„ฐ ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ M0 ๋ฌด๋ฃŒ ํด๋Ÿฌ์Šคํ„ฐ, M2 ๋ฐ M5 ๊ณต์œ  ๊ณ„์ธต ํด๋Ÿฌ์Šคํ„ฐ, flex ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” ์„œ๋ฒ„๋ฆฌ์Šค ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-08-05+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์˜ ํด๋Ÿฌ์Šคํ„ฐ ํ•˜๋‚˜์— ์ถ”๊ฐ€ํ•  ๊ณ ๊ธ‰ ๊ตฌ์„ฑ ์„ธ๋ถ€์ •๋ณด.

changeStreamOptionsPreAndPostImagesExpireAfterSeconds
integer <int32>
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: -1

์ตœ์†Œ ์ด๋ฏธ์ง€ ์‚ฌ์ „ ๋ฐ ์‚ฌํ›„ ๋ณด์กด ์‹œ๊ฐ„(์ดˆ)์ž…๋‹ˆ๋‹ค.

์ด ์˜ต์…˜์€ ''changeStreamOptions.preAndPostImages.expireAfterSeconds'' ํด๋Ÿฌ์Šคํ„ฐ ๋งค๊ฐœ๋ณ€์ˆ˜์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค. ์ด ์„ค์ •์€ ๋ณ€๊ฒฝ ์ŠคํŠธ๋ฆผ ์‚ฌ์ „ ๋ฐ ์‚ฌํ›„ ์ด๋ฏธ์ง€์˜ ๋ณด์กด ์ •์ฑ…์„ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์ „ ์ด๋ฏธ์ง€์™€ ์‚ฌํ›„ ์ด๋ฏธ์ง€๋Š” ๊ฐ๊ฐ ๋ฌธ์„œ ์ˆ˜์ • ์ „๊ณผ ํ›„์˜ ๋ฌธ์„œ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. "expireAfterSeconds"๋Š” MongoDB๊ฐ€ ์‚ฌ์ „ ๋ฐ ์‚ฌํ›„ ์ด๋ฏธ์ง€๋ฅผ ๋ณด๊ด€ํ•˜๋Š” ๊ธฐ๊ฐ„์„ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. -1(ํ•ด์ œ)๋กœ ์„ค์ •ํ•˜๋ฉด MongoDB๋Š” ๊ธฐ๋ณธ ๋ณด์กด ์ •์ฑ…์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ํ•ด๋‹น ๋ณ€๊ฒฝ ์ŠคํŠธ๋ฆผ ์ด๋ฒคํŠธ๊ฐ€ oplog์—์„œ ์ œ๊ฑฐ๋  ๋•Œ๊นŒ์ง€ ์‚ฌ์ „ ๋ฐ ์‚ฌํ›„ ์ด๋ฏธ์ง€๊ฐ€ ๋ณด์กด๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์ „ ๋ฐ ์‚ฌํ›„ ์ด๋ฏธ์ง€ ๋ณด์กด ์‹œ๊ฐ„์˜ ์ตœ์†Œ ์‹œ๊ฐ„์„ ์„ค์ •ํ•˜๋ ค๋ฉด 0๋ณด๋‹ค ํฐ ์ •์ˆ˜ ๊ฐ’์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฐ’์„ ๋„ˆ๋ฌด ๋‚ฎ๊ฒŒ ์„ค์ •ํ•˜๋ฉด Realm ๋™๊ธฐํ™”๋‚˜ ํŠธ๋ฆฌ๊ฑฐ ์ฒ˜๋ฆฌ๊ฐ€ ์ค‘๋‹จ๋  ์œ„ํ—˜์ด ์ปค์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ -1(ํ•ด์ œ)์ž…๋‹ˆ๋‹ค.
chunkMigrationConcurrency
integer <int32>

์ฒญํฌ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์œ„ํ•œ ์†Œ์Šค ์ƒค๋“œ ๋ฐ ์ˆ˜์‹  ์ƒค๋“œ์˜ ์Šค๋ ˆ๋“œ ์ˆ˜. ์Šค๋ ˆ๋“œ ์ˆ˜๋Š” ์ƒค๋”ฉ๋œ ํด๋Ÿฌ์Šคํ„ฐ์— ์žˆ๋Š” ์ด CPU ์ฝ”์–ด ์ˆ˜์˜ ์ ˆ๋ฐ˜์„ ์ดˆ๊ณผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

customOpensslCipherConfigTls12
์˜ ๋ฐฐ์—ด strings
ํ•ญ๋ชฉ ์—ด๊ฑฐํ˜•: "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"

TLS 1.2์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ง€์ • OpenSSL ์•”ํ˜ธ ์ œํ’ˆ๊ตฐ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ์ด ํ•„๋“œ tlsCipherConfigMode ๊ฐ€ CUSTOM๋กœ ์„ค์ •ํ•˜๋‹ค ๊ฒฝ์šฐ์—๋งŒ ์œ ํšจํ•ฉ๋‹ˆ๋‹ค.

defaultMaxTimeMS
integer <int32>

๊ฐœ๋ณ„ ์ฝ๊ธฐ ์ž‘์—…์„ ์™„๋ฃŒํ•˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ๊ธฐ๋ณธ ์‹œ๊ฐ„ ์ œํ•œ (๋ฐ€๋ฆฌ์ดˆ).

defaultWriteConcern
๋ฌธ์ž์—ด

๋“œ๋ผ์ด๋ฒ„์—์„œ ์•„๋ฌด๊ฒƒ๋„ ์ง€์ •ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์“ฐ๊ธฐ ์ž‘์—…์„ ์œ„ํ•ด MongoDB์— ์š”์ฒญํ•˜๋Š” ๊ธฐ๋ณธ ์Šน์ธ ์ˆ˜์ค€์ž…๋‹ˆ๋‹ค.

javascriptEnabled
๋ถ€์šธ

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์„œ๋ฒ„ ์ธก JavaScript ์‹คํ–‰์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์—…์˜ ์‹คํ–‰์„ ํ—ˆ์šฉํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. 8.0+๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์„œ๋ฒ„ ์ธก JavaScript๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•˜๊ณ  ์ง‘๊ณ„ ํŒŒ์ดํ”„๋ผ์ธ์˜ ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ๋‚˜์€ ๋Œ€์•ˆ์ž…๋‹ˆ๋‹ค.

minimumEnabledTlsProtocol
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "TLS1_0" "TLS1_1" "TLS1_2"

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์ˆ˜์‹  ์—ฐ๊ฒฐ ์‹œ ํ—ˆ์šฉํ•˜๋Š” ์ตœ์†Œ TLS(์ „์†ก ๊ณ„์ธต ๋ณด์•ˆ) ๋ฒ„์ „. TLS 1.0 ๋˜๋Š” 1.1์„ ์‚ฌ์šฉํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋Š” TLS 1.2๋ฅผ ์ตœ์†Œ TLS ํ”„๋กœํ† ์ฝœ ๋ฒ„์ „์œผ๋กœ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

noTableScan
๋ถ€์šธ

ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜ ์‹œ ์ปฌ๋ ‰์…˜ ์Šค์บ”์„ ์š”ํ•˜๋Š” ์ฟผ๋ฆฌ์˜ ์‹คํ–‰์„ ๋น„ํ™œ์„ฑํ™”ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

oplogMinRetentionHours
์ˆซ์ž or null <double>

์‹œ๊ฐ„ ๋‹จ์œ„๋กœ ํ‘œํ˜„๋œ ํด๋Ÿฌ์Šคํ„ฐ oplog์˜ ์ตœ์†Œ ๋ณด์กด ๊ธฐ๊ฐ„. null ๊ฐ’์€ ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ MongoDB Cloud๊ฐ€ ๊ณ„์‚ฐํ•˜๋Š” ๊ธฐ๋ณธ ์ตœ์†Œ oplog window๋ฅผ ์‚ฌ์šฉํ•จ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

oplogSizeMB
์ •์ˆ˜ ๋˜๋Š” null <int32>

๋ฉ”๊ฐ€๋ฐ”์ดํŠธ ๋‹จ์œ„๋กœ ํ‘œ์‹œํ•œ ํด๋Ÿฌ์Šคํ„ฐ์˜ Oplog ์ €์žฅ ์šฉ๋Ÿ‰ ํ•œ๋„. null ๊ฐ’์€ ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ MongoDB Cloud๊ฐ€ ๊ณ„์‚ฐํ•˜๋Š” ๊ธฐ๋ณธ Oplog ํฌ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•จ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

queryStatsLogVerbosity
integer <int32>

1(๋น„ํ™œ์„ฑํ™”) ๋˜๋Š” 3(ํ™œ์„ฑํ™”)์œผ๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 3์œผ๋กœ ์„ค์ •ํ•˜๋ฉด Atlas๋Š” ํŽธ์ง‘๋˜๊ณ  ์ต๋ช…ํ™”๋œ $queryStats ์ถœ๋ ฅ์„ MongoDB ๋กœ๊ทธ์— ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. $queryStats ์ถœ๋ ฅ์— ๋ฆฌํ„ฐ๋Ÿด ๋˜๋Š” ํ•„๋“œ ๊ฐ’์ด ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ์„ค์ •์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ ์„ฑ๋Šฅ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

sampleRefreshIntervalBIConnector
integer <int32> 0 ์ด์ƒ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 0

mongosqld ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ ์ƒ˜ํ”Œ๋งํ•˜์—ฌ ๊ด€๊ณ„ํ˜• ์Šคํ‚ค๋งˆ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฐ„๊ฒฉ(์ดˆ).

sampleSizeBIConnector
integer <int32> 0 ์ด์ƒ

์Šคํ‚ค๋งˆ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•  ๋•Œ ์ƒ˜ํ”Œ๋งํ•  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋‹น ๋ฌธ์„œ ์ˆ˜.

tlsCipherConfigMode
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "CUSTOM" "DEFAULT"

TLS ์•”ํ˜ธ ์ œํ’ˆ๊ตฐ ๊ตฌ์„ฑ ๋ชจ๋“œ. ๊ธฐ๋ณธ๊ฐ’ ๋ชจ๋“œ ๊ธฐ๋ณธ๊ฐ’ ์•”ํ˜ธ ์ œํ’ˆ๊ตฐ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ง€์ • ๋ชจ๋“œ ์‚ฌ์šฉํ•˜๋ฉด TLS 1.2 ๋ฐ TLS 1.3 ๋ชจ๋‘์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ง€์ • ์•”ํ˜ธ ์ œํ’ˆ๊ตฐ์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

transactionLifetimeLimitSeconds
integer <int64> >= 1

๋‹ค์ค‘ ๋ฌธ์„œ ํŠธ๋žœ์žญ์…˜์˜ ์ˆ˜๋ช…, ์ดˆ ๋‹จ์œ„. Atlas๋Š” ์ด ํ•œ๋„๋ฅผ ์ดˆ๊ณผํ•˜๋Š” ํŠธ๋žœ์žญ์…˜์„ ๋งŒ๋ฃŒ๋œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผํ•˜์—ฌ ์ฃผ๊ธฐ์ ์ธ ์ •๋ฆฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ํ†ตํ•ด ํŠธ๋žœ์žญ์…˜์„ ์ค‘๋‹จํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "changeStreamOptionsPreAndPostImagesExpireAfterSeconds": -1,
  • "chunkMigrationConcurrency": 0,
  • "customOpensslCipherConfigTls12": [
    ],
  • "defaultMaxTimeMS": 0,
  • "defaultWriteConcern": "string",
  • "javascriptEnabled": true,
  • "minimumEnabledTlsProtocol": "TLS1_0",
  • "noTableScan": true,
  • "oplogMinRetentionHours": 0,
  • "oplogSizeMB": 0,
  • "queryStatsLogVerbosity": 0,
  • "sampleRefreshIntervalBIConnector": 0,
  • "sampleSizeBIConnector": 0,
  • "tlsCipherConfigMode": "CUSTOM",
  • "transactionLifetimeLimitSeconds": 1
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "changeStreamOptionsPreAndPostImagesExpireAfterSeconds": -1,
  • "chunkMigrationConcurrency": 0,
  • "customOpensslCipherConfigTls12": [
    ],
  • "defaultMaxTimeMS": 0,
  • "defaultWriteConcern": "string",
  • "javascriptEnabled": true,
  • "minimumEnabledTlsProtocol": "TLS1_0",
  • "noTableScan": true,
  • "oplogMinRetentionHours": 0,
  • "oplogSizeMB": 0,
  • "queryStatsLogVerbosity": 0,
  • "sampleRefreshIntervalBIConnector": 0,
  • "sampleSizeBIConnector": 0,
  • "tlsCipherConfigMode": "CUSTOM",
  • "transactionLifetimeLimitSeconds": 1
}

1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ํŽ˜์ผ์˜ค๋ฒ„ ํ…Œ์ŠคํŠธ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ ์— ๋Œ€ํ•œ ํŽ˜์ผ์˜ค๋ฒ„ ํ…Œ์ŠคํŠธ๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ์—๋Š” ๋™์ผํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ ์œ ์ง€ํ•˜๋Š” ํ˜ธ์ŠคํŠธ ๊ทธ๋ฃน ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํŽ˜์ผ์˜ค๋ฒ„ ํ…Œ์ŠคํŠธ๋Š” MongoDB Cloud๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ์˜ ํ”„๋ผ์ด๋จธ๋ฆฌ ๋…ธ๋“œ ์žฅ์• ๋ฅผ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ์ค‘์— MongoDB Cloud๋Š” ํ”„๋ผ์ด๋จธ๋ฆฌ ๋…ธ๋“œ ์ข…๋ฃŒํ•˜๊ณ  ์ƒˆ ํ”„๋ผ์ด๋จธ๋ฆฌ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ํด๋Ÿฌ์Šคํ„ฐ ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฒ„์ „: v2-{2023-01-01}

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint)",
  • "error": 401,
  • "errorCode": "NOT_ORG_GROUP_CREATOR",
  • "reason": "Unauthorized"
}

๋ชจ๋“  ํด๋Ÿฌ์Šคํ„ฐ ์ž‘์—…์˜ ์ƒํƒœ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ ์— ๋Œ€ํ•œ ๋ชจ๋“  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์˜ ์ƒํƒœ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜์—ฌ MongoDB Cloud์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ์ฒ˜๋ฆฌ ์ง„ํ–‰ ์ƒํ™ฉ์„ ํ™•์ธํ•˜์„ธ์š”. ์‘๋‹ต์—๋Š” ์ƒˆ๋กœ์šด ์ „์šฉ ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฐํฌ์„œ๋ฒ„ ํฌํ•จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{}

MongoDB ์ง์› ํด๋Ÿฌ์Šคํ„ฐ ์•ก์„ธ์Šค๋ฅผ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

MongoDB ์ง์› ํด๋Ÿฌ์Šคํ„ฐ์— ์ง€์ •๋œ ๊ธฐ๊ฐ„ ๋™์•ˆ ๊ทธ๋ฆฌ๊ณ  ํ•œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ์ง€์ •๋œ ์ˆ˜์ค€์œผ๋กœ ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์ด ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-08-05+json

์•ก์„ธ์Šค ์ˆ˜์ค€ ๋ฐ ๋งŒ๋ฃŒ์ผ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

expireTime
ํ•„์ˆ˜
๋ฌธ์ž์—ด <date-time>

์ง์› ์•ก์„ธ์Šค ๊ถŒํ•œ ๋ถ€์—ฌ์˜ ๋งŒ๋ฃŒ ๋‚ ์งœ์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

grantType
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: 'CLUSTER_DATABASE_LOGS' "CLUSTER_INFRASTRUCTURE" "CLUSTER_INFRASTRUCTURE_AND_APP_SERVICES_SYNC_DATA"

MongoDB ์ง์›์—๊ฒŒ ๋ถ€์—ฌํ•  ์•ก์„ธ์Šค ์ˆ˜์ค€์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-08-05+json
{
  • "expirationTime": "2019-08-24T14:15:22Z",
  • "grantType": "CLUSTER_DATABASE_LOGS"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ FCV ๊ณ ์ •

ํ˜„์žฌ MongoDB ๋ฒ„์ „์— ๊ธฐ๋Šฅ ํ˜ธํ™˜์„ฑ ๋ฒ„์ „(๊ธฐ๋Šฅ ํ˜ธํ™˜์„ฑ ๋ฒ„์ „)์„ ๊ณ ์ •ํ•˜๊ณ  ๊ณ ์ • ๋งŒ๋ฃŒ ๋‚ ์งœ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ๊ธฐ๋Šฅ ํ˜ธํ™˜์„ฑ ๋ฒ„์ „ ๊ณ ์ • ํ•ญ๋ชฉ์ด ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ ์ด ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด ๊ธฐ์กด ๊ณ ์ • ํ•ญ๋ชฉ์˜ ๋งŒ๋ฃŒ ๋‚ ์งœ๋งŒ ์—…๋ฐ์ดํŠธ๋˜๊ณ  ๊ธฐ๋Šฅ ํ˜ธํ™˜์„ฑ ๋ฒ„์ „์ด ๋‹ค์‹œ ๊ณ ์ •๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์ด ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2024-05-30+json

FCV ๊ณ ์ • ๊ตฌ์„ฑ์„ ์กฐ์ •ํ•˜๊ธฐ ์œ„ํ•œ ์„ ํƒ์  ์š”์ฒญ ๋งค๊ฐœ๋ณ€์ˆ˜์ž…๋‹ˆ๋‹ค.

๋งŒ๋ฃŒ ๋‚ ์งœ
๋ฌธ์ž์—ด <date-time>

๊ณ ์ • FCV ์˜ ๋งŒ๋ฃŒ ๋‚ ์งœ์ž…๋‹ˆ๋‹ค. ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๋งŒ๋ฃŒ ๋‚ ์งœ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ FCV ์›๋ž˜ ๊ณ ์ •๋œ ๋‚ ์งœ๋กœ๋ถ€ํ„ฐ 4 ์ฃผ๋กœ ๊ธฐ๋ณธ๊ฐ’ ๋ฉ๋‹ˆ๋‹ค. ์ด ํ•„๋“œ ๊ณ ์ •๋œ ๋‚ ์งœ๋กœ๋ถ€ํ„ฐ 4 ์ฃผ๋ฅผ ์ดˆ๊ณผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2024-05-30+json
{
  • "expirationDate": "2019-08-24T14:15:22Z"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

MongoDB ์ง์› ํด๋Ÿฌ์Šคํ„ฐ ์•ก์„ธ์Šค๋ฅผ ํ•œ ํด๋Ÿฌ์Šคํ„ฐ ์ฒ ํšŒํ•ฉ๋‹ˆ๋‹ค.

์ด์ „์— ๋ถ€์—ฌ๋œ MongoDB ์ง์› ํด๋Ÿฌ์Šคํ„ฐ ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ์ทจ์†Œํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์ด ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ FCV ๊ณ ์ • ํ•ด์ œ

ํ˜„์žฌ ๊ณ ์ •๋œ ๊ธฐ๋Šฅ ํ˜ธํ™˜์„ฑ ๋ฒ„์ „์„ ๊ณ ์ • ํ•ด์ œํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ ๋น ๋ฅธ ๋ฆด๋ฆฌ์Šค์˜ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋Š” ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์ด ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

ํด๋Ÿฌ์Šคํ„ฐ์— ์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ ์„ธํŠธ ์š”์ฒญ ๋กœ๋“œ

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ ์— MongoDB ์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋กœ๋“œํ•˜๋„๋ก ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฆ„
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋กœ๋“œํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "clusterName": "string",
  • "completeDate": "2019-08-24T14:15:22Z",
  • "createDate": "2019-08-24T14:15:22Z",
  • "errorMessage": "string",
  • "state": "WORKING"
}

ํด๋Ÿฌ์Šคํ„ฐ ์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ ์„ธํŠธ ์š”์ฒญ ์ƒํƒœ ํ™•์ธ

์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ํ•˜๋‚˜์˜ ํด๋Ÿฌ์Šคํ„ฐ ์— ๋กœ๋“œํ•˜๋Š” ์ง„ํ–‰ ์ƒํ™ฉ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

sampleDatasetId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$

๋กœ๋“œ๋œ ์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "clusterName": "string",
  • "completeDate": "2019-08-24T14:15:22Z",
  • "createDate": "2019-08-24T14:15:22Z",
  • "errorMessage": "string",
  • "state": "WORKING"
}

์ปฌ๋ ‰์…˜ ์ˆ˜์ค€ ์ง€ํ‘œ

์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ ๋˜๋Š” ํ”„๋กœ์„ธ์Šค์— ๋Œ€ํ•ด ๊ณ ์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๋ฐ˜ํ™˜, ์ถ”๊ฐ€ ๋ฐ ํŽธ์ง‘ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ปฌ๋ ‰์…˜ ์ˆ˜์ค€ ์ง€์—ฐ ์‹œ๊ฐ„ ์ง€ํ‘œ ๋ฐ์ดํ„ฐ๋„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ณ ์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ฐ˜ํ™˜

์‚ฌ์šฉ์ž๊ฐ€ ์ฟผ๋ฆฌ ์ง€์—ฐ ์‹œ๊ฐ„ ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜๋™์œผ๋กœ ์„ ํƒํ•œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์˜ ์ง‘ํ•ฉ์ธ ์ง€์ •๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ณ ์ • ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”๋กœ, ๊ณ ์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์กฐํšŒํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "clusterId": "32b6e34b3d91647abb20e7b8",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "pinnedNamespaces": [
    ]
}

๊ณ ์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ถ”๊ฐ€

์ง€์ •๋œ ๊ทธ๋ฃน ๋ฐ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์ปฌ๋ ‰์…˜ ์ˆ˜์ค€ ์ง€์—ฐ ์‹œ๊ฐ„ ์ง€ํ‘œ ์ปฌ๋ ‰์…˜ ์œ„ํ•ด ์ œ๊ณต๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ชฉ๋ก์„ ๊ธฐ์กด์˜ ๊ณ ์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ชฉ๋ก์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”๋กœ, ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๊ณ ์ •ํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-11-15+json

์ฟผ๋ฆฌ ์ง€์—ฐ ์‹œ๊ฐ„ ์ง€ํ‘œ ์ˆ˜์ง‘์„ ์œ„ํ•ด ๊ณ ์ •ํ•  ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ฌธ์ž์—ด(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ปฌ๋ ‰์…˜ ์ด๋ฆ„์˜ ์กฐํ•ฉ) ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

namespaces
์˜ ๋ฐฐ์—ด strings unique

์ง€์ •๋œ ํ˜ธ์ŠคํŠธ ๋˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค string(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ปฌ๋ ‰์…˜์˜ ์กฐํ•ฉ) ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "namespaces": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "clusterId": "32b6e34b3d91647abb20e7b8",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "pinnedNamespaces": [
    ]
}

๋„ค์ž„์ŠคํŽ˜์ด์Šค ๊ณ ์ •

์ง€์ •๋œ ๊ทธ๋ฃน ๋ฐ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์ปฌ๋ ‰์…˜ ์ˆ˜์ค€ ์ง€์—ฐ ์‹œ๊ฐ„ ์ง€ํ‘œ ์ˆ˜์ง‘์„ ์œ„ํ•ด ์ œ๊ณต๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ชฉ๋ก์„ ๊ณ ์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๊ณ ์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ชฉ๋ก์ด ์ดˆ๊ธฐํ™”๋˜๊ฑฐ๋‚˜ ๊ทธ๋ฃน ๋ฐ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ธฐ์กด ๊ณ ์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ชฉ๋ก์ด ๋ฐ”๋€๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”๋กœ, ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๊ณ ์ •ํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-11-15+json

์ฟผ๋ฆฌ ์ง€์—ฐ ์‹œ๊ฐ„ ์ง€ํ‘œ ์ˆ˜์ง‘์„ ์œ„ํ•ด ๊ณ ์ •ํ•  ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ฌธ์ž์—ด(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ปฌ๋ ‰์…˜ ์ด๋ฆ„์˜ ์กฐํ•ฉ) ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

namespaces
์˜ ๋ฐฐ์—ด strings unique

์ง€์ •๋œ ํ˜ธ์ŠคํŠธ ๋˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค string(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ปฌ๋ ‰์…˜์˜ ์กฐํ•ฉ) ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "namespaces": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "clusterId": "32b6e34b3d91647abb20e7b8",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "pinnedNamespaces": [
    ]
}

๋„ค์ž„์ŠคํŽ˜์ด์Šค ๊ณ ์ • ํ•ด์ œ

์ง€์ •๋œ ๊ทธ๋ฃน ๋ฐ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•œ ์ปฌ๋ ‰์…˜ ์ˆ˜์ค€ ์ง€์—ฐ ์‹œ๊ฐ„ ์ง€ํ‘œ ์ปฌ๋ ‰์…˜ ์œ„ํ•ด ์ œ๊ณต๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ชฉ๋ก์„ ๊ณ ์ • ํ•ด์ œํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”๋กœ, ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๊ณ ์ • ํ•ด์ œํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-11-15+json

์ฟผ๋ฆฌ ์ง€์—ฐ ์‹œ๊ฐ„ ์ง€ํ‘œ ์ˆ˜์ง‘์„ ์œ„ํ•ด ๊ณ ์ •ํ•  ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ฌธ์ž์—ด(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ปฌ๋ ‰์…˜ ์ด๋ฆ„์˜ ์กฐํ•ฉ) ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

namespaces
์˜ ๋ฐฐ์—ด strings unique

์ง€์ •๋œ ํ˜ธ์ŠคํŠธ ๋˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค string(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ปฌ๋ ‰์…˜์˜ ์กฐํ•ฉ) ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "namespaces": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "clusterId": "32b6e34b3d91647abb20e7b8",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "pinnedNamespaces": [
    ]
}

ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ˆœ์œ„๊ฐ€ ์ง€์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ฐ˜ํ™˜

์ฃผ์–ด์ง„ ๊ธฐ๊ฐ„ ๋‚ด์—์„œ ๊ฐ€์žฅ ๋†’์€ ์ด ์‹คํ–‰ ์‹œ๊ฐ„(๋‚ด๋ฆผ์ฐจ์ˆœ)์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฅ˜๋œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ํ•˜์œ„ ์ง‘ํ•ฉ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”๋กœ, ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๊ณ ์ •ํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

clusterView
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "primary" "secondary" "INDIVIDUAL_PROCESS"

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”๋กœ, ์ง€ํ‘œ๋ฅผ ์กฐํšŒํ•  ํด๋Ÿฌ์Šคํ„ฐ ํ† ํด๋กœ์ง€๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ
๋ฌธ์ž์—ด <date-time>

MongoDB Cloud๊ฐ€ ์ธก์ •ํ•ญ๋ชฉ ๋ณด๊ณ ๋ฅผ ์‹œ์ž‘ํ•œ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

end
๋ฌธ์ž์—ด <date-time>

MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ๋ฉ”ํŠธ๋ฆญ ๋ณด๊ณ ๋ฅผ ์ค‘๋‹จํ•˜๋Š” ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

period
๋ฌธ์ž์—ด
์˜ˆ์‹œ: period=PT10H

Atlas๊ฐ€ ๋ฉ”ํŠธ๋ฆญ์„ ๋ณด๊ณ ํ•˜๋Š” ๊ธฐ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ๊ธฐ๊ฐ„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์‹œ์ž‘๊ณผ ๋์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "identifierId": "string",
  • "rankedNamespaces": [
    ]
}

ํด๋Ÿฌ์Šคํ„ฐ ์ˆ˜์ค€ ์ฟผ๋ฆฌ ์ง€์—ฐ ์‹œ๊ฐ„ ๋ฐ˜ํ™˜

์ง€์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— ๋Œ€ํ•œ Coll Stats ์ง€์—ฐ ์‹œ๊ฐ„ ํด๋Ÿฌ์Šคํ„ฐ ์ˆ˜์ค€ ์ธก์ • ๋ชฉ๋ก์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

clusterName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[a-zA-Z0-9][a-zA-Z0-9-]*$

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”๋กœ, ์ง€ํ‘œ๋ฅผ ์กฐํšŒํ•  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

clusterView
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "primary" "secondary" "INDIVIDUAL_PROCESS"

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”๋กœ, ์ง€ํ‘œ๋ฅผ ์กฐํšŒํ•  ํด๋Ÿฌ์Šคํ„ฐ ํ† ํด๋กœ์ง€๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

databaseName
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์˜ˆ์‹œ: mydb

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์˜ˆ์‹œ: mycoll

์ปฌ๋ ‰์…˜์„ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์ง€ํ‘œ
์˜ ๋ฐฐ์—ด strings unique
ํ•ญ๋ชฉ ์—ด๊ฑฐํ˜•: "READS_OPS" "READS_LATENCY" "AVERAGE_READS_LATENCY" "READS_P50_VALUE" "READS_P95_VALUE" "READS_P99_VALUE" "WRITES_OPS" "WRITES_LATENCY" "AVERAGE_WRITES_LATENCY" 'WRITES_P50_VALUE' 'WRITES_P95_VALUE' 'WRITES_P99_VALUE' 'COMMANDS_OPS' "COMMANDS_LATENCY" "AVERAGE_COMMANDS_LATENCY" "COMMANDS_P50_VALUE" "COMMANDS_P95_VALUE" "COMMANDS_P99_VALUE" "TOTAL_OPS" "TOTAL_LATENCY" "AVERAGE_TOTAL_OPS_LATENCY" "TOTAL_OPS_P50_VALUE" "TOTAL_OPS_P95_VALUE" "TOTAL_OPS_P99_VALUE"

๊ด€๋ จ ๋ฐ์ดํ„ฐ ๊ณ„์—ด์— ๋Œ€ํ•ด ์กฐํšŒํ•˜๋ ค๋Š” ์ง€ํ‘œ๊ฐ€ ํฌํ•จ๋œ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์ด ๋ฆฌ์†Œ์Šค๋Š” ๋ชจ๋“  ์ปฌ๋ ‰์…˜ ์ง€์—ฐ ์‹œ๊ฐ„ ํ†ต๊ณ„ ์ง€ํ‘œ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ ๊ณ„์—ด์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ
๋ฌธ์ž์—ด <date-time>

MongoDB Cloud๊ฐ€ ์ธก์ •ํ•ญ๋ชฉ ๋ณด๊ณ ๋ฅผ ์‹œ์ž‘ํ•œ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

end
๋ฌธ์ž์—ด <date-time>

MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ๋ฉ”ํŠธ๋ฆญ ๋ณด๊ณ ๋ฅผ ์ค‘๋‹จํ•˜๋Š” ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

period
๋ฌธ์ž์—ด
์˜ˆ์‹œ: period=PT10H

Atlas๊ฐ€ ๋ฉ”ํŠธ๋ฆญ์„ ๋ณด๊ณ ํ•˜๋Š” ๊ธฐ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ๊ธฐ๊ฐ„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์‹œ์ž‘๊ณผ ๋์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "clusterId": "string",
  • "clusterView": "string",
  • "collectionName": "string",
  • "databaseName": "string",
  • "end": "2019-08-24T14:15:22Z",
  • "granularity": "PT1M",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "measurements": [
    ],
  • "processId": "mongodb.example.com:27017",
  • "start": "2019-08-24T14:15:22Z"
}

๋ชจ๋“  ์ง€ํ‘œ ์ด๋ฆ„ ๋ฐ˜ํ™˜

์š”์ฒญ ์‹œ ์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  Coll Stats ์ง€์—ฐ ์‹œ๊ฐ„ ์ง€ํ‘œ ์ด๋ฆ„๊ณผ ํ•ด๋‹น ๋‹จ์œ„๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

ํ˜ธ์ŠคํŠธ์—์„œ ์ˆœ์œ„๊ฐ€ ์ง€์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ฐ˜ํ™˜

์ฃผ์–ด์ง„ ๊ธฐ๊ฐ„ ๋‚ด์—์„œ ๊ฐ€์žฅ ๋†’์€ ์ด ์‹คํ–‰ ์‹œ๊ฐ„(๋‚ด๋ฆผ์ฐจ์ˆœ) ์„ ๊ธฐ์ค€์œผ๋กœ ์ˆœ์œ„๊ฐ€ ๋งค๊ฒจ์ง„ ์ง€์ •๋œ ํ”„๋กœ์„ธ์Šค์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ํ•˜์œ„ ์ง‘ํ•ฉ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

processId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:...
์˜ˆ์‹œ: my.host.name.com:27017

MongoDB ํ”„๋กœ์„ธ์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ํ˜ธ์ŠคํŠธ ์ด๋ฆ„๊ณผ IANA ํฌํŠธ์˜ ์กฐํ•ฉ์ž…๋‹ˆ๋‹ค. ํ˜ธ์ŠคํŠธ๋Š” MongoDB ํ”„๋กœ์„ธ์Šค (mongod ๋˜๋Š” mongos) ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ํ˜ธ์ŠคํŠธ์˜ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„, FQDN (์ •๊ทœํ™”๋œ ๋„๋ฉ”์ธ ์ด๋ฆ„) ๋˜๋Š” ์ธํ„ฐ๋„ท ํ”„๋กœํ† ์ฝœ ์ฃผ์†Œ (IPv4 ๋˜๋Š” IPv6) ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํฌํŠธ๋Š” MongoDB ํ”„๋กœ์„ธ์Šค๊ฐ€ ์š”์ฒญ์„ ์ˆ˜์‹  ๋Œ€๊ธฐํ•˜๋Š” IANA ํฌํŠธ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ
๋ฌธ์ž์—ด <date-time>

MongoDB Cloud๊ฐ€ ์ธก์ •ํ•ญ๋ชฉ ๋ณด๊ณ ๋ฅผ ์‹œ์ž‘ํ•œ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

end
๋ฌธ์ž์—ด <date-time>

MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ๋ฉ”ํŠธ๋ฆญ ๋ณด๊ณ ๋ฅผ ์ค‘๋‹จํ•˜๋Š” ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

period
๋ฌธ์ž์—ด
์˜ˆ์‹œ: period=PT10H

Atlas๊ฐ€ ๋ฉ”ํŠธ๋ฆญ์„ ๋ณด๊ณ ํ•˜๋Š” ๊ธฐ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ๊ธฐ๊ฐ„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์‹œ์ž‘๊ณผ ๋์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "identifierId": "string",
  • "rankedNamespaces": [
    ]
}

ํ˜ธ์ŠคํŠธ ์ˆ˜์ค€ ์ฟผ๋ฆฌ ์ง€์—ฐ ์‹œ๊ฐ„ ๋ฐ˜ํ™˜

์ง€์ •๋œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์— ๋Œ€ํ•œ ์ฝœ ํ†ต๊ณ„ ์ง€์—ฐ ์‹œ๊ฐ„ ํ”„๋กœ์„ธ์Šค ์ˆ˜์ค€ ์ธก์ •๊ฐ’์˜ ๋ชฉ๋ก์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

processId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:...
์˜ˆ์‹œ: my.host.name.com:27017

MongoDB ํ”„๋กœ์„ธ์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ํ˜ธ์ŠคํŠธ ์ด๋ฆ„๊ณผ IANA ํฌํŠธ์˜ ์กฐํ•ฉ์ž…๋‹ˆ๋‹ค. ํ˜ธ์ŠคํŠธ๋Š” MongoDB ํ”„๋กœ์„ธ์Šค (mongod ๋˜๋Š” mongos) ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ํ˜ธ์ŠคํŠธ์˜ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„, FQDN (์ •๊ทœํ™”๋œ ๋„๋ฉ”์ธ ์ด๋ฆ„) ๋˜๋Š” ์ธํ„ฐ๋„ท ํ”„๋กœํ† ์ฝœ ์ฃผ์†Œ (IPv4 ๋˜๋Š” IPv6) ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํฌํŠธ๋Š” MongoDB ํ”„๋กœ์„ธ์Šค๊ฐ€ ์š”์ฒญ์„ ์ˆ˜์‹  ๋Œ€๊ธฐํ•˜๋Š” IANA ํฌํŠธ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

databaseName
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์˜ˆ์‹œ: mydb

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

collectionName
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์˜ˆ์‹œ: mycoll

์ปฌ๋ ‰์…˜์„ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์ง€ํ‘œ
์˜ ๋ฐฐ์—ด strings unique
ํ•ญ๋ชฉ ์—ด๊ฑฐํ˜•: "READS_OPS" "READS_LATENCY" "AVERAGE_READS_LATENCY" "READS_P50_VALUE" "READS_P95_VALUE" "READS_P99_VALUE" "WRITES_OPS" "WRITES_LATENCY" "AVERAGE_WRITES_LATENCY" 'WRITES_P50_VALUE' 'WRITES_P95_VALUE' 'WRITES_P99_VALUE' 'COMMANDS_OPS' "COMMANDS_LATENCY" "AVERAGE_COMMANDS_LATENCY" "COMMANDS_P50_VALUE" "COMMANDS_P95_VALUE" "COMMANDS_P99_VALUE" "TOTAL_OPS" "TOTAL_LATENCY" "AVERAGE_TOTAL_OPS_LATENCY" "TOTAL_OPS_P50_VALUE" "TOTAL_OPS_P95_VALUE" "TOTAL_OPS_P99_VALUE"

๊ด€๋ จ ๋ฐ์ดํ„ฐ ๊ณ„์—ด์— ๋Œ€ํ•ด ์กฐํšŒํ•˜๋ ค๋Š” ์ง€ํ‘œ๊ฐ€ ํฌํ•จ๋œ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์ด ๋ฆฌ์†Œ์Šค๋Š” ๋ชจ๋“  ์ปฌ๋ ‰์…˜ ์ง€์—ฐ ์‹œ๊ฐ„ ํ†ต๊ณ„ ์ง€ํ‘œ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ ๊ณ„์—ด์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ
๋ฌธ์ž์—ด <date-time>

MongoDB Cloud๊ฐ€ ์ธก์ •ํ•ญ๋ชฉ ๋ณด๊ณ ๋ฅผ ์‹œ์ž‘ํ•œ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

end
๋ฌธ์ž์—ด <date-time>

MongoDB ํด๋ผ์šฐ๋“œ๊ฐ€ ๋ฉ”ํŠธ๋ฆญ ๋ณด๊ณ ๋ฅผ ์ค‘๋‹จํ•˜๋Š” ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ํƒ€์ž„์Šคํƒฌํ”„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

period
๋ฌธ์ž์—ด
์˜ˆ์‹œ: period=PT10H

Atlas๊ฐ€ ๋ฉ”ํŠธ๋ฆญ์„ ๋ณด๊ณ ํ•˜๋Š” ๊ธฐ๊ฐ„์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” UTC ๋‹จ์œ„์˜ ISO 8601 ๊ธฐ๊ฐ„ ํ˜•์‹์œผ๋กœ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์‹œ์ž‘๊ณผ ๋์„ ์„ค์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ํฌํ•จํ•˜์„ธ์š”.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-11-15+json
{
  • "collectionName": "string",
  • "databaseName": "string",
  • "end": "2019-08-24T14:15:22Z",
  • "granularity": "PT1M",
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "links": [],
  • "measurements": [
    ],
  • "processId": "mongodb.example.com:27017",
  • "start": "2019-08-24T14:15:22Z"
}

์‚ฌ์šฉ์ž ์ง€์ • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ญํ• 

์‚ฌ์šฉ์ž ์ง€์ • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ฌ์šฉ์ž ๊ถŒํ•œ ์—ญํ• ์„ ๋ฐ˜ํ™˜, ์ถ”๊ฐ€, ํŽธ์ง‘ ๋ฐ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์„ ์‚ฌ์šฉํ•˜์—ฌ MongoDB Cloud ๋‚ด์žฅ ์—ญํ• ์—์„œ ์„ค๋ช…ํ•  ์ˆ˜ ์—†๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ์ž‘์—… ์ง‘ํ•ฉ์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์˜ ๋ชจ๋“  ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ํ”„๋กœ์ ํŠธ ์ˆ˜์ค€์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค๋Š” MongoDB ๊ถŒํ•œ ์ž‘์—…์˜ ํ•˜์œ„ ์ง‘ํ•ฉ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ •์˜ ์—ญํ•  ์ž‘์—…์˜ ํ•˜์œ„ ์ง‘ํ•ฉ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ๋„“์€ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ์ž‘์—… ๋ชฉ๋ก์„ ๋งŒ๋“ค๋ ค๋ฉด MongoDB Cloud ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์—๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ์˜ ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์ง€์›ํ•˜๊ณ  ํ”„๋กœ์ ํŠธ์˜ ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ MongoDB ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋˜๋Š” ์ž‘์—…์ด ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํ”„๋กœ์ ํŠธ์— MongoDB 4.2 ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ MongoDB 4.4์— ์ถ”๊ฐ€๋œ ์ž‘์—…์„ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์„ ๋งŒ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•œ ๋ชจ๋“  ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
[
  • {
    }
]

1๊ฐœ์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ๋งŒ๋“ค๊ธฐ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ํ•˜๋‚˜์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ• , ํ”„๋กœ์ ํŠธ ์ŠคํŠธ๋ฆผ ์ฒ˜๋ฆฌ ์†Œ์œ ์ž ์—ญํ•  ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ํ•˜๋‚˜์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ถŒํ•œ ์ž‘์—…)

์—ญํ• ์ด ๋ถ€์—ฌํ•˜๋Š” ๊ฐœ๋ณ„ ๊ถŒํ•œ ์ž‘์—…์˜ ๋ชฉ๋ก.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (์ƒ์†๋œ ์—ญํ• ) unique

์ด ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์ด ์ƒ์†ํ•˜๋Š” ๊ธฐ๋ณธ ์ œ๊ณต ์—ญํ• ์˜ ๋ชฉ๋ก.

roleName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์š”์ฒญ์— ๋Œ€ํ•œ ์—ญํ• ์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”. ์ด ํ”„๋กœ์ ํŠธ์— ํฌํ•จ๋œ ์ด ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์— ๋Œ€ํ•ด ๊ณ ์œ ํ•œ ์ด๋ฆ„์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "actions": [
    ],
  • "inheritedRoles": [
    ],
  • "roleName": "string"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "actions": [
    ],
  • "inheritedRoles": [
    ],
  • "roleName": "string"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ์ œ๊ฑฐ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ํ•˜๋‚˜๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ƒ์œ„ ์—ญํ• ์ด๋‚˜ ์ž‘์—…์ด ์—†๋Š” ํ•˜๋‚˜ ์ด์ƒ์˜ ํ•˜์œ„ ์—ญํ• ์„ ๋‚จ๊ฒจ๋‘๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ์ œ๊ฑฐ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ํ•œ ๋ช… ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ฌ์šฉ์ž๋ฅผ ์—ญํ•  ์—†์ด ๋‚จ๊ฒจ๋‘๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ์ œ๊ฑฐ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ• , ํ”„๋กœ์ ํŠธ ์ŠคํŠธ๋ฆผ ์ฒ˜๋ฆฌ ์†Œ์œ ์ž ์—ญํ•  ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

roleName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์š”์ฒญ์— ๋Œ€ํ•œ ์—ญํ• ์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”. ์ด ํ”„๋กœ์ ํŠธ์— ํฌํ•จ๋œ ์ด ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์— ๋Œ€ํ•ด ๊ณ ์œ ํ•œ ์ด๋ฆ„์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ํ•˜๋‚˜๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

roleName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์š”์ฒญ์— ๋Œ€ํ•œ ์—ญํ• ์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”. ์ด ํ”„๋กœ์ ํŠธ์— ํฌํ•จ๋œ ์ด ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์— ๋Œ€ํ•ด ๊ณ ์œ ํ•œ ์ด๋ฆ„์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "actions": [
    ],
  • "inheritedRoles": [
    ],
  • "roleName": "string"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ์—…๋ฐ์ดํŠธ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ํ•˜๋‚˜์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ• , ํ”„๋กœ์ ํŠธ ์ŠคํŠธ๋ฆผ ์ฒ˜๋ฆฌ ์†Œ์œ ์ž ์—ญํ•  ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ก์„ธ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

roleName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

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

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์˜ ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ•  ํ•˜๋‚˜๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ถŒํ•œ ์ž‘์—…)

์—ญํ• ์ด ๋ถ€์—ฌํ•˜๋Š” ๊ฐœ๋ณ„ ๊ถŒํ•œ ์ž‘์—…์˜ ๋ชฉ๋ก.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (์ƒ์†๋œ ์—ญํ• ) unique

์ด ์‚ฌ์šฉ์ž ์ง€์ • ์—ญํ• ์ด ์ƒ์†ํ•˜๋Š” ๊ธฐ๋ณธ ์ œ๊ณต ์—ญํ• ์˜ ๋ชฉ๋ก.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "actions": [
    ],
  • "inheritedRoles": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "actions": [
    ],
  • "inheritedRoles": [
    ],
  • "roleName": "string"
}

๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜

์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ๋ฐ˜ํ™˜, ์ถ”๊ฐ€, ํŽธ์ง‘ ๋ฐ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค์—๋Š” ํ”„๋กœ์ ํŠธ ID๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๊ตฌ์„ฑ์„ ๋ณ€๊ฒฝํ•˜๋ฉด ๋น„์šฉ์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ์žˆ๋Š” ๋ชจ๋“  ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค์˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์ด์ƒ์˜ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์œ ํ˜•
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "USER"
์—ด๊ฑฐํ˜•: "USER" "ONLINE_ARCHIVE"

๋ฐ˜ํ™˜ํ•  ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์œ ํ˜•.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
[
  • {
    }
]

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์— 1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋งŒ๋“ค๊ธฐ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ํ•˜๋‚˜์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ Charts ๊ด€๋ฆฌ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

skipRoleValidation
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์š”์ฒญํ•œ IAM ์—ญํ• ์ด S3 ๋ฒ„ํ‚ท์—์„œ ์ฝ์„ ์ˆ˜ ์žˆ๋Š”์ง€๋ฅผ ์ด ์š”์ฒญ์—์„œ ํ™•์ธํ•ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. AWS๋Š” ๋ฒ„ํ‚ท์— ์“ฐ๊ธฐ ์ „์— ์—ญํ• ์ด ๋ฒ„ํ‚ท์— ์žˆ๋Š” ๊ฐ์ฒด๋ฅผ ๋‚˜์—ดํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ถ€ IAM ์—ญํ• ์—๋Š” ์“ฐ๊ธฐ ๊ถŒํ•œ๋งŒ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”Œ๋ž˜๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ•ด๋‹น ํ™•์ธ ๊ณผ์ •์„ ๊ฑด๋„ˆ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ํ•˜๋‚˜์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ์„ธ๋ถ€ ์ •๋ณด.

๊ฐ์ฒด (๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž)

์ด ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๊ฐ€ ํ˜ธ์ŠคํŒ…๋˜๋Š” ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž์ž…๋‹ˆ๋‹ค.

๊ฐ์ฒด (DataLakeDataProcessRegion)

์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๊ฐ€ ํด๋ผ์ด์–ธํŠธ ์—ฐ๊ฒฐ์„ ๋ผ์šฐํŒ…ํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž ๋ฆฌ์ „์— ๋Œ€ํ•œ ์ •๋ณด์ž…๋‹ˆ๋‹ค.

์ด๋ฆ„
๋ฌธ์ž์—ด

์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

๊ฐ์ฒด (DataLakeStorage)

๊ฐ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ ๊ตฌ์„ฑ ์ •๋ณด ๋ฐ MongoDB Cloud ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ๋งคํ•‘.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cloudProviderConfig": {
    },
  • "dataProcessRegion": {
    },
  • "name": "string",
  • "storage": {
    }
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cloudProviderConfig": {
    },
  • "dataProcessRegion": {
    },
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "hostnames": [
    ],
  • "name": "string",
  • "privateEndpointHostnames": [
    ],
  • "state": "UNVERIFIED",
  • "storage": {
    }
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์ œ๊ฑฐ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ํ•œ ๊ฐœ๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ Charts ๊ด€๋ฆฌ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

tenantName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์ œ๊ฑฐํ•  ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint)",
  • "error": 401,
  • "errorCode": "NOT_ORG_GROUP_CREATOR",
  • "reason": "Unauthorized"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ๋‚ด ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ํ•œ ๊ฐœ์˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ๋˜๋Š” ํ”„๋กœ์ ํŠธ Charts ๊ด€๋ฆฌ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

tenantName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

๋ฐ˜ํ™˜ํ•  ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cloudProviderConfig": {
    },
  • "dataProcessRegion": {
    },
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "hostnames": [
    ],
  • "name": "string",
  • "privateEndpointHostnames": [
    ],
  • "state": "UNVERIFIED",
  • "storage": {
    }
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์—…๋ฐ์ดํŠธ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์— ์žˆ๋Š” ํ•˜๋‚˜์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์ด์ƒ์˜ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

tenantName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์—…๋ฐ์ดํŠธํ•  ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

skipRoleValidation
ํ•„์ˆ˜
๋ถ€์šธ

์š”์ฒญํ•œ IAM ์—ญํ• ์ด S3 ๋ฒ„ํ‚ท์—์„œ ์ฝ์„ ์ˆ˜ ์žˆ๋Š”์ง€๋ฅผ ์ด ์š”์ฒญ์—์„œ ํ™•์ธํ•ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ. AWS๋Š” ๋ฒ„ํ‚ท์— ์“ฐ๊ธฐ ์ „์— ์—ญํ• ์ด ๋ฒ„ํ‚ท์— ์žˆ๋Š” ๊ฐ์ฒด๋ฅผ ๋‚˜์—ดํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ถ€ IAM ์—ญํ• ์—๋Š” ์“ฐ๊ธฐ ๊ถŒํ•œ๋งŒ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”Œ๋ž˜๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ•ด๋‹น ํ™•์ธ ๊ณผ์ •์„ ๊ฑด๋„ˆ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์—์„œ ์—…๋ฐ์ดํŠธํ•  ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ•œ ๊ฐœ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด.

๊ฐ์ฒด (๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž)

์ด ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๊ฐ€ ํ˜ธ์ŠคํŒ…๋˜๋Š” ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž์ž…๋‹ˆ๋‹ค.

๊ฐ์ฒด (DataLakeDataProcessRegion)

์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๊ฐ€ ํด๋ผ์ด์–ธํŠธ ์—ฐ๊ฒฐ์„ ๋ผ์šฐํŒ…ํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž ๋ฆฌ์ „์— ๋Œ€ํ•œ ์ •๋ณด์ž…๋‹ˆ๋‹ค.

์ด๋ฆ„
๋ฌธ์ž์—ด

์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

๊ฐ์ฒด (DataLakeStorage)

๊ฐ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ ๊ตฌ์„ฑ ์ •๋ณด ๋ฐ MongoDB Cloud ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ๋งคํ•‘.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cloudProviderConfig": {
    },
  • "dataProcessRegion": {
    },
  • "name": "string",
  • "storage": {
    }
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "cloudProviderConfig": {
    },
  • "dataProcessRegion": {
    },
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "hostnames": [
    ],
  • "name": "string",
  • "privateEndpointHostnames": [
    ],
  • "state": "UNVERIFIED",
  • "storage": {
    }
}

1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ๋ชจ๋“  ์ฟผ๋ฆฌ ์ œํ•œ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ ์ œํ•œ์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

tenantName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์ฟผ๋ฆฌ ์ œํ•œ์„ ๊ฒ€์ƒ‰ํ•˜๋ ค๋Š” ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
[
  • {
    }
]

1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด 1๊ฐœ์˜ ์ฟผ๋ฆฌ ์ œํ•œ ์‚ญ์ œ

ํ•˜๋‚˜์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ ์ œํ•œ ํ•œ ๊ฐœ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

tenantName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์ฟผ๋ฆฌ ์ œํ•œ์ด ์ ์šฉ๋˜๋Š” ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

limitName
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "bytesProcessed.query" "bytesProcessed.daily" "bytesProcessed.weekly" "bytesProcessed.monthly"

์ด ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค ์ œํ•œ์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ œํ•œ ์ด๋ฆ„ ์„ค๋ช… ๊ธฐ๋ณธ๊ฐ’
bytesProcessed.query ๋‹จ์ผ ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ฟผ๋ฆฌ ์ค‘ ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
bytesProcessed.daily ํ˜„์žฌ ๋‚ ์งœ์— ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
bytesProcessed.weekly ํ˜„์žฌ ์ฃผ์— ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
bytesProcessed.monthly ํ˜„์žฌ ์›”์— ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด 1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์ฟผ๋ฆฌ ์ œํ•œ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ์ง€์ •๋œ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ ์ œํ•œ ํ•œ ๊ฐœ์˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

tenantName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์ฟผ๋ฆฌ ์ œํ•œ์ด ์ ์šฉ๋˜๋Š” ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

limitName
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "bytesProcessed.query" "bytesProcessed.daily" "bytesProcessed.weekly" "bytesProcessed.monthly"

์ด ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค ์ œํ•œ์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ œํ•œ ์ด๋ฆ„ ์„ค๋ช… ๊ธฐ๋ณธ๊ฐ’
bytesProcessed.query ๋‹จ์ผ ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ฟผ๋ฆฌ ์ค‘ ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
bytesProcessed.daily ํ˜„์žฌ ๋‚ ์งœ์— ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
bytesProcessed.weekly ํ˜„์žฌ ์ฃผ์— ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
bytesProcessed.monthly ํ˜„์žฌ ์›”์— ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "currentUsage": 0,
  • "defaultLimit": 0,
  • "lastModifiedDate": "2019-08-24T14:15:22Z",
  • "maximumLimit": 0,
  • "name": "string",
  • "overrunPolicy": "BLOCK",
  • "tenantName": "string",
  • "value": 0
}

1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด 1๊ฐœ์˜ ์ฟผ๋ฆฌ ์ œํ•œ ๊ตฌ์„ฑ

ํ•˜๋‚˜์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์— ๋Œ€ํ•ด ํ•˜๋‚˜์˜ ์ฟผ๋ฆฌ ์ œํ•œ์„ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

tenantName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์ฟผ๋ฆฌ ์ œํ•œ์ด ์ ์šฉ๋˜๋Š” ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

limitName
ํ•„์ˆ˜
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "bytesProcessed.query" "bytesProcessed.daily" "bytesProcessed.weekly" "bytesProcessed.monthly"

์ด ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค ์ œํ•œ์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ œํ•œ ์ด๋ฆ„ ์„ค๋ช… ๊ธฐ๋ณธ๊ฐ’
bytesProcessed.query ๋‹จ์ผ ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ฟผ๋ฆฌ ์ค‘ ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
bytesProcessed.daily ํ˜„์žฌ ๋‚ ์งœ์— ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
bytesProcessed.weekly ํ˜„์žฌ ์ฃผ์— ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
bytesProcessed.monthly ํ˜„์žฌ ์›”์— ๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐ”์ดํŠธ ์ˆ˜ ์ œํ•œ N/A
์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

ํ•˜๋‚˜์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฟผ๋ฆฌ ์ œํ•œ์„ ํ•œ ๊ฐœ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

overrunPolicy
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "์ฐจ๋‹จ" "BLOCK_AND_KILL"

๋ฐ์ดํ„ฐ ํŽ˜๋”๋ ˆ์ด์…˜ ํ•œ๋„์—๋งŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ๋Ÿ‰ ํ•œ๋„ ์ดˆ๊ณผ ์‹œ ์ทจํ•ด์•ผ ํ•  ์กฐ์น˜์ž…๋‹ˆ๋‹ค. ํ•œ๋„ ๋ฒ”์œ„๋ฅผ 'QUERY'๋กœ ์„ค์ •ํ•œ ๊ฒฝ์šฐ MongoDB Cloud๋Š” ์‚ฌ์šฉ๋Ÿ‰ ํ•œ๋„๋ฅผ ์ดˆ๊ณผํ•˜๋ฉด ์ฟผ๋ฆฌ๋ฅผ ์ค‘์ง€ํ•˜๋ฏ€๋กœ ์ด๋Ÿฌํ•œ ํ•œ๋„๋ฅผ ๋ฌด์‹œ๋ฉ๋‹ˆ๋‹ค.

value
ํ•„์ˆ˜
integer <int64>

ํ•œ๋„์˜ ํฌ๊ธฐ.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "overrunPolicy": "BLOCK",
  • "value": 0
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "currentUsage": 0,
  • "defaultLimit": 0,
  • "lastModifiedDate": "2019-08-24T14:15:22Z",
  • "maximumLimit": 0,
  • "name": "string",
  • "overrunPolicy": "BLOCK",
  • "tenantName": "string",
  • "value": 0
}

1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค์— ๋Œ€ํ•ด ์ฟผ๋ฆฌ ๋กœ๊ทธ ๋‹ค์šด๋กœ๋“œ

์ง€์ •๋œ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ ๋กœ๊ทธ๋ฅผ ๋‹ค์šด๋กœ๋“œ . ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ์ฝ๊ธฐ/์“ฐ๊ธฐ ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. API json ์‘๋‹ต ์Šคํ‚ค๋งˆ ์‚ฌ์šฉํ•œ ์ง์ ‘ ํ˜ธ์ถœ์„ ์ง€์› ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 'Accept: ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ /vnd.atlas.YYYY-MM-DD+gzip' ํ˜•์‹์˜ ์ˆ˜๋ฝ ํ—ค๋”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ gzip ์‘๋‹ต ์Šคํ‚ค๋งˆ ์š”์ฒญ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

tenantName
ํ•„์ˆ˜
๋ฌธ์ž์—ด

์ฟผ๋ฆฌ ๋กœ๊ทธ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๋ ค๋Š” ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
endDate
integer <int64> 1199145600
์˜ˆ์‹œ: endDate=1636481348

๋‹ค์šด๋กœ๋“œํ•  ๋กœ๊ทธ ๋ฉ”์‹œ์ง€ ๋ฒ”์œ„์˜ ์ข…๋ฃŒ ์ง€์ ์„ ์ง€์ •ํ•˜๋Š” ํƒ€์ž„์Šคํƒฌํ”„. MongoDB Cloud๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„ ์ดํ›„ ๊ฒฝ๊ณผ๋œ ์‹œ๊ฐ„(์ดˆ)์œผ๋กœ ์ด ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

startDate
integer <int64> 1199145600
์˜ˆ์‹œ: startDate=1636466948

๋‹ค์šด๋กœ๋“œํ•  ๋กœ๊ทธ ๋ฉ”์‹œ์ง€ ๋ฒ”์œ„์˜ ์‹œ์ž‘ ์ง€์ ์„ ์ง€์ •ํ•˜๋Š” ํƒ€์ž„์Šคํƒฌํ”„. MongoDB Cloud๋Š” ์œ ๋‹‰์Šค ์‹œ๊ฐ„ ์ดํ›„ ๊ฒฝ๊ณผ๋œ ์‹œ๊ฐ„(์ดˆ)์œผ๋กœ ์ด ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  • "error": 400,
  • "errorCode": "VALIDATION_ERROR",
  • "reason": "Bad Request"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ ์˜จ๋ผ์ธ ์•„์นด์ด๋ธŒ ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ ์˜จ๋ผ์ธ ์•„์นด์ด๋ธŒ์— ๋Œ€ํ•œ ๋ชจ๋“  ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ๋˜๋Š” ํ”„๋กœ์ ํŠธ Charts ๊ด€๋ฆฌ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

includeCount
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: true

์‘๋‹ต์ด ์‘๋‹ต์˜ ์ด ํ•ญ๋ชฉ ์ˆ˜(TotalCount)๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

itemsPerPage
integer [ 1 .. 500 ]
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 100

ํŽ˜์ด์ง€๋‹น ์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ญ๋ชฉ ์ˆ˜์ž…๋‹ˆ๋‹ค.

pageNum
integer >= 1
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: 1

์‘๋‹ต์ด ๋ฐ˜ํ™˜ํ•˜๋Š” ์ „์ฒด ๊ฐ์ฒด์˜ ํ˜„์žฌ ์„ธํŠธ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์— 1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ ์˜จ๋ผ์ธ ์•„์นด์ด๋ธŒ ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ ์ƒ์„ฑ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ ์˜จ๋ผ์ธ ์•„์นด์ด๋ธŒ์— ๋Œ€ํ•œ ํ”„๋ผ์ด๋น— ์—”๋“œํฌ์ธํŠธ ํ•œ ๊ฐœ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. Atlas Data Federation์€ ์—”๋“œํฌ์ธํŠธ ID๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๊ณ  ๊ด€๋ จ ์„ค๋ช…์ด ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์—”๋“œํฌ์ธํŠธ ID ๋ชฉ๋ก์„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Atlas Data Federation์€ ์—”๋“œํฌ์ธํŠธ ID๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๊ณ  ๊ด€๋ จ ์„ค๋ช…์ด ๋ณ€๊ฒฝ๋œ ๊ฒฝ์šฐ ์—”๋“œํฌ์ธํŠธ ID ๋ชฉ๋ก์—์„œ๋งŒ ์„ค๋ช… ๊ฐ’์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. Atlas Data Federation์€ ์—”๋“œํฌ์ธํŠธ ID๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์—”๋“œํฌ์ธํŠธ ID ๋ชฉ๋ก์˜ ์—”๋“œํฌ์ธํŠธ ๋ชฉ๋ก์— ์ƒˆ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ๋ฆฌ์ „์—๋Š” ๊ฐ ๋ฆฌ์ „์˜ ๋‹ค์–‘ํ•œ ์—”๋“œํฌ์ธํŠธ์— ๋Œ€ํ•œ ๊ด€๋ จ ์„œ๋น„์Šค ์ด๋ฆ„์ด ์žˆ์Šต๋‹ˆ๋‹ค.

us-east-1 ์€ com.amazonaws.vpce.us-east-1.vpce-svc-00e311695874992b4์ž…๋‹ˆ๋‹ค.

us-west-1 ์€ com.amazonaws.vpce.us-west-2.vpce-svc-09d86b19e59d1b4bb์ž…๋‹ˆ๋‹ค.

eu-west-1 ์€ com.amazonaws.vpce.eu-west-1.vpce-svc-0824460b72e1a420e์ž…๋‹ˆ๋‹ค.

eu-west-2 ์€ com.amazonaws.vpce.eu-west-2.vpce-svc-052f1840aa0c4f1f9์ž…๋‹ˆ๋‹ค.

eu-central-1 ์€ com.amazonaws.vpce.eu-central-1.vpce-svc-0ac8ce91871138c0d์ž…๋‹ˆ๋‹ค.

sa-east-1 ์€ com.amazonaws.vpce.sa-east-1.vpce-svc-0b56e75e8cdf50044์ž…๋‹ˆ๋‹ค.

ap-southeast-2 ์€ com.amazonaws.vpce.ap-southeast-2.vpce-svc-036f1de74d761706e์ž…๋‹ˆ๋‹ค.

ap-south-1 ์€ com.amazonaws.vpce.ap-south-1.vpce-svc-03eb8a541f96d356d์ž…๋‹ˆ๋‹ค.

์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ๋˜๋Š” ํ”„๋กœ์ ํŠธ Charts ๊ด€๋ฆฌ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ์— ์ถ”๊ฐ€ํ•  ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ ์˜จ๋ผ์ธ ์•„์นด์ด๋ธŒ์— ๋Œ€ํ•œ ํ”„๋ผ์ด๋น— ์—”๋“œํฌ์ธํŠธ์ž…๋‹ˆ๋‹ค.

azureLinkId
๋ฌธ์ž์—ด

Azure ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ ์—ฐ๊ฒฐ์„ ์‹๋ณ„ํ•˜๋Š” ๋งํฌ ID ์ž…๋‹ˆ๋‹ค.

comment
๋ฌธ์ž์—ด

์ด ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ์— ์—ฐ๊ฒฐํ•  ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ฌธ์ž์—ด.

customerEndpointDNSName
๋ฌธ์ž์—ด

๊ณ ๊ฐ์˜ VPC ์—”๋“œํฌ์ธํŠธ DNS ์ด๋ฆ„์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ๊ฐ€๋…ํ˜• ๋ ˆ์ด๋ธ”. ์ •์˜๋œ ๊ฒฝ์šฐ ๋ฆฌ์ „ ๊ฐ’๋„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

customerEndpointIPAddress
๋ฌธ์ž์—ด^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$))...

Azure ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ์— ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” IP ์ฃผ์†Œ ์ž…๋‹ˆ๋‹ค.

endpointId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^vpce-[0-9a-f]{17}$

๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 22์ž ์˜์ˆซ์ž ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€
๋ฌธ์ž์—ด

๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ ์š”์ฒญ ์Šน์ธ ์‹คํŒจ๋ฅผ ์„ค๋ช…ํ•˜๋Š” ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์ž…๋‹ˆ๋‹ค.

provider
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "A"
๊ฐ’: "A"

ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ œ๊ณต์ž๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”. Atlas Data Lake๋Š” Amazon Web Services๋งŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๋ฆฌ์ „
๋ฌธ์ž์—ด

๊ณ ๊ฐ์˜ VPC ์—”๋“œํฌ์ธํŠธ ๋ฆฌ์ „์„ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•œ ์‚ฌ๋žŒ์ด ์ธ๊ฐ„ ๊ฐ€๋…ํ˜• ๋ ˆ์ด๋ธ”. ์ •์˜๋œ ๊ฒฝ์šฐ customerEndpointDNSName ๊ฐ’๋„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ƒํƒœ
๋ฌธ์ž์—ด
์—ด๊ฑฐํ˜•: "PENDING" "OK" "FAILED" "DELETING"

๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ ์—ฐ๊ฒฐ ์š”์ฒญ ์˜ ์ƒํƒœ์ž…๋‹ˆ๋‹ค.

์œ ํ˜•
๋ฌธ์ž์—ด
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: "DATA_LAKE"
๊ฐ’: "DATA_LAKE"

์ด ํ”„๋ผ์ด๋น— ์—”๋“œํฌ์ธํŠธ์™€ ์—ฐ๊ฒฐ๋œ ๋ฆฌ์†Œ์Šค ์œ ํ˜•์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "azureLinkId": "string",
  • "comment": "string",
  • "customerEndpointDNSName": "string",
  • "customerEndpointIPAddress": "string",
  • "endpointId": "vpce-3bf78b0ddee411ba1",
  • "errorMessage": "string",
  • "provider": "AWS",
  • "region": "US_EAST_1",
  • "status": "PENDING",
  • "type": "DATA_LAKE"
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "links": [],
  • "results": [
    ],
  • "totalCount": 0
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ ์˜จ๋ผ์ธ ์•„์นด์ด๋ธŒ ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ ์ œ๊ฑฐ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์—์„œ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ ์˜จ๋ผ์ธ ์•„์นด์ด๋ธŒ์— ๋Œ€ํ•œ ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ ํ•œ ๊ฐœ๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์†Œ์œ ์ž ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

endpointId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^vpce-[0-9a-f]{17}$

์ œ๊ฑฐํ•  ํ”„๋ผ์ด๋น— ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 22์ž ์˜์ˆซ์ž ๋ฌธ์ž์—ด. Atlas Data Federation์€ AWS PrivateLink ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ AWS ํ”„๋ผ์ด๋น— ์—”๋“œํฌ์ธํŠธ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint)",
  • "error": 401,
  • "errorCode": "NOT_ORG_GROUP_CREATOR",
  • "reason": "Unauthorized"
}

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ 1๊ฐœ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋ฐ ์˜จ๋ผ์ธ ์•„์นด์ด๋ธŒ ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ ๋ฐ˜ํ™˜

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ์˜ ์—ฐํ•ฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค ๋˜๋Š” ์˜จ๋ผ์ธ ์•„์นด์ด๋ธŒ์— ๋Œ€ํ•ด ์ง€์ •๋œ ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ๋˜๋Š” ํ”„๋กœ์ ํŠธ Charts ๊ด€๋ฆฌ์ž ์—ญํ• ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

endpointId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^vpce-[0-9a-f]{17}$

๋ฐ˜ํ™˜ํ•  ๋น„๊ณต๊ฐœ ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 22์ž ์˜์ˆซ์ž ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. Atlas Data Federation์€ AWS PrivateLink ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ AWS ํ”„๋ผ์ด๋น— ์—”๋“œํฌ์ธํŠธ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "azureLinkId": "string",
  • "comment": "string",
  • "customerEndpointDNSName": "string",
  • "customerEndpointIPAddress": "string",
  • "endpointId": "vpce-3bf78b0ddee411ba1",
  • "errorMessage": "string",
  • "provider": "AWS",
  • "region": "US_EAST_1",
  • "status": "PENDING",
  • "type": "DATA_LAKE"
}

Data Lake ํŒŒ์ดํ”„๋ผ์ธ

Atlas Data Lake ํŒŒ์ดํ”„๋ผ์ธ ๋ฐ ๊ด€๋ จ ์‹คํ–‰์„ ๋ฐ˜ํ™˜, ํŽธ์ง‘ ๋ฐ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

1๊ฐœ์˜ ํ”„๋กœ์ ํŠธ์—์„œ ๋ชจ๋“  ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ ํŒŒ์ดํ”„๋ผ์ธ ๋ฐ˜ํ™˜ ์‚ฌ์šฉ ์ค‘๋‹จ๋จ

Data Lake ํŒŒ์ดํ”„๋ผ์ธ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
[
  • {
    }
]

๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ ํŒŒ์ดํ”„๋ผ์ธ 1๊ฐœ ๋งŒ๋“ค๊ธฐ ์ค‘๋‹จ๋จ

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

Data Lake ํŒŒ์ดํ”„๋ผ์ธ์„ ํ•œ ๊ฐœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์ฒด (๋ฐ์ดํ„ฐ ์„ธํŠธ ๋ณด์กด ์ •์ฑ…)

์˜ˆ์•ฝ๋œ ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ ํŒŒ์ดํ”„๋ผ์ธ์— ์ ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ ์„ธํŠธ ๋ณด์กด ์ •์ฑ….

์ด๋ฆ„
๋ฌธ์ž์—ด

์ด Data Lake ํŒŒ์ดํ”„๋ผ์ธ์˜ ์ด๋ฆ„.

๊ฐ์ฒด (์ˆ˜์ง‘ ๋Œ€์ƒ)

Data Lake ํŒŒ์ดํ”„๋ผ์ธ์˜ ์ˆ˜์ง‘ ๋Œ€์ƒ.

๊ฐ์ฒด (์ˆ˜์ง‘ ์†Œ์Šค)

Data Lake ํŒŒ์ดํ”„๋ผ์ธ์˜ ์ˆ˜์ง‘ ์†Œ์Šค.

์˜ ๋ฐฐ์—ด ๊ฐ์ฒด (ํ•„๋“œ ๋ณ€ํ™˜)

์ด Data Lake ํŒŒ์ดํ”„๋ผ์ธ์—์„œ ์ œ์™ธํ•  ํ•„๋“œ.

์‘๋‹ต

์ƒ˜ํ”Œ ์š”์ฒญ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "datasetRetentionPolicy": {
    },
  • "name": "string",
  • "sink": { },
  • "source": {
    },
  • "transformations": [
    ]
}

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "createdDate": "2019-08-24T14:15:22Z",
  • "datasetRetentionPolicy": {
    },
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "lastUpdatedDate": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "sink": {
    },
  • "source": {
    },
  • "state": "ACTIVE",
  • "transformations": [
    ]
}

๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ ํŒŒ์ดํ”„๋ผ์ธ 1๊ฐœ ์ œ๊ฑฐ ์ค‘๋‹จ๋จ

Data Lake ํŒŒ์ดํ”„๋ผ์ธ์„ ํ•œ ๊ฐœ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

pipelineName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[^/\\ "$]{1,64}$

Data Lake ํŒŒ์ดํ”„๋ผ์ธ์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/json
{
  • "detail": "(This is just an example, the exception may not be related to this endpoint)",
  • "error": 401,
  • "errorCode": "NOT_ORG_GROUP_CREATOR",
  • "reason": "Unauthorized"
}

1๊ฐœ์˜ ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ ํŒŒ์ดํ”„๋ผ์ธ ๋ฐ˜ํ™˜ ์‚ฌ์šฉ ์ค‘๋‹จ๋จ

์ง€์ •๋œ ํ”„๋กœ์ ํŠธ ๋‚ด Data Lake ํŒŒ์ดํ”„๋ผ์ธ ํ•œ ๊ฐœ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์š”์ฒญํ•˜๋Š” ์„œ๋น„์Šค ๊ณ„์ • ๋˜๋Š” API ํ‚ค์— ํ”„๋กœ์ ํŠธ ์ฝ๊ธฐ ์ „์šฉ ์—ญํ•  ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

pipelineName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[^/\\ "$]{1,64}$

Data Lake ํŒŒ์ดํ”„๋ผ์ธ์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

pretty
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์‘๋‹ต ๋ณธ๋ฌธ์ด ํ”„๋ฆฌํ‹ฐํ”„๋ฆฐํŠธ ํ˜•์‹์ด์–ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.

์‘๋‹ต

์‘๋‹ต ์ƒ˜ํ”Œ

์ฝ˜ํ…์ธ  ์œ ํ˜•
application/vnd.atlas.2023-01-01+json
{
  • "_id": "32b6e34b3d91647abb20e7b8",
  • "createdDate": "2019-08-24T14:15:22Z",
  • "datasetRetentionPolicy": {
    },
  • "groupId": "32b6e34b3d91647abb20e7b8",
  • "lastUpdatedDate": "2019-08-24T14:15:22Z",
  • "name": "string",
  • "sink": {
    },
  • "source": {
    },
  • "state": "ACTIVE",
  • "transformations": [
    ]
}

๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ ํŒŒ์ดํ”„๋ผ์ธ ํ•˜๋‚˜ ์—…๋ฐ์ดํŠธ(๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ)

Data Lake ํŒŒ์ดํ”„๋ผ์ธ์„ ํ•œ ๊ฐœ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

๊ถŒํ•œ ๋ถ€์—ฌ
์„œ๋น„์Šค ๊ณ„์ •DigestAuth
๊ฒฝ๋กœ ๋งค๊ฐœ๋ณ€์ˆ˜
groupId
ํ•„์ˆ˜
๋ฌธ์ž์—ด^([a-f0-9]{24})$
์˜ˆ์‹œ: 32b6e34b3d91647abb20e7b8

ํ”„๋กœ์ ํŠธ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ 24์ž๋ฆฌ 16์ง„์ˆ˜ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ์ธ์ฆ๋œ ์‚ฌ์šฉ์ž๊ฐ€ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์กฐํšŒํ•˜๋ ค๋ฉด /groups ์—”๋“œํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ทธ๋ฃน๊ณผ ํ”„๋กœ์ ํŠธ๋Š” ๋™์˜์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฃน ID๋Š” ํ”„๋กœ์ ํŠธ ID์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๊ทธ๋ฃน์˜ ๊ฒฝ์šฐ, ๊ทธ๋ฃน/ํ”„๋กœ์ ํŠธ ID๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋ฐ ํ•ด๋‹น ์—”๋“œํฌ์ธํŠธ๋Š” ๊ทธ๋ฃน์ด๋ผ๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

pipelineName
ํ•„์ˆ˜
๋ฌธ์ž์—ด^[^/\\ "$]{1,64}$

Data Lake ํŒŒ์ดํ”„๋ผ์ธ์„ ์‹๋ณ„ํ•˜๋Š” ์ธ๊ฐ„ ํŒ๋… ๊ฐ€๋Šฅ ๋ ˆ์ด๋ธ”.

์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜
envelope
๋ถ€์šธ
๊ธฐ๋ณธ๊ฐ’์ž…๋‹ˆ๋‹ค: ๊ฑฐ์ง“

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‘๋‹ต์„ envelope JSON ๊ฐ์ฒด๋กœ ๋ž˜ํ•‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค. ์ผ๋ถ€ API ํด๋ผ์ด์–ธํŠธ๋Š” HTTP ์‘๋‹ต ํ—ค๋” ๋˜๋Š” ์ƒํƒœ ์ฝ”๋“œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์ฟผ๋ฆฌ์—์„œ envelope=true๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์—”๋“œํฌ์ธํŠธ๋Š” ๊ฒฐ๊ณผ ๊ฐ์ฒด๋ฅผ ์—”๋ฒจ๋กœํ”„๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‘๋‹ต ๋ณธ๋ฌธ์— ์ƒํƒœ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์Šคํ‚ค๋งˆ: application/vnd.atlas.2023-01-01+json

Data Lake ํŒŒ์ดํ”„๋ผ์ธ์„ ํ•œ ๊ฐœ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์ฒด (๋ฐ์ดํ„ฐ ์„ธํŠธ ๋ณด์กด ์ •์ฑ…)

์˜ˆ์•ฝ๋œ ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ ํŒŒ์ดํ”„๋ผ์ธ์— ์ ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ ์„ธํŠธ ๋ณด์กด ์ •์ฑ….

์ด๋ฆ„
๋ฌธ์ž์—ด

์ด Data Lake ํŒŒ์ดํ”„๋ผ์ธ์˜ ์ด๋ฆ„.