CB Spider Architecture - cloud-barista/cb-spider GitHub Wiki

CB-Spider ๊ตฌ์กฐ

  ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ์—ฐ๋™ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๊ทธ๋ฆผ 3์—์„œ ๋ณด๋Š” ๋ฐ”์™€ ๊ฐ™์ด ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋ธ”๋ก, ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ์—ฐ๋™ ์ •๋ณด ํ†ตํ•ฉ ๊ด€๋ฆฌ ๋ธ”๋ก, ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ณตํ†ต ์ œ์–ด ๊ด€๋ฆฌ ๋ธ”๋ก ๋ฐ ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ์—ฐ๋™ ์ด๋ ฅ ์ •๋ณด ๊ด€๋ฆฌ ๋ธ”๋ก์œผ๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, ๋ธ”๋ก๋ณ„ ์ œ๊ณต ๊ธฐ๋Šฅ ๋ฐ ์—ฐ๊ด€ ๊ด€๊ณ„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋ธ”๋ก ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋ธ”๋ก์€ ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ์—ฐ๋™ ํ”„๋ ˆ์ž„์›Œํฌ ์‚ฌ์šฉ์ž๊ฐ€ ํ”„๋ ˆ์ž„์›Œํฌ์˜ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์‘์šฉ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์‚ฌ์šฉ์ž API(Application Programming Interface)์™€ ํ„ฐ๋ฏธ๋„ ํ™˜๊ฒฝ์—์„œ ํ™œ์šฉ์ด ๊ฐ€๋Šฅํ•œ CLI(Command Line Interface) ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋ธ”๋ก์€ ์‚ฌ์šฉ์ž์˜ ์š”์ฒญ์— ๋”ฐ๋ผ ์—ฐ๋™ ์ •๋ณด ํ†ตํ•ฉ ๊ด€๋ฆฌ ๋ธ”๋ก ๋˜๋Š” ๊ณตํ†ต ์ œ์–ด ๊ด€๋ฆฌ ๋ธ”๋ก์˜ ๋‚ด๋ถ€ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ˜ธ์ถœํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „๋‹ฌํ•œ๋‹ค.

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

    โ€ป ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ์—ฐ๋™ ์ •๋ณด: ๋“œ๋ผ์ด๋ฒ„, ์ธ์ฆ, ์„œ๋น„์Šค ๋ฆฌ์ „(Region) ๋ฐ ์ง€์—ญ(Zone) ์ •๋ณด ๋“ฑ     ์—ฐ๋™ ์ •๋ณด ํ†ตํ•ฉ ๊ด€๋ฆฌ ๋ธ”๋ก์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ œ์ถœํ•œ ์—ฐ๋™ ์ •๋ณด ์ €์žฅ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด์„œ ํ•˜๋ถ€์— ํ‚ค-๊ฐ’ ์ €์žฅ์†Œ๋ฅผ ํ™œ์šฉํ•˜๋ฉฐ     ์‚ฌ์šฉ์ž ๋˜๋Š” ๊ณตํ†ต ์ œ์–ด ๊ด€๋ฆฌ ๋ธ”๋ก ์š”์ฒญ ์‹œ์— ์—ฐ๋™ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

  • ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ณตํ†ต ์ œ์–ด ๊ด€๋ฆฌ ๋ธ”๋ก ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ณตํ†ต ์ œ์–ด ๊ด€๋ฆฌ ๋ธ”๋ก์€ ํด๋ผ์šฐ๋“œ๋ณ„๋กœ ์ œ๊ณตํ•˜๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ ๋ฐ ์ด์ข… API๋ฅผ ๋™์ผ ๊ธฐ๋Šฅ ๋ฐ ๋‹จ์ผ API ํ˜•ํƒœ๋กœ ์ œ๊ณตํ•œ๋‹ค. ๋‹จ์ผ API ๋ฐ ๊ณตํ†ต ์ œ์–ด ๊ธฐ๋Šฅ ์ œ๊ณต์„ ์œ„ํ•ด์„œ ํด๋ผ์šฐ๋“œ ๋“œ๋ผ์ด๋ฒ„ ๊ณตํ†ต ์ธํ„ฐํŽ˜์ด์Šค์™€ ์ด๋ฅผ ๊ตฌํ˜„ํ•œ ๋“œ๋ผ์ด๋ฒ„ ๊ตฌ์กฐ๋กœ ์„ค๊ณ„๋˜์—ˆ์œผ๋ฉฐ, ๊ฐœ๋ฐœ๋œ ํด๋ผ์šฐ๋“œ ๋“œ๋ผ์ด๋ฒ„๋Š” CB-Spider ์„œ๋ธŒ์‹œ์Šคํ…œ ๊ฐ€๋™ ์ค‘์— ๋™์ ์œผ๋กœ ์ถ”๊ฐ€๊ฐ€ ๊ฐ€๋Šฅํ•œ ๋™์  ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฐฉ์‹์„ ์ œ๊ณตํ•œ๋‹ค. ๊ณตํ†ต ์ œ์–ด ๊ด€๋ฆฌ ๋ธ”๋ก์€ ์‚ฌ์šฉ์ž๊ฐ€ ์š”์ฒญํ•œ ์ž์› ๋ฐ VM(๊ฐ€์ƒ ๋จธ์‹ )์— ๋Œ€ํ•œ ์ƒ์„ฑ ๋ฐ ์ œ์–ด ๋ช…๋ น ์ˆ˜ํ–‰์„ ์œ„ํ•ด์„œ ํด๋ผ์šฐ๋“œ ๋“œ๋ผ์ด๋ฒ„ ๋‚ด๋ถ€์—์„œ ์‹ค์ œ ๋Œ€์ƒ ํด๋ผ์šฐ๋“œ API๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ช…๋ น์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. ๋˜ํ•œ, ์ด ๊ณผ์ •์—์„œ ๋ฐœ์ƒ๋˜๋Š” API ํ˜ธ์ถœ ์ด๋ ฅ ์ •๋ณด๋ฅผ ์—ฐ๋™ ์ด๋ ฅ ์ •๋ณด ๊ด€๋ฆฌ ๋ธ”๋ก์ด ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋กœ๊ทธ ์ถœ๋ ฅ์„ ํ†ตํ•ด์„œ ์ œ๊ณตํ•œ๋‹ค.

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

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