๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ์žฅ์›์ต ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ
๐Ÿคท๐Ÿผ‍โ™€๏ธ Etc.../- linux, aws, docker, k8s

[Infrastructure] Proxy์˜ ๊ฐœ๋…๊ณผ ์™œ ์šฐ๋ฆฌ๋Š” ํ”„๋ก์‹œ๋ฅผ ์“ฐ๊ณ  ์žˆ๋Š”๊ฐ€? ํ”„๋ก์‹œ์˜ 4๊ฐ€์ง€ ์žฅ์ ์„ ๋น ๋ฅด๊ฒŒ ์ดํ•ดํ•ด๋ณด์ž.

by Wonit 2020. 11. 27.

์˜ค๋Š˜์€ Proxy์˜ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

 

์™œ ์šฐ๋ฆฌ๋Š” ํ”„๋ก์‹œ๋ฅผ ์จ์•ผํ•˜๊ณ  ์™œ ์ง€๊ธˆ๊นŒ์ง€ ํ”„๋ก์‹œ๋ฅผ ์จ์™”๋Š”์ง€์— ๋Œ€ํ•ด์„œ ์ƒ๊ฐํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด์ž.

Proxy

์ž ์ผ๋‹จ ํ”„๋ก์‹œ์— ๋Œ€ํ•ด์„œ ๋จผ์ € ์ด์•ผ๊ธฐ๋ฅผ ํ•ด๋ณด์ž.

 

ํ”„๋ก์‹œ๋Š” ์„œ๋ฒ„๋‚˜ ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด์˜ ์ค‘๊ณ„๊ธฐ์ฏค ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ž.

 

ํ”„๋ก์‹œ๋ฅผ ์‚ฌ์šฉํ•œ ์ผ๋ จ์˜ ๊ณผ์ •์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

๋น„ํ–‰๊ธฐ ์˜ˆ๋งค ์‚ฌ์ดํŠธ์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์šดํ–‰ ์‹œ๊ฐ„์„ ์•Œ์•„๋ณธ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž.
  • ํด๋ผ์ด์–ธํŠธ๋Š” ๋น„ํ–‰๊ธฐ ์˜ˆ๋งค ์‚ฌ์ดํŠธ๋กœ ์ ‘๊ทผํ•œ๋‹ค.
  • ํด๋ผ์ด์–ธํŠธ๋Š” ์šดํ–‰ ์‹œ๊ฐ„์„ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•ด ํ”„๋ก์‹œ ์„œ๋ฒ„๋กœ ์šดํ–‰ ์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•œ๋‹ค.
  • ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ์‹ค์ œ ๋น„ํ–‰๊ธฐ ์˜ˆ๋งค ์„œ๋ฒ„๋กœ ์šดํ–‰ ์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•œ๋‹ค.
  • ๋น„ํ–‰๊ธฐ ์˜ˆ๋งค ์„œ๋ฒ„์—์„œ๋Š” ํ”„๋ก์‹œ ์„œ๋ฒ„๊ฐ€ ๋ณด๋‚ธ ์š”์ฒญ์„ ๋ฐ›๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์‘๋‹ตํ•œ๋‹ค.
  • ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ์˜ˆ๋งค ์„œ๋ฒ„์—์„œ ๋ฐ›์€ ๋ฐ์ดํ„ฐ๋ฅผ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „๋‹ฌํ•ด์ค€๋‹ค.

์œ„์˜ ๊ณผ์ •์—์„œ ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ๋ง ๊ทธ๋Œ€๋กœ ์ค‘๊ฐœ์ธ์˜ ์ž…์ง€์ด๋‹ค.

 

์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ๊ฒƒ์€ ํ”„๋ก์‹œ๋Š” ์„œ๋ฒ„์ด๋ฉด์„œ ๋™์‹œ์— ํด๋ผ์ด์–ธํŠธ์ด์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

์™œ?

์ด๋Ÿฐ ํ”„๋ก์‹œ ์„œ๋ฒ„๋ฅผ ๊ทธ๋Ÿผ ๋„๋Œ€์ฒด ์™œ ์“ฐ๋Š” ๊ฒƒ์ผ๊นŒ?

 

์ด๋Ÿฐ ๊ท€์ฐฎ์€ ๊ณผ์ •์„ ์™œ ๊ตณ์ด ๊ฑฐ์ณ๊ฐ€๋ฉฐ ํ•ด์•ผํ•˜๋Š”์ง€์— ๋Œ€ํ•ด์„œ ๊ณ ๋ฏผํ•œ๋‹ค๋ฉด ๋‚˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹ต์„ ์ค„ ์ˆ˜ ์žˆ๋‹ค.

  1. ํด๋ผ์ด์–ธํŠธ๋Š” ๋” ๋น ๋ฅธ ์†๋„๋กœ ์ธํ„ฐ๋„ท ์„œํ•‘์„ ์ฆ๊ธธ ์ˆ˜ ์žˆ๋‹ค.
  2. ํด๋ผ์ด์–ธํŠธ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋” ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅ๋œ๋‹ค.
  3. ์–ด๋ฆฐ์ด๋“ค์—๊ฒŒ ์„ฑ์ธ ์‚ฌ์ดํŠธ๋กœ๋ถ€ํ„ฐ ์•ˆ์ „ํ•œ ํ•„ํ„ฐ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
  4. ๋„คํŠธ์›Œํฌ ๋ณ‘๋ชฉ ํ˜„์ƒ(์š”์ฒญ์ด ๋ชฐ๋ ค ์„œ๋ฒ„๊ฐ€ ๊ณผ๋ถ€ํ•˜๋˜๋Š” ํ˜„์ƒ)์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.

์œ„์™€ ๊ฐ™์€ ๋ฉ‹์ง„ ๊ธฐ๋Šฅ๋“ค์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

 

ํ•˜๋‚˜ ํ•˜๋‚˜ ์ฐจ๋ก€๋Œ€๋กœ ์•Œ์•„๋ณด์ž

ํด๋ผ์ด์–ธํŠธ๋Š” ๋” ๋น ๋ฅธ ์†๋„๋กœ ์ธํ„ฐ๋„ท ์„œํ•‘์„ ์ฆ๊ธธ ์ˆ˜ ์žˆ๋‹ค.

๋ณดํ†ต ํ”„๋ก์‹œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์œ„์™€ ๊ฐ™์€ ๋ชจ์Šต์œผ๋กœ ๊ตฌ์„ฑ์ด ๋œ๋‹ค.

 

์ด์ œ ๋น ๋ฅธ ์ธํ„ฐ๋„ท ์„œํ•‘์ด ์–ด๋–ป๊ฒŒ ๊ฐ€๋Šฅํ•œ์ง€ ์ด์•ผ๊ธฐํ•ด๋ณด์ž.

 

์‚ฌ์šฉ์ž๊ฐ€ ์„œ๋ฒ„๋กœ ๋น„ํ–‰๊ธฐ ์˜ˆ์•ฝ ์ •๋ณด๋ฅผ ๊ฒ€์ƒ‰ํ•œ๋‹ค.

 

๊ทธ๋Ÿผ ํ”„๋ก์‹œ ์„œ๋ฒ„๊ฐ€ ํ•ด๋‹น ์‘๋‹ต์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅ (์บ์‹œ)ํ•˜์—ฌ ์‚ฌ์šฉ์ž์—๊ฒŒ ์‘๋‹ตํ•ด์ฃผ๊ณ , ๋งŒ์•ฝ ๋‹ค๋ฅธ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๊ฐ™์€ ์š”์ฒญ์„ ๋ณด๋‚ด๋ฉด ์„œ๋ฒ„์—๊ฒŒ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํ”„๋ก์‹œ ์„œ๋ฒ„์— ์กด์žฌํ•˜๋Š” ์บ์‹œ ๋ฐ์ดํ„ฐ๋ฅผ ์‘๋‹ตํ•ด์ฃผ๊ฒŒ๋œ๋‹ค.

 

๊ทธ๋Ÿผ ์‚ฌ์šฉ์ž๋Š” ์š”์ฒญ์— ๋”ฐ๋ผ ํ”„๋ก์‹œ ์„œ๋ฒ„์—์„œ ๋ฐ”๋กœ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์— ๋”์šฑ ๋น ๋ฅธ ์ฒด๊ฐ์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜๋Š”๊ฒƒ์ด๋‹ค.

ํด๋ผ์ด์–ธํŠธ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋” ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅ๋œ๋‹ค.

์ด๋Š” ํ”„๋ก์‹œ ์„œ๋ฒ„์˜ ๋ณด์•ˆ์„ฑ๊ณผ ๊ด€๋ จ๋œ ์ด์•ผ๊ธฐ์ด๋‹ค.

 

ํด๋ผ์ด์–ธํŠธ๋Š” ๋งค ์š”์ฒญ์„ ํ”„๋ก์‹œ ์„œ๋ฒ„๋กœ ์š”์ฒญํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹ค์ œ ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ๋Š” ์„œ๋ฒ„์˜ IP๋ฅผ ๋ชฐ๋ผ๋„ ๋œ๋‹ค.

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

์–ด๋ฆฐ์ด๋“ค์—๊ฒŒ ์„ฑ์ธ ์‚ฌ์ดํŠธ๋กœ๋ถ€ํ„ฐ ์•ˆ์ „ํ•œ ํ•„ํ„ฐ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์‘๋‹ต๋ฐ›์€ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ€์ง€๊ณ  ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋‹ค์‹œ ์‘๋‹ตํ•ด์ฃผ๋Š” ์„œ๋ฒ„๋ผ๊ณ  ์œ„์—์„œ ์ด์•ผ๊ธฐ ํ–ˆ๋‹ค.

 

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

๋„คํŠธ์›Œํฌ ๋ณ‘๋ชฉ ํ˜„์ƒ(์š”์ฒญ์ด ๋ชฐ๋ ค ์„œ๋ฒ„๊ฐ€ ๊ณผ๋ถ€ํ•˜๋˜๋Š” ํ˜„์ƒ)์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด ๋ถ€๋ถ„์€ ์ •๋ง ์ค‘์š”ํ•˜๊ณ  ์žฌ๋ฏธ์žˆ๋Š” ๊ฐœ๋…์ด๋‹ค.

 

์ด๋Ÿฐ ํ˜„์ƒ์„ ๋ง‰์•„์ฃผ๋Š” ๊ฐœ๋…์ด ๋ฐ”๋กœ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์ด๋ผ๋Š” ๊ฐœ๋…์ธ๋ฐ, ๊ฐ€๋ณ๊ฒŒ ๋ฌด์—‡์ด ๋กœ๋“œ ๋ฐธ๋Ÿฐ

๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์ด๋ž€?

๋ถ€ํ•˜๋ถ„์‚ฐ ๋˜๋Š” ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์€ ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ ๊ธฐ์ˆ ์˜ ์ผ์ข…์œผ๋กœ ์ค‘์•™์ฒ˜๋ฆฌ์žฅ์น˜ ํ˜น์€ ์ €์žฅ์žฅ์น˜์™€ ๊ฐ™์€ ์ปดํ“จํ„ฐ ์ž์›๋“ค์—๊ฒŒ ์ž‘์—…์„ ๋‚˜๋ˆ„๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.

 

์„œ๋ฒ„์— ๊ฐ€ํ•ด์ง€๋Š” ๋ถ€ํ•˜(=๋กœ๋“œ)๋ฅผ ๋ถ„์‚ฐ(=๋ฐธ๋Ÿฐ์‹ฑ)ํ•ด์ฃผ๋Š” ์žฅ์น˜ ๋˜๋Š” ๊ธฐ์ˆ ์ด๋‹ค.

 

์‚ฌ์—…์˜ ๊ทœ๋ชจ๊ฐ€ ํ™•์žฅ๋˜๊ณ , ํด๋ผ์ด์–ธํŠธ์˜ ์ˆ˜๊ฐ€ ๋Š˜์–ด๋‚˜๊ฒŒ ๋˜๋ฉด ๊ธฐ์กด ์„œ๋ฒ„๋งŒ์œผ๋กœ๋Š” ์ •์ƒ์ ์ธ ์„œ๋น„์Šค๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋˜๋Š”๋ฐ, ์ด๋Ÿฐ ์ฆ๊ฐ€ํ•œ ํŠธ๋ž˜ํ”ฝ์— ๋Œ€์ฒ˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€๋‹ค.

  • Scale up
  • Scale out

Scale Up

Scale Up์€ ์„œ๋ฒ„ ์ž์ฒด์˜ ์„ฑ๋Šฅ์„ ๋†’์ด๋Š” ๊ฒƒ์œผ๋กœ ์งˆ์  ํ–ฅ์ƒ์„ ๋œปํ•œ๋‹ค.

Scale Out

์—ฌ๋Ÿฌ ๋Œ€์˜ ์„œ๋ฒ„๋ฅผ ๋‘๋Š” ๊ฒƒ์œผ๋กœ ์–‘์  ํ–ฅ์ƒ์„ ์ผ์ปซ๋Š”๋‹ค.

 

์ด๋Ÿฐ Scale Out์—์„œ๋Š” ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์„œ๋ฒ„๋ฅผ ์—ฌ๋Ÿฌ ๋Œ€๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์„ ๋œปํ•˜๋Š”๋ฐ, ์ด ๊ณผ์ •์—์„œ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ๊ฐ€ ํ•ด๋‹น ์„œ๋ฒ„์˜ ์š”์ฒญ์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ์„œ๋ฒ„๋กœ ์š”์ฒญ์„ ๋ถ„์‚ฐ์‹œํ‚ค๋Š” ๊ฒƒ์„ ๋œปํ•œ๋‹ค.

 

๊ฒฐ๊ณผ์ ์œผ๋กœ ํ•œ ์„œ๋ฒ„์— ์š”์ฒญ์ด ๋ชฐ๋ ค ๊ณผ๋ถ€ํ•˜ ๋˜๋Š” ํ˜„์ƒ์ด ๋ฐœ์ƒํ•œ๋‹ค๋ฉด ํ”„๋ก์‹œ๋Š” ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์„ ํ†ตํ•ด์„œ ๋ณ‘๋ชฉ ํ˜„์ƒ์„ ๋ฐฉ์ง€ํ•œ๋‹ค.


์˜ค๋Š˜์€ ์ด๋ ‡๊ฒŒ ํ”„๋ก์‹œ๋ฅผ ์™œ ์จ์•ผ ํ•˜๋Š”์ง€์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์•˜๋‹ค.

 

๋‹ค์Œ ์‹œ๊ฐ„์—๋Š” ์ด ํ”„๋ก์‹œ์˜ 2๊ฐ€์ง€ ๋ฐฉ๋ฒ• Forward, Reverse Proxy์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž.

๋Œ“๊ธ€