AWS ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ

NLB์˜ TCP idle timeout ์„ค์ • ๊ธฐ๋Šฅ ์†Œ๊ฐœ

์ด ๊ธ€์€ AWS Networking & Content Delivery Blog์— ๊ฒŒ์‹œ๋œ Introducing NLB TCP configurable idle timeout by Tom Adamski, Milind Kulkarni ์„ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญ ๋ฐ ํŽธ์ง‘ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ ๊ฒŒ์‹œ๋ฌผ์—์„œ๋Š” ์ „์†ก ์ œ์–ด ํ”„๋กœํ† ์ฝœ (TCP) ํ๋ฆ„์— ๋Œ€ํ•œ AWS ๋„คํŠธ์›Œํฌ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ (NLB) ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ (idle timeout)์„ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.

NLB๋Š” ๊ฐœ๋ฐฉํ˜• ์‹œ์Šคํ…œ ์ƒํ˜ธ ์—ฐ๊ฒฐ(OSI) ๋ชจ๋ธ์˜ ๋ ˆ์ด์–ด 4์—์„œ ์ž‘๋™ํ•˜๋Š” Amazon Web Services (AWS) Elastic Load Balancing ์ œํ’ˆ๊ตฐ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. TCP ๋˜๋Š” ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๊ทธ๋žจ ํ”„๋กœํ† ์ฝœ (UDP)์„ ํ†ตํ•ด ํด๋ผ์ด์–ธํŠธ ์—ฐ๊ฒฐ์„ ๊ด€๋ฆฌํ•˜๊ณ  ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ์˜ ํƒ€๊ฒŸ ๊ทธ๋ฃน์— ๋ถ„์‚ฐ์‹œํ‚ต๋‹ˆ๋‹ค.

NLB๋Š” ์—ฐ๊ฒฐ์ด ์„ค์ •๋œ ํ›„ ๋‹ซํžˆ๊ฑฐ๋‚˜ ๋น„ํ™œ์„ฑํ™”๋กœ ์ธํ•ด ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์— ๋„๋‹ฌํ•  ๋•Œ๊นŒ์ง€ ์—ฐ๊ฒฐ์„ ์ถ”์ ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ TCP ์—ฐ๊ฒฐ์˜ ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์€ 350์ดˆ์ด๋ฉฐ, UDP ์—ฐ๊ฒฐ์˜ ์‹œ๊ฐ„ ์ œํ•œ์€ 120์ดˆ์ž…๋‹ˆ๋‹ค.

์ด์ œ ์ƒˆ๋กœ ์ถ”๊ฐ€๋œ TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ์„ค์ •์„ ํ†ตํ•ด ๊ธฐ์กด ๋ฐ ์ƒˆ NLB์— ๋Œ€ํ•ด ์ด ์†์„ฑ์„ ์ˆ˜์ •ํ•˜๊ณ  ๋น„ํ™œ์„ฑ ์—ฐ๊ฒฐ์„ ์ข…๋ฃŒํ•˜๊ธฐ ์ „์— NLB๊ฐ€ ๋Œ€๊ธฐํ•ด์•ผ ํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

TCP ์—ฐ๊ฒฐ ์„ค์ •์˜ ์ดํ•ด

์ž์„ธํžˆ ์•Œ์•„๋ณด๊ธฐ ์ „์— TCP ํ”„๋กœํ† ์ฝœ์˜ ์ž‘๋™ ์›๋ฆฌ๋ฅผ ๊ฐ„๋žตํžˆ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋” ์ž์„ธํ•œ ๋™์ž‘๋ฐฉ์‹์„ ํ™•์ธํ•˜๋ ค๋ฉด TCP RFC๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๊ทธ๋ฆผ 1. TCP ์—ฐ๊ฒฐ ์„ค์ • ๋‹จ๊ณ„

TCP ์—ฐ๊ฒฐ์€ ์—ฐ๊ฒฐ ์„ค์ •, ๋ฐ์ดํ„ฐ ์ „์†ก, ์—ฐ๊ฒฐ ์ข…๋ฃŒ ๋“ฑ ์—ฌ๋Ÿฌ ๋‹จ๊ณ„๋ฅผ ๊ฑฐ์นฉ๋‹ˆ๋‹ค.

  1. ํ•˜ํ”„์˜คํ”ˆ (Half Open): ํด๋ผ์ด์–ธํŠธ๊ฐ€ SYN์„ ๋ณด๋‚ด๊ณ  ์„œ๋ฒ„๊ฐ€ ์‘๋‹ตํ•˜์ง€๋งŒ ํ•ธ๋“œ์…ฐ์ดํฌ๊ฐ€ ์™„๋ฃŒ๋˜์ง€ ์•Š์€ ์ƒํƒœ์ž…๋‹ˆ๋‹ค.
  2. ์—ฐ๊ฒฐ๋จ (Established): 3๋ฐฉํ–ฅ ํ•ธ๋“œ์…ฐ์ดํฌ (three-way handshake)๊ฐ€ ์™„๋ฃŒ๋œ ์ƒํƒœ.
  3. ๋ฐ์ดํ„ฐ ์ „์†ก( Data Transferred): ํ•ธ๋“œ์…ฐ์ดํฌ๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ๊ตํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์ด์–ด๊ทธ๋žจ์˜ ์ด ์„น์…˜์€ ๋” ์‰ฝ๊ฒŒ ์ฝ์„ ์ˆ˜ ์žˆ๋„๋ก ๋ช…ํ™•ํ•˜๊ฒŒ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  4. ์—ฐ๊ฒฐ์ข…๋ฃŒ (Closed): ํด๋ผ์ด์–ธํŠธ๊ฐ€ FIN ํŒจํ‚ท์œผ๋กœ ์ข…๋ฃŒ๋ฅผ ์š”์ฒญํ•˜์—ฌ ์ •์ƒ์ ์œผ๋กœ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

NLB์˜ TCP ์—ฐ๊ฒฐ ์ฒ˜๋ฆฌ

NLB๋Š” ํ”Œ๋กœ์šฐ ํ…Œ์ด๋ธ” (flow table)์—์„œ ์„ค์ •๋œ ๊ฐ ์—ฐ๊ฒฐ์„ ์ถ”์ ํ•˜๋Š” ๋ ˆ์ด์–ด 4 ํ”„๋ก์‹œ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๋‚˜ ์„œ๋ฒ„์— ์˜ํ•ด ํ•œ์ชฝ๋งŒ ์—ด๋ ค ์žˆ๊ฑฐ๋‚˜ (half open), ์ •์ƒ์ ์œผ๋กœ ๋‹ซํ˜”๊ฑฐ๋‚˜, ์žฌ์„ค์ •๋œ (reset) ์—ฐ๊ฒฐ์€ ์ถ”์ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹จ์ผ ์—ฐ๊ฒฐ์€ ํ”„๋กœํ† ์ฝœ ์ข…๋ฅ˜ (TCP), ์†Œ์Šค IP ์ฃผ์†Œ, ์†Œ์Šค ํฌํŠธ, ๋Œ€์ƒ IP ์ฃผ์†Œ ๋ฐ ๋Œ€์ƒ ํฌํŠธ๋ฅผ ํฌํ•จํ•˜๋Š” 5 ํŠœํ”Œ๋กœ ์ •์˜๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆผ2. NLB ๊ตฌ์„ฑ ์˜ˆ์ œ ์•„ํ‚คํ…์ฒ˜

๊ธฐ๋ณธ์ ์œผ๋กœ ํด๋ผ์ด์–ธํŠธ์™€ ๋Œ€์ƒ ๊ฐ„์— 350์ดˆ ๋™์•ˆ ํŠธ๋ž˜ํ”ฝ์ด ์—†๋Š” ๊ฒฝ์šฐ ์—ฐ๊ฒฐ์ด NLB ํ”Œ๋กœ์šฐ ํ…Œ์ด๋ธ”์—์„œ ์ œ๊ฑฐ๋ฉ๋‹ˆ๋‹ค. ์—ฐ๊ฒฐ์ด ๋” ์ด์ƒ ์ถ”์ ๋˜์ง€ ์•Š์€ ํ›„ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํŠธ๋ž˜ํ”ฝ์„ ๋ณด๋‚ด๋ ค๊ณ  ์‹œ๋„ํ•˜๋ฉด NLB๋Š” ์ƒˆ ์—ฐ๊ฒฐ์„ ์„ค์ •ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ด๋Š” TCP RST๋กœ ์‘๋‹ตํ•ฉ๋‹ˆ๋‹ค.

๋งŽ์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฒฝ์šฐ ์—ฐ๊ฒฐ ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๊ดœ์ฐฎ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ๊ฒฝ์šฐ์— ๋”ฐ๋ผ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ •๊ธฐ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋Š” ์‚ฌ๋ฌผ ์ธํ„ฐ๋„ท (IoT) ๋””๋ฐ”์ด์Šค๋Š” ๋งค๋ฒˆ ์†Œ๋Ÿ‰๋งŒ ์ „์†กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ๋•Œ๋งˆ๋‹ค ์—ฐ๊ฒฐ, ํŠนํžˆ ์•”ํ˜ธํ™”๋œ ์—ฐ๊ฒฐ์„ ๋‹ค์‹œ ์—ด๋ ค๋ฉด ๋ฆฌ์†Œ์Šค๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๊ณ  ๋น„์šฉ์ด ๋งŽ์ด ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฐ๊ฒฐ ์‹œ๊ฐ„ ์ดˆ๊ณผ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ฏธ๋ฆฌ ์ •์˜๋œ ๊ฐ„๊ฒฉ์œผ๋กœ ์„ค์ •๋œ ์—ฐ๊ฒฐ์„ ํ†ตํ•ด ํ”„๋กœ๋ธŒ (probe)๋ฅผ ์ „์†กํ•˜๋Š” TCP keepalive๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ๋ธŒ์—๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์ง€๋งŒ NLB์™€ ๊ฐ™์€ ์ค‘๊ฐ„ ์‹œ์Šคํ…œ์—์„œ ์œ ํœด ์‹œ๊ฐ„ ํƒ€์ด๋จธ๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ธฐ์— ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. TCP keepalive ์„ค์ •์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด๋ ค๋ฉด ์ด์ „ ํฌ์ŠคํŒ…์„ ์ฐธ์กฐํ•˜์„ธ์š”.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์˜ค๋ž˜ ์ง€์†๋˜๋Š” TCP ์—ฐ๊ฒฐ์ด ํ•„์š”ํ•˜์ง€๋งŒ TCP keepalive๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ NLB์—์„œ TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์„ ๋ณ€๊ฒฝํ•  ๋•Œ ๊ณ ๋ ค์‚ฌํ•ญ

๊ฐ NLB ๋ฆฌ์Šค๋„ˆ์— ๋Œ€ํ•œ TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์€ 60์ดˆ์—์„œ 6000์ดˆ ์‚ฌ์ด์˜ ๊ฐ’์œผ๋กœ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ์ด๋ฏธ ์ง„ํ–‰ ์ค‘์ธ ์—ฐ๊ฒฐ์ด ์•„๋‹Œ ์ƒˆ TCP ์—ฐ๊ฒฐ์—๋งŒ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.

์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ๊ฐ’์„ ์„ค์ •ํ•˜๊ธฐ ์ „์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ดํ•ดํ•˜๊ณ  TCP keepalive๊ฐ€ ๋Œ€์•ˆ์ด ๋  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ณ ๋ คํ•˜์„ธ์š”. NLB TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„๋ณด๋‹ค ๊ธธ๊ฒŒ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค. ์ด๋Š” NLB ๋Œ€์‹  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์—ฐ๊ฒฐ ๊ด€๋ฆฌ ๋ฐ ์‹œ๊ฐ„ ์ดˆ๊ณผ๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.

์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์„ ๋„ˆ๋ฌด ๊ธธ๊ฒŒ ์„ค์ •ํ•˜๋ฉด ํ”Œ๋กœ์šฐ ํ…Œ์ด๋ธ”์ด ๊ฐ€๋“ ์ฐฐ ์œ„ํ—˜์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค. ํ…Œ์ด๋ธ”์ด ๊ฐ€๋“ ์ฐจ๋ฉด NLB๊ฐ€ ์ƒˆ ์—ฐ๊ฒฐ์„ ์ž๋™์œผ๋กœ ๊ฑฐ๋ถ€ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์•„๋ž˜ ๋ชจ๋‹ˆํ„ฐ๋ง ์„น์…˜์—์„œ ๋‹ค๋ฃฌ ์ƒˆ๋กœ์šด Amazon CloudWatch ๋ฉ”ํŠธ๋ฆญ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฑฐ๋ถ€๋œ ์—ฐ๊ฒฐ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฑฐ๋ถ€๋œ ์—ฐ๊ฒฐ์ด ํ™•์ธ๋˜๋ฉด TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ๊ฐ’์„ ์ค„์—ฌ์•ผ ํ•œ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค.

AWS APIs/CLI ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์„ ์„ค์ •ํ•˜๋Š” ๋‹จ๊ณ„

AWS๋Š” NLB์šฉ TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ์„ค์ •๊ธฐ๋Šฅ์„ ์ถœ์‹œํ•˜๋ฉด์„œ ์ƒˆ๋กœ์šด API๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ์˜ˆ์ œ๋Š” ์‹ค์ œ๋กœ ์ž‘๋™ํ•˜๋Š” API๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์— ๋Œ€ํ•œ ํ˜„์žฌ ๊ฐ’์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด NLB ๋ฆฌ์Šค๋„ˆ ์„ค์ •์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์ž…๋ ฅ:

aws elbv2 describe-listener-attributes \
    --listener-arns arn:aws:elasticloadbalancing:us-east-1:000011112222:listener/network/NLBTest/123/123

์ถœ๋ ฅ:

        {
            "Attributes": [         
                {
                   "Value": "350",
                   "Key": "tcp.idle_timeout.seconds"
                }
            ]
        }

TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ๊ฐ’์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

์ž…๋ ฅ:

aws elbv2 modify-listener-attributes \ 
    --listener-arn arn:aws:elasticloadbalancing:us-east-1:000011112222:listener/network/NLBTest/123/123 \
    --attributes \
        Key=tcp.idle_timeout.seconds,Value=600 

์ถœ๋ ฅ:

        {
            "Attributes": [       
                {
                   "Value": "600",
                   "Key": "tcp.idle_timeout.seconds"
                }
            ]
        }

AWS ๊ด€๋ฆฌ ์ฝ˜์†”์„ ์‚ฌ์šฉํ•˜์—ฌ TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„์„ ์„ค์ •ํ•˜๋Š” ๋‹จ๊ณ„

๋‹ค์Œ์€ AWS ๊ด€๋ฆฌ ์ฝ˜์†”์„ ์‚ฌ์šฉํ•˜์—ฌ ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

1. NLB TCP ๋ฆฌ์Šค๋„ˆ๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆผ3. NLB TCP ๋ฆฌ์Šค๋„ˆ

2. ์†์„ฑ ํƒญ์—์„œ ํ˜„์žฌ TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ๊ฐ’์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆผ4. NLB ๋ฆฌ์Šค๋„ˆ ์†์„ฑ

3. ๋ฆฌ์Šค๋„ˆ ์†์„ฑ ํŽธ์ง‘ ์„น์…˜์—์„œ ์ƒˆ๋กœ์šด TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ๊ฐ’์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆผ5. ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ์„ค์ •

๋ชจ๋‹ˆํ„ฐ๋ง

NLB TCP ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ์„ค์ •๊ธฐ๋Šฅ์ด ์ถœ์‹œ๋˜๋ฉด์„œ ๋‘ ๊ฐ€์ง€ ์ƒˆ๋กœ์šด ๋ฉ”ํŠธ๋ฆญ์ด ๋„์ž…๋˜์—ˆ์Šต๋‹ˆ๋‹ค: RejectedFlowCount (ํ”Œ๋กœ์šฐ ํ…Œ์ด๋ธ”์ด ๊ฝ‰ ์ฐจ์„œ ๊ฑฐ๋ถ€๋œ ์ด ํ”Œ๋กœ์šฐ ์ˆ˜) ๋ฐ RejectedFlowCount_TCP (๊ฐ™์€ ์ด์œ ๋กœ ๊ฑฐ๋ถ€๋œ TCP ํ”Œ๋กœ์šฐ ์ˆ˜)์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฉ”ํŠธ๋ฆญ์€ ์œ ํœด ์ œํ•œ ์‹œ๊ฐ„ ์„ค์ •์˜ ์˜ํ–ฅ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

NLB๊ฐ€ ํ”Œ๋กœ์šฐ๋ฅผ ๊ฑฐ๋ถ€ํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ์‹œ์ ์„ ์•Œ๋ ค์ฃผ๋Š” CloudWatch ์•Œ๋žŒ์„ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. RejectedFlowCount๊ฐ€ ์ฆ๊ฐ€ํ•˜๋ฉด ์ œํ•œ ์‹œ๊ฐ„์„ ์ค„์—ฌ์•ผ ํ•จ์„ ๋‚˜ํƒ€๋‚ด๋ฏ€๋กœ NLB๊ฐ€ ํ๋ฆ„์„ ๋” ๋นจ๋ฆฌ ์ง€์šฐ๊ณ  ํ๋ฆ„ ํ…Œ์ด๋ธ”์ด ๊ฐ€๋“ ์ฐจ๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

NewFlowCount, NewFlowCount_TCP, ActiveFlowCount ๋ฐ ActiveFlowCount_TCP์™€ ๊ฐ™์€ ๊ธฐ์กด NLB ๋ฉ”ํŠธ๋ฆญ์€ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๊ณ  ๊ทธ๋Œ€๋กœ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

๊ฒฐ๋ก 

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

Hyeonseong Chang

Hyeonseong Chang

์žฅํ˜„์„ฑ Sr. Technical Account Manager ๋Š” ๊ณ ๊ฐ๋“ค์ด AWS ์‚ฌ์šฉ์ค‘ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ์„ ๋•๊ณ  ๋ฏธ์…˜ ํฌ๋ฆฌํ‹ฐ์ปฌ ์‹œ์Šคํ…œ์„ ์•ˆ์ •์ ์ด๊ณ  ํšจ์œจ์ ์œผ๋กœ ์šด์˜ํ• ์ˆ˜ ์žˆ๋„๋ก ์•„ํ‚คํ…์ฒ˜ ๋ชจ๋ฒ”์‚ฌ๋ก€์™€ ๋น„์šฉ ์ตœ์ ํ™” ๋ฐฉ๋ฒ•๋“ฑ์˜ ๊ธฐ์ˆ ์ง€์›์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.