Linux ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•

์ •๋ณด์„ฑ ํ…์ŠคํŠธ
์„ค์ • ๊ฐ€์ด๋“œ
02-25-2025

๋ชฉ์ฐจ

๋ชฉํ‘œ

์š”๊ตฌ ์‚ฌํ•ญ

์†Œ๊ฐœ

ํ•„์ˆ˜ ์กฐ๊ฑด ๋ฐ ์ฃผ์˜ ์‚ฌํ•ญ

์„ค์ •

์›น์„ ํ†ตํ•ด ๊ธฐ์กด ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๋กœ ์„ค์ •ํ•˜๊ธฐ

๋ช…๋ น์–ด๋ฅผ ํ†ตํ•œ ์ƒˆ๋กœ ์„ค์น˜๋œ ์ปจํŠธ๋กค๋Ÿฌ์˜ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ ์„ค์ •

๋‹จ์ผ ๊ณต์ธ IP๋ฅผ ํ†ตํ•œ NAT ๊ฐ„ ์žฅ์น˜ ์—ฐ๋™ํ•˜๋Š” ์„ค์ • ๋ฐฉ๋ฒ•

๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์˜ ๊ณ ๊ฐ€์šฉ์„ฑ

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ์˜ IP ์กฐ์ • ๋ฐฉ๋ฒ•

๋…ธ๋“œ ์ถ”๊ฐ€ ๋˜๋Š” ์‚ญ์ œ ๋ฐฉ๋ฒ•

ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์—์„œ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๋ฐฉ๋ฒ•

๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๊ฐ€ ์‹คํ–‰๋˜์ง€ ์•Š์„ ๋•Œ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๋…ธ๋“œ ์ƒํƒœ๊ฐ€ Disconnected์ธ ๊ฒฝ์šฐ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

์—…๊ทธ๋ ˆ์ด๋“œ ์ „ ๋†’์€ ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ๋Ÿ‰์œผ๋กœ ์ธํ•œ ๋…ธ๋“œ ์ค‘์ง€ ์‹คํŒจ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

์‹œ์ž‘ ๋ช…๋ น์ด ๋™์‹œ์— ์‹คํ–‰๋˜์ง€ ์•Š์•„ ๋…ธ๋“œ ์‹œ์ž‘์ด ์‹คํŒจํ•œ ๊ฒฝ์šฐ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๋ชฉํ‘œ

์ด ๋ฌธ์„œ์—์„œ๋Š” ์ปจํŠธ๋กค๋Ÿฌ ๋ถ„์‚ฐ ๋…ธ๋“œ์˜ ๊ฐœ๋…์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๋‘ ๊ฐ€์ง€ ๋ฐฐํฌ ๋ฐฉ๋ฒ•์„ ์ƒ์„ธํžˆ ๋‹ค๋ฃน๋‹ˆ๋‹ค. ํ•˜๋‚˜๋Š” ๊ธฐ์กด ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ๋ถ„์‚ฐ ๋…ธ๋“œ๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๊ณ , ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ƒˆ๋กœ ์„ค์น˜ํ•  ๋•Œ ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

์š”๊ตฌ ์‚ฌํ•ญ

์†Œ๊ฐœ

Omada ์†Œํ”„ํŠธ์›จ์–ด ์ปจํŠธ๋กค๋Ÿฌ์˜ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๋Š” ๋„คํŠธ์›Œํฌ ๊ณ ๊ฐ€์šฉ์„ฑ์— ๋Œ€ํ•œ ๊ณ ๊ฐ ์š”๊ตฌ๋ฅผ ์ถฉ์กฑ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ์—์„œ๋Š” ์—ฌ๋Ÿฌ ๋…ธ๋“œ๊ฐ€ ํ˜‘๋ ฅํ•˜์—ฌ Omada ์žฅ์น˜๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ˜‘๋ ฅ ๋ฐฉ์‹์€ ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์น˜ ์ˆ˜์˜ ์ƒํ•œ์„ ํฌ๊ฒŒ ๋Š˜๋ฆด ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์—ฌ๋Ÿฌ ๋…ธ๋“œ์˜ ํ˜‘๋™ ์ž‘๋™์„ ํ†ตํ•ด ์ „์ฒด ๋„คํŠธ์›Œํฌ์˜ ๊ณ ๊ฐ€์šฉ์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ๋…ธ๋“œ ์žฅ์•  ๋ฐœ์ƒ ์‹œ ์ž๋™ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์ด ์‹คํ–‰๋˜์–ด ์žฅ์•  ๋…ธ๋“œ์˜ ์„œ๋น„์Šค๊ฐ€ ๋‹ค๋ฅธ ๋…ธ๋“œ์— ์ธ์ˆ˜๋ฉ๋‹ˆ๋‹ค. ํŽ˜์ผ์˜ค๋ฒ„ ๊ธฐ๊ฐ„ ๋™์•ˆ ์›๋ž˜ ์žฅ์•  ๋…ธ๋“œ๊ฐ€ ๊ด€๋ฆฌํ•˜๋˜ ์‚ฌ์ดํŠธ์˜ ๋””๋ฐ”์ด์Šค๋Š” ์ผ์‹œ์ ์œผ๋กœ ์˜คํ”„๋ผ์ธ ์ƒํƒœ๊ฐ€ ๋˜์—ˆ๋‹ค๊ฐ€ ๋‹ค๋ฅธ ๋…ธ๊ธฐ์— ์ž๋™ ์žฌ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ๋””๋ฐ”์ด์Šค๊ฐ€ "์—ฐ๊ฒฐ๋จ" ์ƒํƒœ๋กœ ๋ณต๊ท€ํ•˜๋ฉด ๋ชจ๋“  ์„œ๋น„์Šค๊ฐ€ ์ •์ƒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด, ์ด๋Š” ์—ฌ๋Ÿฌ ๋…ธ๋“œ(3๊ฐœ ์ด์ƒ์˜ ๋…ธ๋“œ)๊ฐ€ ๊ณต๋™์œผ๋กœ Omada ์žฅ์น˜๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ „ํ˜•์ ์ธ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฐํฌ ํ† ํด๋กœ์ง€์ž…๋‹ˆ๋‹ค.

์ปจํŠธ๋กค๋Ÿฌ์˜ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์˜ ์ผ๋ฐ˜์ ์ธ ํ† ํด๋กœ์ง€์ž…๋‹ˆ๋‹ค.

์‚ฌ์ „ ์ค€๋น„ ์‚ฌํ•ญ ๋ฐ ์ฃผ์˜์‚ฌํ•ญ

๋ถ„์‚ฐ ๋…ธ๋“œ๋ฅผ ๊ณต์‹์ ์œผ๋กœ ์„ค์ • ๋ฐ ๋ฐฐํฌํ•˜๊ธฐ ์ „์— ๋‹ค์Œ ์ œ์•ˆ ์‚ฌํ•ญ๊ณผ ์ฃผ์˜ ์‚ฌํ•ญ์„ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์—๋Š” ์ตœ์†Œ 3๊ฐœ์˜ ๋…ธ๋“œ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์„ค์ •ํ•˜๊ธฐ ์ „์— ์ตœ์†Œ 3๊ฐœ์˜ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๋ฐฐํฌํ•  ์ค€๋น„๋ฅผ ํ•˜์‹ญ์‹œ์˜ค.
  • ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ ์„ค์น˜์—๋Š” Java 17์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. sudo apt install openjdk-17-jre-headless ๋ช…๋ น์–ด๋กœ Java 17์„ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค.
  • ์ปจํŠธ๋กค๋Ÿฌ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์‹œ์Šคํ…œ์˜ ํ•ธ๋“ค ์ˆ˜๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. "/etc/security/limits.conf"๋ฅผ ํŽธ์ง‘ํ•˜๊ณ  ๋‹ค์Œ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•œ ํ›„ ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ณ  ๋กœ๊ทธ์•„์›ƒํ•œ ๋‹ค์Œ ๋‹ค์‹œ ๋กœ๊ทธ์ธํ•˜์—ฌ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜์‹ญ์‹œ์˜ค.

* soft nofile 65535

* hard nofile 65535

ํ•ธ๋“ค ๋ฒˆํ˜ธ ์ˆ˜์ • ๋ฐฉ๋ฒ•์€ Linux ๋ฒ„์ „์— ๋”ฐ๋ผ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Linux ๋ฒ„์ „์— ๋”ฐ๋ผ ํ•ธ๋“ค ๋ฒˆํ˜ธ๋ฅผ ์ˆ˜์ •ํ•˜์‹ญ์‹œ์˜ค.

  • ๊ฐ ๋…ธ๋“œ์˜ ์‹œ์Šคํ…œ ์‹œ๊ฐ„์ด 20์ดˆ ๋ฏธ๋งŒ์˜ ์‹œ๊ฐ„ ์ฐจ์ด๋กœ ์ผ๊ด€๋˜๊ฒŒ ์œ ์ง€๋˜๋„๋ก ํ•˜์‹ญ์‹œ์˜ค.
  • ๋ชจ๋“  ๋…ธ๋“œ์—์„œ JDK ๋ฐ MongoDB ๋ฒ„์ „์ด ์ผ๊ด€๋˜๋„๋ก ํ•˜์‹ญ์‹œ์˜ค.
  • ๋…ธ๋“œ IP๋Š” ๊ณ ์ • IP๋งŒ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. IP/ํฌํŠธ๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์žฌ์ดˆ๊ธฐํ™”๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ์˜ IP ์กฐ์ • ๋ฐฉ๋ฒ• ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
  • ๊ธฐ์กด ํด๋Ÿฌ์Šคํ„ฐ์— ๊ฐ€์ž…ํ•œ ๋…ธ๋“œ๋Š” ์ƒˆ ํด๋Ÿฌ์Šคํ„ฐ์— ๊ฐ€์ž…ํ•˜๊ธฐ ์ „์— ๊ธฐ์กด ์—ฐ๊ฒฐ์—์„œ ๋ถ„๋ฆฌ๋˜๊ณ  ์›๋ž˜ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์ œ๊ฑฐ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ๋™์ผํ•œ ๋„คํŠธ์›Œํฌ ์„ธ๊ทธ๋จผํŠธ ๋‚ด์— ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์ด ๊ถŒ์žฅ๋ฉ๋‹ˆ๋‹ค.

์„ค์ •

์›น์„ ํ†ตํ•ด ๊ธฐ์กด ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๋กœ ์„ค์ •ํ•˜๊ธฐ

1๋‹จ๊ณ„. ๊ธ€๋กœ๋ฒŒ ๋ทฐ > ์„ค์ • > ํด๋Ÿฌ์Šคํ„ฐ ๋กœ ์ด๋™ํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ชจ๋“œ๋ฅผ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

Select and configure the Distributed cluster mode.

2๋‹จ๊ณ„. ๋…ธ๋“œ ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•˜์—ฌ ์ตœ์†Œ 3๊ฐœ์˜ ๋…ธ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ๋…ธ๋“œ์˜ ์ด๋ฆ„(NAME )๊ณผ ๋…ธ๋“œ ๊ด€๋ฆฌ ํ˜ธ์ŠคํŠธ๋ช…/IP(NODE MANAGEMENT HOSTNAME/IP)๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค . ์—ฌ๊ธฐ์„œ ๋…ธ๋“œ ๊ด€๋ฆฌ ํ˜ธ์ŠคํŠธ๋ช…/IP( )์˜ IP ์ฃผ์†Œ์™€ ํ˜ธ์ŠคํŠธ๋ช…์€ ์„œ๋กœ ๋‹ค๋ฅธ ์„œ๋ฒ„์— ๋Œ€์‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์žฅ์น˜ ๊ด€๋ฆฌ ํ˜ธ์ŠคํŠธ๋ช…/IP(DEVICE MANAGEMENT HOSTNAME/IP)์—๋Š” ๊ด€๋ฆฌ ์žฅ์น˜์˜ IP ์ฃผ์†Œ๋ฅผ ์ง€์ •ํ•˜์‹ญ์‹œ์˜ค . ์ด IP ์ฃผ์†Œ๋Š” ์žฅ์น˜์™€์˜ ์—ฐ๊ฒฐ ๋ฐ ํ†ต์‹ ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ์ ์œผ๋กœ NODE MANAGEMENT HOSTNAME/IP๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ ์šฉ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ์ ์šฉ์„ ํด๋ฆญํ•˜๊ธฐ ์ „์— ๊ตฌ์„ฑ๋œ ๋ชจ๋“  ์ปจํŠธ๋กค๋Ÿฌ ๋…ธ๋“œ๊ฐ€ ์‹คํ–‰ ์ƒํƒœ์ธ์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์†์„ฑ ํŒŒ์ผ์ด ๋‹ค๋ฅธ ๋…ธ๋“œ์— ์ž๋™์œผ๋กœ ๋ณต์‚ฌ๋˜์–ด 3๋‹จ๊ณ„๋ฅผ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

alt text: configure the node name and IP/Hostname

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

๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์—์„œ ํŒ์—…๋˜๋Š” ์•Œ๋ฆผ ๋ฉ”์‹œ์ง€์ž…๋‹ˆ๋‹ค.

init ์†์„ฑ ํŒŒ์ผ๊ณผ init ๋ช…๋ น์— ๊ด€ํ•œ ์•Œ๋ฆผ ๋ฉ”์‹œ์ง€์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŒ์—…์ด ํ‘œ์‹œ๋˜๋ฉด ์†์„ฑ ํŒŒ์ผ์ด ๋‹ค๋ฅธ ๋ชจ๋“  ๋…ธ๋“œ์— ์ž๋™์œผ๋กœ ๋ณต์‚ฌ๋˜์—ˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”์‹œ์ง€ ์•ˆ๋‚ด์— ๋”ฐ๋ผ 4๋‹จ๊ณ„๋ฅผ ๋ฐ”๋กœ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŒ์—…์ฐฝ์˜ ๋ชจ์Šต์ž…๋‹ˆ๋‹ค.

3๋‹จ๊ณ„. ๊ฐ ๋…ธ๋“œ์—์„œ ๊ฐ๊ฐ ์†์„ฑ ํŒŒ์ผ(๋‹จ๊ณ„ 2์—์„œ ๋‹ค์šด๋กœ๋“œ)์„ ๊ต์ฒดํ•˜์‹ญ์‹œ์˜ค. ์†์„ฑ ํŒŒ์ผ ๊ฒฝ๋กœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค: /opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties

4๋‹จ๊ณ„. ๊ฐ ๋…ธ๋“œ์—์„œ ์ดˆ๊ธฐํ™” ๋ช…๋ น์–ด๋ฅผ ๊ฐ๊ฐ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. ๋…ธ๋“œ ์ดˆ๊ธฐํ™” ์‹œ ๋ชจ๋“  ๋…ธ๋“œ์˜ ๊ณ„์ •๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋…ธ๋“œ ์ดˆ๊ธฐํ™” ์‹œ ๋จผ์ € ์ฃผ ๋…ธ๋“œ (์ดˆ๊ธฐํ™” ์†์„ฑ์„ ๋‚ด๋ณด๋‚ด๋Š” ๋…ธ๋“œ) ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ดˆ๊ธฐํ™”๊ฐ€ ์‹คํŒจํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

sudo omadacluster -config

/opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties -nodeName init

๋ช…๋ น์ฐฝ์˜ ๋ชจ์Šต์ž…๋‹ˆ๋‹ค.

  • Primary ๋…ธ๋“œ ์ดˆ๊ธฐํ™” ์ค‘ ํ„ฐ๋ฏธ๋„ ์ถœ๋ ฅ ์˜ˆ์‹œ.

Primary ๋…ธ๋“œ ์ดˆ๊ธฐํ™” ์ค‘ ํ„ฐ๋ฏธ๋„ ์ถœ๋ ฅ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

  • Non-Primary ๋…ธ๋“œ ์ดˆ๊ธฐํ™” ์ค‘ ํ„ฐ๋ฏธ๋„ ์ถœ๋ ฅ ์˜ˆ์‹œ

Non-Primary ๋…ธ๋“œ ์ดˆ๊ธฐํ™” ์ค‘ ํ„ฐ๋ฏธ๋„ ์ถœ๋ ฅ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.
5๋‹จ๊ณ„. ๋ฐฐํฌ๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ ์™„๋ฃŒ๋˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜์—ฌ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰ ์ค‘์ผ ๋•Œ, ์–ด๋–ค ๋…ธ๋“œ๋ฅผ ํ†ตํ•ด์„œ๋„ ์ปจํŠธ๋กค๋Ÿฌ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์˜ ์„ค์น˜๋ฅผ ์™„๋ฃŒํ•œ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

๋ช…๋ น์–ด๋ฅผ ํ†ตํ•œ ์ƒˆ๋กœ ์„ค์น˜๋œ ์ปจํŠธ๋กค๋Ÿฌ์˜๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ๋ชจ๋“œ ์„ค์ •

1๋‹จ๊ณ„. ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ ์„ค์น˜์„ ํƒ (์„ค์น˜ ํ›„ ์ž๋™์œผ๋กœ ์‹œ์ž‘๋˜์ง€ ์•Š์Œ).

  • deb ํŒŒ์ผ ์‚ฌ์šฉ ์„ค์น˜

echo "omadac omadac/init-cluster-mode boolean true" | sudo debconf-set-selections

sudo dpkg -i /path/to/controller_installation_package

deb ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘์— ์ปจํŠธ๋กค๋Ÿฌ ์ž๋™ ์‹œ์ž‘์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๋ช…๋ น์ž…๋‹ˆ๋‹ค

  • tar.gz๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜

์••์ถ• ํ•ด์ œ ํ›„ ์…ธ ์„ค์น˜ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ†ตํ•ด ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๋ฅผ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค. ./install.sh init - cluster – mode๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์„ค์น˜ ํ›„ ์‹œ์Šคํ…œ์ด ์ž๋™์œผ๋กœ ์‹œ์ž‘๋˜์ง€ ์•Š์œผ๋ฉฐ ํด๋Ÿฌ์Šคํ„ฐ ์„ค์ • ๊ด€๋ จ ์•ˆ๋‚ด ์ •๋ณด๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

tar.gz ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘์— ์ปจํŠธ๋กค๋Ÿฌ์˜ ์ž๋™ ์‹œ์ž‘์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

2๋‹จ๊ณ„. ์ปจํŠธ๋กค๋Ÿฌ ์„ค์น˜๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ํ”„๋กฌํ”„ํŠธ์— ๋”ฐ๋ผ ์†์„ฑ ํŒŒ์ผ์„ ํŽธ์ง‘ํ•ฉ๋‹ˆ๋‹ค.

์„ค์ •๋˜์ง€ ์•Š๋Š” ์ปจํŠธ๋กค๋Ÿฌ์˜ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๋ฅผ ์„ค์น˜ํ•˜๋Š” ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

๊ฐ ๋…ธ๋“œ์˜ ์†์„ฑ ํŒŒ์ผ /opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค .

์†์„ฑ ํŒŒ์ผ์˜ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

3๋‹จ๊ณ„ ๊ฐ ๋…ธ๋“œ์—์„œ ์ดˆ๊ธฐํ™” ๋ช…๋ น์–ด๋ฅผ ๊ฐ๊ฐ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

sudo omadacluster -config /opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties -node <๋…ธ๋“œ๋ช…> init

  • Primary ๋…ธ๋“œ ์ดˆ๊ธฐํ™” ์ค‘ ํ„ฐ๋ฏธ๋„ ์ถœ๋ ฅ ์˜ˆ์‹œ

Primary ๋…ธ๋“œ ์„ค์น˜ ์ค‘ ํ„ฐ๋ฏธ๋„ ์ถœ๋ ฅ์˜ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

Non-Primary ๋…ธ๋“œ ์ดˆ๊ธฐํ™” ์ค‘ ํ„ฐ๋ฏธ๋„ ์ถœ๋ ฅ ์˜ˆ์‹œ

Non-Primary ๋…ธ๋“œ ์ดˆ๊ธฐํ™” ์ค‘ ํ„ฐ๋ฏธ๋„ ์ถœ๋ ฅ์˜ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

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

๊ทธ๋Ÿฐ ๋‹ค์Œ ํด๋Ÿฌ์Šคํ„ฐ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜์—ฌ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰ ์ค‘์ผ ๋•Œ, ์–ด๋–ค ๋…ธ๋“œ๋ฅผ ํ†ตํ•ด์„œ๋„ ์ปจํŠธ๋กค๋Ÿฌ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์˜ ์„ค์น˜๋ฅผ ๋งˆ์นœ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

 

๋‹จ์ผ ๊ณต์ธ IP ํฌ๋กœ์Šค NAT ์žฅ์น˜ ์—ฐ๋™ํ•˜๋Š” ๋ฐฉ๋ฒ• ์„ค์ •

๋‹จ์ผ ๊ณต์ธ IP ํฌ๋กœ์Šค-NAT ๊ธฐ๋Šฅ์€ Linux ๋ถ„์‚ฐ ๋ชจ๋“œ์—์„œ ๋ ˆ์ด์–ด 3 ๋„คํŠธ์›Œํฌ ๊ฐ„์— ์žฅ์น˜๋ฅผ ์—ฐ๋™ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๋…ธ๋“œ๊ฐ€ ๋ผ์šฐํ„ฐ WAN ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ๋™์ผํ•œ ๊ณต์ธ IP ์ฃผ์†Œ๋ฅผ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. ์„œ๋กœ ๋‹ค๋ฅธ ํฌํŠธ๊ฐ€ NAT๋ฅผ ํ†ตํ•ด ๊ฐ ํ•ด๋‹น ๋…ธ๋“œ์— ๋งคํ•‘๋˜์–ด ๋ชจ๋“  ๋…ธ๋“œ๊ฐ€ WAN ์ธก์—์„œ ํ•˜๋‚˜์˜ ๊ณต์ธ IP๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

์„ค์ • ๋‹จ๊ณ„

1๋‹จ๊ณ„. ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ์„ค์ •์„ ์™„๋ฃŒํ•œ ํ›„, ๊ฐ ๋…ธ๋“œ์˜ ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ์žฅ์น˜ ๊ด€๋ฆฌ ํ˜ธ์ŠคํŠธ๋ช…/IP, ์žฅ์น˜ ๊ด€๋ฆฌ ํฌํŠธ, ์žฅ์น˜ ๊ฒ€์ƒ‰ ํฌํŠธ ๋ฐ ์žฅ์น˜ ๋ชจ๋‹ˆํ„ฐ ํฌํŠธ๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ๋…ธ๋“œ์—์„œ ์žฅ์น˜ ๊ด€๋ฆฌ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„/IP๊ฐ€ ๋™์ผํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(๋ชจ๋‘ ๋ผ์šฐํ„ฐ WAN ์ธก ๊ณต์ธ IP๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•จ). ๊ตฌ์„ฑ๋œ ํฌํŠธ๋Š” ์ด๋ฏธ ์‚ฌ์šฉ ์ค‘์ธ ํฌํŠธ์™€ ์ถฉ๋Œํ•˜๊ฑฐ๋‚˜ ์ค‘๋ณต๋˜์–ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค.

์™„๋ฃŒ ํ›„ ์ ์šฉ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ : ๊ธฐํƒ€ ์ปจํŠธ๋กค๋Ÿฌ ๊ธฐ๋Šฅ์— ์‚ฌ์šฉํ•˜๋Š” ํฌํŠธ๋„ ์ƒ๊ธฐ ์š”๊ตฌ์‚ฌํ•ญ์— ๋”ฐ๋ผ ๊ฐ ๋…ธ๋“œ์— /opt/tplink/EAPController/properties/omada.properties ํŒŒ์ผ๋กœ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์—…๊ทธ๋ ˆ์ด๋“œ ํฌํŠธ ๊ฐ™์€ ์ผ๋ถ€ ํฌํŠธ๋Š” ๊ฐ ๋…ธ๋“œ์˜ ์›น ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์žฅ์น˜ ๊ด€๋ฆฌ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„/IP๊ฐ€ ๋™์ผํ•˜๋„๋ก ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

 

์žฅ์น˜ ๊ด€๋ฆฌ, ํƒ์ƒ‰, ๋ชจ๋‹ˆํ„ฐ๋ง ํฌํŠธ๊ฐ€ ๋™์ผํ•˜๋„๋ก ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

 

2๋‹จ๊ณ„. ํŒ์—… ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜ํƒ€๋‚˜๋ฉด ํ™•์ธ์„ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค.

์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ƒˆ IP ์ฃผ์†Œ๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒฝ๊ณ  ์•ˆ๋‚ด์ž…๋‹ˆ๋‹ค.

 

3๋‹จ๊ณ„. ๋ชจ๋“  ๋…ธ๋“œ์— "์žฌ๋ถ€ํŒ… ํ•„์š”"๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. tpeap restart ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ๋™์‹œ์— ์žฌ๋ถ€ํŒ…ํ•˜์‹ญ์‹œ์˜ค.

์žฌ๋ถ€ํŒ… ํ•„์š” ์ƒํƒœ๋ฅผ ๋ณด์ด๋Š” ์žฅ์น˜์˜ ์ƒํƒœ์ž…๋‹ˆ๋‹ค.

 

4๋‹จ๊ณ„. ์žฌ๋ถ€ํŒ… ํ›„ ๋ชจ๋“  ๋…ธ๋“œ์— ์—ฐ๊ฒฐ๋จ์ด ํ‘œ์‹œ๋˜๋ฉด ์ปจํŠธ๋กค๋Ÿฌ ์ธก ์„ค์ •์ด ์™„๋ฃŒ๋œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์—ฐ๊ฒฐ๋จ ์ƒํƒœ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์žฅ์น˜์˜ ์ƒํƒœ์ž…๋‹ˆ๋‹ค.

5๋‹จ๊ณ„. ๋ผ์šฐํ„ฐ์˜ NAT ํŽ˜์ด์ง€์—์„œ WAN ์ธก IP์™€ ํฌํŠธ์—์„œ LAN ์ธก IP์™€ ํฌํŠธ๋กœ์˜ NAT ๋งคํ•‘์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. infoUrl ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ณต์šฉ ๋„คํŠธ์›Œํฌ์— ์œ„์น˜ํ•œ ์žฅ์น˜์— ์ง€์ •๋œ ์žฅ์น˜ ๊ด€๋ฆฌ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„/IP ๋ฐ ์žฅ์น˜ ๊ฒ€์ƒ‰ ํฌํŠธ๋ฅผ ์ „๋‹ฌํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์—ฐ๋™ ๋ฐ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  NAT ๋งคํ•‘์ด ์™„๋ฃŒ๋˜๊ณ  ์ •ํ™•ํ•œ์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋„๋‹ฌ ๋ถˆ๊ฐ€๋Šฅํ•œ ํŒจํ‚ท์œผ๋กœ ์ธํ•ด ์žฅ์น˜ ์—ฐ๋™ ๋ฐ ๊ด€๋ฆฌ๊ฐ€ ์ฐจ๋‹จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์˜ ๊ณ ๊ฐ€์šฉ์„ฑ

๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์˜ ๊ณ ๊ฐ€์šฉ์„ฑ ํŠน์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ˜ผํ•ฉ ๋…ธ๋“œ ์ด ์ˆ˜๊ฐ€ 3~4๊ฐœ์ผ ๊ฒฝ์šฐ ํ˜ผํ•ฉ ๋ฉค๋ฒ„ 1๊ฐœ๊ฐ€ ์—ฐ๊ฒฐ ํ•ด์ œ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ˜ผํ•ฉ ๋…ธ๋“œ ์ด ์ˆ˜๊ฐ€ 5~6๊ฐœ์ผ ๊ฒฝ์šฐ ํ˜ผํ•ฉ ๋ฉค๋ฒ„ 2๊ฐœ๊ฐ€ ์—ฐ๊ฒฐ ํ•ด์ œ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ˜ผํ•ฉ ๋…ธ๋“œ ์ด ์ˆ˜๊ฐ€ 7๊ฐœ์ผ ๊ฒฝ์šฐ ํ˜ผํ•ฉ ๋ฉค๋ฒ„ 3๊ฐœ๊ฐ€ ์—ฐ๊ฒฐ ํ•ด์ œ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ๋‚ด๊ฒฐํ•จ์„ฑ ํ˜ผํ•ฉ ๋…ธ๋“œ ์ˆ˜๋Š” ์ตœ๋Œ€ ํ˜ผํ•ฉ ๋…ธ๋“œ ์ˆ˜์˜ ์ ˆ๋ฐ˜ ๋ฏธ๋งŒ์ž…๋‹ˆ๋‹ค.

ํ˜ผํ•ฉ ๋…ธ๋“œ ์ˆ˜

ํ—ˆ์šฉ๋œ Disconnected ํ˜ผํ•ฉ ๋…ธ๋“œ ์ˆ˜

3

1

4

1

5

2

6

2

์—ฐ๊ฒฐ์ด ๋Š๊ธด ๋…ธ๋“œ ์ˆ˜๊ฐ€ ํ—ˆ์šฉ ํ•œ๋„๋ฅผ ์ดˆ๊ณผํ•˜๋ฉด ์ „์ฒด ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์˜ค์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋ณต๊ตฌํ•˜๋ ค๋ฉด ์—ฐ๊ฒฐ์ด ๋Š๊ธด ๋…ธ๋“œ๋ฅผ ๋‹ค์‹œ ์˜จ๋ผ์ธ ์ƒํƒœ๋กœ ์ „ํ™˜ํ•˜์—ฌ ๋‚ด๊ฒฐํ•จ์„ฑ ๋…ธ๋“œ ์ˆ˜๊ฐ€ ํ˜ผํ•ฉ ๋…ธ๋“œ ์ตœ๋Œ€ ์ˆ˜์˜ ์ ˆ๋ฐ˜ ๋ฏธ๋งŒ์ด ๋˜๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์žฌ์‹œ์ž‘ํ•ด์•ผ ํ•  ๊ฒฝ์šฐ, ๋ชจ๋“  ๋…ธ๋“œ๊ฐ€ ์ค‘์ง€๋œ ํ›„ ์ „์ฒด ๋…ธ๋“œ ์ˆ˜์˜ ์ ˆ๋ฐ˜ ์ด์ƒ์ด ๋™์‹œ์— ์‹œ์ž‘๋˜๋„๋ก ํ•˜์‹ญ์‹œ์˜ค.

FAQ

ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ์˜ IP ์กฐ์ • ๋ฐฉ๋ฒ•

์ปจํŠธ๋กค๋Ÿฌ์˜ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๊ฐ€ ์‹คํ–‰ ์ค‘์ธ ๊ฒฝ์šฐ ๋…ธ๋“œ์˜ IP๋ฅผ ์ˆ˜์ •ํ•˜๋ ค๋ฉด ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅด์‹ญ์‹œ์˜ค:

(1) ์ˆ˜์ • ๋Œ€์ƒ ๋…ธ๋“œ ์ƒํƒœ๊ฐ€ ์—ฐ๊ฒฐ๋œ ๊ฒฝ์šฐ:

a. ์ง€์ •๋œ ๋…ธ๋“œ์˜ ๋„คํŠธ์›Œํฌ ์นด๋“œ IP๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ ๊ธฐ์กด IP์™€ ์ƒˆ IP๋ฅผ ๋™์‹œ์— ๋ฐ”์ธ๋”ฉํ•ฉ๋‹ˆ๋‹ค.

b. ์ž„์˜ ๋…ธ๋“œ์˜ ํด๋Ÿฌ์Šคํ„ฐ ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ํ•ด๋‹น ๋…ธ๋“œ์˜ IP๋ฅผ ์ƒˆ IP๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

c. ์ง€์ •๋œ ๋…ธ๋“œ์—์„œ sudo tpeap stop ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ๋…ธ๋“œ๋ฅผ ์ค‘์ง€ํ•œ ํ›„, ๋„คํŠธ์›Œํฌ ์นด๋“œ๋ฅผ ์ƒˆ IP๋งŒ ๋ฐ”์ธ๋”ฉ๋˜๋„๋ก ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

d. sudo tpeap start ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์—ฌ ๋…ธ๋“œ๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

(2) ์ˆ˜์ • ๋Œ€์ƒ ๋…ธ๋“œ์˜ ์ƒํƒœ๊ฐ€ Disconnected์ธ ๊ฒฝ์šฐ:

a. ์ง€์ •๋œ ๋…ธ๋“œ์˜ ๋„คํŠธ์›Œํฌ ์นด๋“œ IP๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ ๊ธฐ์กด IP์™€ ์ƒˆ IP๋ฅผ ๋ชจ๋‘ ๋ฐ”์ธ๋”ฉํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

b. ์˜จ๋ผ์ธ ์ƒํƒœ์ธ ์ž„์˜์˜ ๋…ธ๋“œ์˜ ํด๋Ÿฌ์Šคํ„ฐ ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ์ง€์ •๋œ ๋…ธ๋“œ์˜ IP๋ฅผ ์ƒˆ IP๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  ์ƒˆ ์†์„ฑ ํŒŒ์ผ์„ ๋‚ด๋ณด๋ƒ…๋‹ˆ๋‹ค.

c. ์†์„ฑ ํŒŒ์ผ์„ ์ˆ˜์ • ๋Œ€์ƒ ๋…ธ๋“œ๋กœ ์ „์†กํ•ฉ๋‹ˆ๋‹ค.

d. ์ง€์ •๋œ ๋…ธ๋“œ์—์„œ ์ด ์†์„ฑ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ดˆ๊ธฐํ™” ๋ช…๋ น์–ด sudo omadacluster -config <propertiesPath> -node <nodeName> init ๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๋…ธ๋“œ ์ถ”๊ฐ€ ๋˜๋Š” ์‚ญ์ œ ๋ฐฉ๋ฒ•

(1) ๋…ธ๋“œ ์ถ”๊ฐ€

1๋‹จ๊ณ„. ์ƒˆ ๋…ธ๋“œ์˜ ํ•ธ๋“ค ์ˆ˜๋ฅผ ์กฐ์ •ํ•˜๊ณ  ๋™์ผํ•œ ๋ฒ„์ „์˜ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

2๋‹จ๊ณ„. ๊ธฐ์กด ๋…ธ๋“œ์—์„œ ์ƒˆ ๋…ธ๋“œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ธ€๋กœ๋ฒŒ ๋ทฐ > ์„ค์ • > ํด๋Ÿฌ์Šคํ„ฐ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ์ด๋™ํ•˜์—ฌ ๋…ธ๋“œ ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ ๋…ธ๋“œ์˜ ์ด๋ฆ„๊ณผ IP/ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ์ž…๋ ฅํ•œ ํ›„ ์ ์šฉ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

๋…ธ๋“œ ์ถ”๊ฐ€์˜ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

ํ™•์ธ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์ƒˆ ๋…ธ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ํ‘œ์‹œ๋˜๋Š” ์•ˆ๋‚ด ๋ฉ”์‹œ์ง€์ž…๋‹ˆ๋‹ค.

3๋‹จ๊ณ„. ์ดˆ๊ธฐํ™” ์†์„ฑ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ํด๋ฆญํ•œ ํ›„ ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์ƒˆ๋กœ ์ถ”๊ฐ€๋œ ๋…ธ๋“œ์˜ ์ปจํŠธ๋กค๋Ÿฌ ๊ฒฝ๋กœ์ธ /opt/tplink/EAPController/data/cluster์— ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์ƒˆ ๋…ธ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ํ‘œ์‹œ๋˜๋Š” ๋ฉ”์‹œ์ง€์ž…๋‹ˆ๋‹ค.

4๋‹จ๊ณ„. ์ƒˆ ๋…ธ๋“œ์˜ ํ„ฐ๋ฏธ๋„์„ ์—ด๊ณ  ์ดˆ๊ธฐํ™” ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

sudo omadacluster -config

/opt/tplink/EAPController/data/cluster/omada_distributed_internal_mongo_cluster.properties -nodeName init

์ƒˆ ๋…ธ๋“œ ์ถ”๊ฐ€ ์ค‘์— ํ‘œ์‹œ๋˜๋Š” ํ„ฐ๋ฏธ๋„ ์ด๋ฏธ์ง€์˜ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

5๋‹จ๊ณ„. ๋…ธ๋“œ ์ถ”๊ฐ€๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ ์™„๋ฃŒ๋˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜์—ฌ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰ ์ค‘์ผ ๋•Œ, ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ํ†ตํ•ด ์ปจํŠธ๋กค๋Ÿฌ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ ๋…ธ๋“œ ์ถ”๊ฐ€๋ฅผ ๋งˆ์นœ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

(2) ๋…ธ๋“œ ์‚ญ์ œ

1๋‹จ๊ณ„. ์‚ญ์ œํ•  ๋…ธ๋“œ๋กœ ์ด๋™ํ•˜์—ฌ ํ•ด๋‹น ๋…ธ๋“œ์˜ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ค‘์ง€ํ•ฉ๋‹ˆ๋‹ค.

2๋‹จ๊ณ„. ์ž„์˜์˜ ๋…ธ๋“œ์—์„œ ๋…ธ๋“œ ์ƒํƒœ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

๋…ธ๋“œ๋ณ„ ์ƒํƒœ๋ฅผ ํ™•์ธํ•˜๋Š” ์ด๋ฏธ์ง€์ž…๋‹ˆ๋‹ค.3๋‹จ๊ณ„. ๋…ธ๋“œ์— ์‚ญ์ œ ์•„์ด์ฝ˜์ด ํ‘œ์‹œ๋˜๋ฉด ์‚ญ์ œ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•œ ํ›„ ์ ์šฉ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

๋…ธ๋“œ๋ฅผ ์‚ญ์ œํ•˜๋Š” ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

4๋‹จ๊ณ„. ๋ชจ๋“  ๋…ธ๋“œ์—์„œ ์‚ญ์ œ ์ค‘์ธ ๋…ธ๋“œ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋…ธ๋“œ ์‚ญ์ œ๋ฅผ ๋งˆ์นœ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ์—์„œ ์ปจํŠธ๋กค๋Ÿฌ ์—…๊ทธ๋ ˆ์ด๋“œ ๋ฐฉ๋ฒ•

ํ˜„์žฌ Omada ํด๋Ÿฌ์Šคํ„ฐ๋Š” ์˜คํ”„๋ผ์ธ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. Omada ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๊ธฐ ์ „์— ๋ชจ๋“  ๋…ธ๋“œ์—์„œ ์‹คํ–‰ ์ค‘์ธ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ค‘์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋„คํŠธ์›Œํฌ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ์ตœ์†Œํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ€๋Šฅํ•œ ํ•œ ์‚ฌ์šฉ๋Ÿ‰์ด ์ ์€ ์‹œ๊ฐ„์— ํด๋Ÿฌ์Šคํ„ฐ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์‹œ๋„ํ•˜์‹ญ์‹œ์˜ค.

์—…๊ทธ๋ ˆ์ด๋“œ ํ›„ ์žฅ์น˜ ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง€๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋“  ์žฅ์น˜ ํŽŒ์›จ์–ด๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ ๋ฐฐํฌ๋ฅผ ์ง€์›ํ•˜๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

๊ตฌ์ฒด์ ์ธ ์—…๊ทธ๋ ˆ์ด๋“œ ๋‹จ๊ณ„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  1. ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. ๋ชจ๋“  ๋…ธ๋“œ์—์„œ sudo tpeap stop ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ค‘์ง€ํ•˜์‹ญ์‹œ์˜ค.
  2. ๋ชจ๋“  ๋…ธ๋“œ์— ์ตœ์‹  ๋ฒ„์ „ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค. ์ด์ „ ๋ฒ„์ „์˜ ์„ค์น˜๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ deb ๋˜๋Š” tar.gz๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜ํ• ์ง€ ์„ ํƒํ•˜์‹ญ์‹œ์˜ค.
  3. ๋จผ์ € ๋ชจ๋“  ๋…ธ๋“œ๊ฐ€ ์ƒˆ ๋ฒ„์ „์œผ๋กœ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์—…๊ทธ๋ ˆ์ด๋“œ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ชจ๋“  ๋…ธ๋“œ์˜ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๋™์‹œ์— ์‹คํ–‰ํ•˜๊ณ  ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. sudo tpeap start๋ฅผ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.
  4. ๋ชจ๋“  ์ปจํŠธ๋กค๋Ÿฌ์— "Started successfully"๊ฐ€ ํ‘œ์‹œ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ์‹ญ์‹œ์˜ค. ์ดํ›„ ํด๋Ÿฌ์Šคํ„ฐ์— ์ •์ƒ์ ์œผ๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋…ธ๋“œ ์—…๊ทธ๋ ˆ์ด๋“œ ๊ณผ์ •์„ ์˜ˆ์‹œ๋กœ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค:

๋ช…๋ น ํŽ˜์ด์ง€์˜ ์ด๋ฏธ์ง€์ž…๋‹ˆ๋‹ค.

๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๊ฐ€ ์‹คํ–‰๋˜์ง€ ์•Š์„ ๋•Œ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

์—ฐ๊ฒฐ ํ•ด์ œ ์ƒํƒœ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์ด๋ฏธ์ง€์ž…๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๋ฅผ ์‹œ์ž‘ํ•˜์ง€ ๋ชปํ•œ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

  • ํ•ธ๋“ค ๋ฒˆํ˜ธ ๋ณ€๊ฒฝ์ด ์„ฑ๊ณต์ ์œผ๋กœ ์ด๋ฃจ์–ด์กŒ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. "ulimit -a" ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ธ๋“ค ๋ฒˆํ˜ธ๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ ๋ณ€๊ฒฝ๋˜์—ˆ๋Š”์ง€ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐ ๋…ธ๋“œ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜(์ปจํŠธ๋กค๋Ÿฌ ๋ฒ„์ „, MongoDB ๋ฒ„์ „, ์‚ฌ์šฉ๋œ Java ๋ฒ„์ „ ํฌํ•จ)๊ฐ€ ์ผ๊ด€๋˜๊ฒŒ ์„ค์ •๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
  • ๋…ธ๋“œ ์—ฐ๊ฒฐ์ด ์žฅ์‹œ๊ฐ„ ์‹คํŒจํ•  ๊ฒฝ์šฐ, ์›น์„ ํ†ตํ•ด ๊ธฐ์กด ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ชจ๋“œ๋กœ ์„ค์ •ํ•  ๋•Œ ์ฃผ ๋…ธ๋“œ ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ ๋…ธ๋“œ๋ฅผ ์ดˆ๊ธฐํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋…ธ๋“œ ์ƒํƒœ๊ฐ€ Disconnected์ธ ๊ฒฝ์šฐ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๋…ธ๋“œ ์ค‘ ์ผ๋ถ€์˜ ์ƒํƒœ๊ฐ€ ์—ฐ๊ฒฐ ํ•ด์ œ์ธ ๊ฒฝ์šฐ์˜ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

๊ฐ ๋…ธ๋“œ์˜ ๊ธ€๋กœ๋ฒŒ ๋ทฐ > ์„ค์ • > ์‹œ์Šคํ…œ ์„ค์ • > ํ˜„์žฌ ๋…ธ๋“œ ์‹œ์Šคํ…œ ์‹œ๊ฐ„์˜ ์‹œ๊ฐ„ ์ฐจ์ด๊ฐ€ 20์ดˆ ์ด๋‚ด์ธ์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์—…๊ทธ๋ ˆ์ด๋“œ ์ „ ๋†’์€ ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ๋Ÿ‰์œผ๋กœ ์ธํ•œ ๋…ธ๋“œ ์ •์ง€ ์‹คํŒจ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๋ฌธ์ œ ํ•ด๊ฒฐ ๋ช…๋ น์˜ ์ด๋ฏธ์ง€์ž…๋‹ˆ๋‹ค.

  1. ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. ps -ef | grep ‘java’ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ์‹œ์Šคํ…œ ๋‚ด ํ™œ์„ฑ Java ํ”„๋กœ์„ธ์Šค๋ฅผ ์กฐํšŒํ•˜์‹ญ์‹œ์˜ค.
  2. ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. sudo kill -9 <PID> ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ๋น„์ •์ƒ ๋…ธ๋“œ์˜ Java ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ•์ œ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค(<PID>๋Š” ์‹ค์ œ ํ”„๋กœ์„ธ์Šค ID๋กœ ๋Œ€์ฒด).
  3. ์ •์ƒ์ ์ธ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ผ ์ตœ์‹  ๋ฒ„์ „์˜ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์„ค์น˜ํ•œ ํ›„ ์—…๊ทธ๋ ˆ์ด๋“œ๋ฅผ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค.

์‹œ์ž‘ ๋ช…๋ น์ด ๋™์‹œ์— ์‹คํ–‰๋˜์ง€ ์•Š์•„ ๋…ธ๋“œ ์‹œ์ž‘์ด ์‹คํŒจํ•œ ๊ฒฝ์šฐ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. sudo tpeap start ๋ช…๋ น์–ด๋ฅผ ๋‹ค์‹œ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.

๊ฐ ๊ธฐ๋Šฅ ๋ฐ ์„ค์ •์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋‹ค์šด๋กœ๋“œ ์„ผํ„ฐ์—์„œ ํ•ด๋‹น ์ œํ’ˆ ์„ค๋ช…์„œ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

์ด ๋ฌธ์„œ์—๋Š” ๊ธฐ๊ณ„ ๋ฒˆ์—ญ์ด ์ ์šฉ๋˜์—ˆ์œผ๋ฉฐ, ์ •ํ™•ํ•œ ๋‚ด์šฉ์„ ํ™•์ธํ•˜๋ ค๋ฉด ์›๋ณธ ์˜๋ฌธ ๋ฌธ์„œ๋ฅผ ์ฐธ๊ณ ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์ด ๋ฌธ์„œ๋ฅผ ํ‰๊ฐ€ํ•ด ์ฃผ์„ธ์š”