๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ์žฅ์›์ต ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ

๐Ÿคท๐Ÿผ‍โ™€๏ธ Etc.../- linux, aws, docker, k8s39

[Nginx] Nginx์˜ ํ•ต์‹ฌ ํŒŒ์ผ nginx.conf ํŒŒ์ผ์€ ์–ด๋–ป๊ฒŒ ๊ตฌ์„ฑ๋ ๊นŒ? ๋ถ„์„ํ•ด๋ณด์ž! ์ง€๋‚œ ์‹œ๊ฐ„ ์šฐ๋ฆฌ๋Š” EC2 ์ธ์Šคํ„ด์Šค์— nginx๋ฅผ ์˜ฌ๋ ค ๊ฐ„๋‹จํžˆ ํ˜ธ์ŠคํŒ…ํ•ด๋ณด๊ธฐ๋ฅผ ํ†ตํ•ด Nginx ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๊ณ  ์‹คํ–‰์‹œ์ผœ๋ณด์•˜๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ ๊ณผ์ •์—์„œ ๋งŒ๋‚œ nginx.conf ํŒŒ์ผ๊ณผ nginx ๋””๋ ‰ํ† ๋ฆฌ์— ๋Œ€ํ•ด์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ์„ค๋ช…๋งŒ ํ–ˆ๋Š”๋ฐ, ์˜ค๋Š˜์€ ๋” ๊นŠ๊ฒŒ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž. Nginx ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ ์šฐ๋ฆฌ๋Š” nginx ํŒจํ‚ค์ง€๊ฐ€ ์„ค์น˜๋œ ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๊ฐ€์•ผํ•œ๋‹ค. ๊ทธ๋Ÿฌ๊ธฐ ์œ„ํ•ด์„œ ๊ธฐ๋ณธ ์„ค์ • ํŒŒ์ผ์ด ์žˆ๋Š” ๊ฒฝ๋กœ๋ฅผ ์ฐพ์•„์•ผํ•œ๋‹ค. ๋งŒ์•ฝ ๋‹น์‹ ์ด ์œ„์—์„œ ํ–ˆ๋˜ ๊ฒƒ ์ฒ˜๋Ÿผ ๋ฐ”์ด๋„ˆ๋ฆฌ ํŒŒ์ผ์„ yum์ด๋‚˜ wget, apt-get์œผ๋กœ ๋‹ค์šด๋ฐ›์•˜๋‹ค๋ฉด ์šด์˜์ฒด์ œ์˜ ๊ณ„์—ด๋ณ„๋กœ ๋‹ค๋ฅธ ์œ„์น˜์— ์กด์žฌํ•  ์ˆ˜ ๋„ ์žˆ๋‹ค. ํ•˜์ง€๋ฉด ๋ฆฌ๋ˆ…์Šค ๋ช…๋ น์–ด๋กœ ์ด ํŒŒ์ผ๋“ค์˜ ์œ„์น˜๋ฅผ ์‰ฝ๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค. > $ sudo find / -name nginx.conf ๊ทธ๋ฆฌ๊ณ  nginx.conf ํŒŒ์ผ.. 2020. 11. 29.
[Nginx] Nginx ๋ฅผ EC2 ์ธ์Šคํ„ด์Šค์— ์„ค์น˜ํ•ด์„œ ํ˜ธ์ŠคํŒ… ๋ง›๋ณด๊ธฐ. ์ง€๋‚œ ์‹œ๊ฐ„ ์šฐ๋ฆฌ๋Š” ์™œ Nginx ์ด์–ด์•ผ ํ•˜๋Š”๊ฐ€?์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์•˜๋‹ค. ์ด์ œ ์‹ค์ œ๋กœ Nginx๋ฅผ ์šฐ๋ฆฌ์˜ EC2 ์ธ์Šคํ„ด์Šค์— ์„ค์น˜ํ•ด์„œ ๋™์ž‘ํ•˜๋Š”์ง€ ํ™•์ธํ•ด๋ณด์ž. ์ˆœ์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. EC2 ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ EC2 ์ธ์Šคํ„ด์Šค ์ ‘์† (ssh ์ ‘์†) ์˜์กด์„ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ ๋ฐ”์ด๋„ˆ๋ฆฌ ํŒจํ‚ค์ง€ ์„ค์น˜ ์„œ๋น„์Šค ๋“ฑ๋ก ๋ฐ ํ™•์ธ curl ํ…Œ์ŠคํŠธ EC2 ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋จผ์ € EC์— ๋กœ๊ทธ์ธ์„ ํ•ด์ฃผ์ž. ๊ทธ๋ฆฌ๊ณ  EC2 ์ฝ˜์†”๋กœ ๊ฐ€์„œ ๋ฆฌ๋ˆ…์Šค IAM์„ ์„ ํƒํ•˜๊ณ  ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•ด์ฃผ์ž EC2 ์ธ์Šคํ„ด์Šค ์ ‘์† (ssh ์ ‘์†) ssh ์ ‘์†์œผ๋กœ EC2 ์ธ์Šคํ„ด์Šค์— ์ ‘์†ํ•ด์ค€๋‹ค. ์œ„์˜ IPv4๋กœ ssh ํ„ฐ๋ฏธ๋„ ์ ‘์†์„ ์ˆ˜ํ–‰ํ•ด์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์—ฐ๊ฒฐ์„ ํ•ด๋ณด์ž. ์˜์กด์„ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ Nginx ๋ฐ”์ด๋„ˆ๋ฆฌ ํŒจํ‚ค์ง€ ์„ค์น˜๋ฅผ ์œ„ํ•ด ๋จผ์ € Nginx ๋‹ค์šด๋กœ๋“œ.. 2020. 11. 29.
[Nginx] ์™œ Nginx ์ด์–ด์•ผ ํ•˜๋Š”๊ฐ€? Nginx์˜ ์ฃผ์š” ๊ธฐ๋Šฅ์œผ๋กœ ์•Œ์•„๋ณด์ž. ์˜ค๋Š˜์€ ์šฐ๋ฆฌ๊ฐ€ ์™œ Nginx์— ๋Œ€ํ•ด์„œ ์•Œ์•„์•ผ ํ•˜๊ณ  ๋ฐฐ์›Œ์•ผ ํ•˜๋Š”์ง€์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณผ ๊ฒƒ์ด๋‹ค. Nginx์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜๋Š” ๋ชจ๋“  ๊ธ€์€ Nginx์— ๋Œ€ํ•œ ์ ์œ ์œจ๋กœ Apache๋ฅผ ๋น„๊ตํ•˜๊ณค ํ•œ๋‹ค. ์ตœ๊ทผ์— Apache์™€ Nginx์˜ ์ ์œ ์œจ์ด ๋น„์Šทํ•ด์กŒ๋‹ค๊ณ  ํ•œ๋‹ค. 2013๋…„์˜ Egoing ๋‹˜์˜ ๊ฐ•์˜์— ๋ณด๋ฉด *_์ฐจ์„ธ๋Œ€ ์›น ์„œ๋ฒ„ *_๋ผ๊ณ  ํ‘œํ˜„ํ•œ๋‹ค. ๊ทธ๋กœ ๋ถ€ํ„ฐ 7๋…„์ด ์ง€๋‚œ ํ˜„ ์‹œ์ ์—์„œ Nginx์˜ ๋ฐœ์ „์„ ๋ณธ๋‹ค๋ฉด 2013๋…„ ๋‹น์‹œ์— ์ฐจ์„ธ๋Œ€ ์›น ์„œ๋ฒ„๋ผ๊ณ  ๋ถˆ๋ฆด๋งŒ ํ•˜๋‹ค. ์ด ๋•Œ ๊นŒ์ง€๋งŒ ํ•ด๋„ Apache์˜ ์ ์œ ์œจ์ด 55 %๋ฅผ ๋„˜์–ด๊ฐ€๊ณ  Nginx๋Š” 12 %์˜€์ง€๋งŒ ํ˜„์žฌ๋Š” Apache 27% nginx 25%๋กœ ์–‘๋Œ€ ์‚ฐ๋งฅ์„ ์ด๋ฃจ๊ณ  ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค. ์ด๋Ÿฐ Nginx๊ฐ€ ์ „๋ถ€ํ„ฐ ๊ฐ๊ด‘ ๋ฐ›๊ณ  ๊พธ์ค€ํžˆ ์‚ฌ๋ž‘๋ฐ›์•„์˜จ ์ด์œ ์— ๋Œ€ํ•ด์„œ ์ด์•ผ๊ธฐ ํ•ด๋ณด์ž. Nginx Ng.. 2020. 11. 29.
[Infrastructure] Proxy์˜ 2๊ฐ€์ง€ ์ข…๋ฅ˜ Forward Proxy ๊ทธ๋ฆฌ๊ณ  Reverse Proxy์˜ ๋ช…ํ™•ํ•˜๊ณ  ํ™•์‹คํ•œ ์ฐจ์ด์ ์„ ์ด์•ผ๊ธฐํ•ด๋“œ๋ฆด๊ฒŒ์š”. Forward Proxy ๊ทธ๋ฆฌ๊ณ  ReverseProxy์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋ ค ํ•œ๋‹ค. ์ผ๋‹จ ์ด ์ฐจ์ด์ ์„ ๊ณต๋ถ€ํ•  ๋•Œ ๊ฐœ๋…์€ ์‰ฌ์› ์ง€๋งŒ Forward์™€ Reverse ์‚ฌ์ด์— ๊ฐœ๋…์ด ๋งค์šฐ ํ˜ผ๋™์Šค๋Ÿฌ์› ๋‹ค. ๋ญ”๊ฐ€ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋ฉด์„œ ๊ฐ™์€ ์ด์•ผ๊ธฐ๋ฅผ ํ•˜๋Š” ๊ฒƒ ๊ฐ™๊ธฐ๋„ ํ•˜์ง€๋งŒ ํ•œ ๋ ์ฐจ์ด?๋กœ ๋‹ค๋ฅธ ๊ฐœ๋…์ด ๋˜๋Š” ๊ฒƒ์ด ์กฐ๊ธˆ ํ˜ผ๋™์Šค๋Ÿฌ์› ๊ณ  ๊ทธ ํ˜ผ๋™ ์‚ฌ์ด์—์„œ ์ด ๋‘˜์„ ๊ตฌ๋ถ„ํ•˜๋Š”๊ฒŒ ์‰ฝ์ง€ ์•Š์•˜์ง€๋งŒ ์ด๋“ค์„ ๊ตฌ๋ถ„ํ•˜๋ฉฐ ์•Œ์•„๋ดค๋˜ ๊ฒƒ๋“ค์„ ์ •๋ฆฌํ•ด ๋‚˜๋ˆ ์ฃผ๋ ค ํ•œ๋‹ค. ์ผ๋‹จ ์ด ๋‘ ํ”„๋ก์‹œ ์ „๋žต์— ๋Œ€ํ•ด์„œ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋จผ์ € ๋ฌด์—‡์ด ํ”„๋ก์‹œ์ธ๊ฐ€?์—์„œ ํ”„๋ก์‹œ์— ๋Œ€ํ•œ ๊ฐœ๋…์„ ํ™•์ธํ•˜๊ณ  ์˜ค๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค. ํ”„๋ก์‹œ์—๋Š” 2๊ฐ€์ง€์˜ ์‚ฌ์šฉ ์ „๋žต์ด ์žˆ๋‹ค. ์ด๋“ค์„ ๊ตฌ๋ถ„ํ•˜๋Š” ๊ฒƒ์€ ๋„คํŠธ์›Œํฌ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์–ด๋””์— ์œ„์น˜ํ•ด ์žˆ๋ƒ์— ๋”ฐ๋ผ์„œ ๋‚˜๋‰œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ๊ทธ๋“ค์„ Forwar.. 2020. 11. 27.
[Infrastructure] Proxy์˜ ๊ฐœ๋…๊ณผ ์™œ ์šฐ๋ฆฌ๋Š” ํ”„๋ก์‹œ๋ฅผ ์“ฐ๊ณ  ์žˆ๋Š”๊ฐ€? ํ”„๋ก์‹œ์˜ 4๊ฐ€์ง€ ์žฅ์ ์„ ๋น ๋ฅด๊ฒŒ ์ดํ•ดํ•ด๋ณด์ž. ์˜ค๋Š˜์€ Proxy์˜ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ์™œ ์šฐ๋ฆฌ๋Š” ํ”„๋ก์‹œ๋ฅผ ์จ์•ผํ•˜๊ณ  ์™œ ์ง€๊ธˆ๊นŒ์ง€ ํ”„๋ก์‹œ๋ฅผ ์จ์™”๋Š”์ง€์— ๋Œ€ํ•ด์„œ ์ƒ๊ฐํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด์ž. Proxy ์ž ์ผ๋‹จ ํ”„๋ก์‹œ์— ๋Œ€ํ•ด์„œ ๋จผ์ € ์ด์•ผ๊ธฐ๋ฅผ ํ•ด๋ณด์ž. ํ”„๋ก์‹œ๋Š” ์„œ๋ฒ„๋‚˜ ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด์˜ ์ค‘๊ณ„๊ธฐ์ฏค ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ž. ํ”„๋ก์‹œ๋ฅผ ์‚ฌ์šฉํ•œ ์ผ๋ จ์˜ ๊ณผ์ •์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ๋น„ํ–‰๊ธฐ ์˜ˆ๋งค ์‚ฌ์ดํŠธ์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์šดํ–‰ ์‹œ๊ฐ„์„ ์•Œ์•„๋ณธ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž. ํด๋ผ์ด์–ธํŠธ๋Š” ๋น„ํ–‰๊ธฐ ์˜ˆ๋งค ์‚ฌ์ดํŠธ๋กœ ์ ‘๊ทผํ•œ๋‹ค. ํด๋ผ์ด์–ธํŠธ๋Š” ์šดํ–‰ ์‹œ๊ฐ„์„ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•ด ํ”„๋ก์‹œ ์„œ๋ฒ„๋กœ ์šดํ–‰ ์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•œ๋‹ค. ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ์‹ค์ œ ๋น„ํ–‰๊ธฐ ์˜ˆ๋งค ์„œ๋ฒ„๋กœ ์šดํ–‰ ์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•œ๋‹ค. ๋น„ํ–‰๊ธฐ ์˜ˆ๋งค ์„œ๋ฒ„์—์„œ๋Š” ํ”„๋ก์‹œ ์„œ๋ฒ„๊ฐ€ ๋ณด๋‚ธ ์š”์ฒญ์„ ๋ฐ›๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์‘๋‹ตํ•œ๋‹ค. ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ์˜ˆ๋งค ์„œ๋ฒ„์—์„œ ๋ฐ›์€ ๋ฐ์ดํ„ฐ๋ฅผ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „๋‹ฌ.. 2020. 11. 27.
[Infrastructure] ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ์˜ 2๊ฐ€์ง€ ๋ฐฉ๋ฒ• (Rolling Update, Blue-Green Update) ๋ฐฐํฌ๋Š” DevOps์˜ ๊ฝƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฐฐํฌ๋Š” ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ์™€ ์ค‘๋‹จ ๋ฐฐํฌ ๋ฐฉ์‹์ด ์žˆ๋‹ค. ์ค‘๋‹จ ๋ฐฐํฌ์™€ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ์˜ ์ฐจ์ด๋Š” ์ด๋ฆ„์—์„œ๋„ ์•Œ ์ˆ˜ ์žˆ๋“ฏ ์ค‘๋‹จ์˜ ์œ ๋ฌด์ด๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๋งŒ์•ฝ ์ฟ ํŒก ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•˜๋ ค๊ณ  ์ฟ ํŒก ํŽ˜์ด์ง€์— ๋“ค์–ด๊ฐ”์œผ๋‚˜ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŽ˜์ด์ง€๊ฐ€ ๋œฌ๋‹ค๋ฉด ์ด ์ƒํ™ฉ์€ ์ƒˆ๋กœ์šด ๋ฒ„์ „์„ ์œ„ํ•ด์„œ ์ž ์‹œ ์„œ๋น„์Šค๋ฅผ ์ค‘๋‹จํ•œ ์ค‘๋‹จ ๋ฐฐํฌ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. (์ฐธ๊ณ ๋กœ ์ผ๋ฐ˜์ ์ธ ์ƒ๊ฐ์— ์˜ํ•ด์„œ ๊ธ€์„ ์“ฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ์„œ๋น„์Šค๊ฐ€ ์ค‘๋‹จ ๋ฐฐํฌ์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ์ธ์ง€ ํ˜น์€ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ์ธ์ง€ ์ •ํ™•ํžˆ ๋‚ด๋ถ€์ž๊ฐ€ ์•„๋‹ˆ๋ผ ์•Œ์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.) ์ด๋Ÿฐ ๋ฐฐํฌ ์ค‘๋‹จ์— ๊ณผ์ •์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ๋งŒ์•ฝ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์„œ๋น„์Šค๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž. ์ด๋Ÿฐ ์„œ๋น„์Šค์— ๋ฐฐํฌ๋ฅผ ํ•œ๋‹ค๊ณ  ํ•˜๋ฉด ์ผ๋ฐ˜์ ์ธ ๋ฐฐํฌ ์œ„์™€ ๊ฐ™์ด ์ƒˆ๋กœ์šด ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธ๋ฅผ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ธฐ์กด์— ์—ฐ๊ฒฐ๋œ .. 2020. 11. 26.