๋ฉ๋ชจ. ๋ฒ์ญ: ์ด ๊ธฐ์ฌ๋ IT ์์คํ ์ฅ์ ์ ๊ฒฐ๊ณผ๋ฅผ ์ํํ๊ธฐ ์ํ ์คํ์ ์ค์์ฑ์ ๊ฐ๋จํ๊ณ ๋ช ํํ๊ฒ ์ค๋ช ํ๊ธฐ ์ํด ์์ํ AWS ๊ธฐ์ ์ ๋์ฌ Adrian Hornsby์ ํ๋ฅญํ ๊ธฐ์ฌ ์๋ฆฌ์ฆ์ ์ด์ด์ง๋๋ค.
โ๊ณํ์ ์ค๋นํ์ง ๋ชปํ๋ฉด ์คํจํ ๊ณํ์ ์ธ์๋๋ค.โ - ๋ฒค์๋ฏผ ํ๋ญํด๋ฆฐ
ะ
XNUMX๋ถ ๋ง๋ฏธ์๋ โ์์คํ
์ ์ค๋ฅ๋ฅผ ๋์
ํ๋ ๋๊ตฌ์ ๋ฐฉ๋ฒโ์ ๋ํด ์ด์ผ๊ธฐํ๊ฒ ๋ค๊ณ ์ฝ์ํ์ต๋๋ค. ์์, ๋ด ๋จธ๋ฆฌ์๋ ์ด์ ๊ด๋ จํ์ฌ ์์ฒด ๊ณํ์ด ์์๊ณ ์ด ๊ธฐ์ฌ์์๋ ์นด์ค์ค ์์ง๋์ด๋ง์ ์ฐธ์ฌํ๋ ค๋ ์ฌ๋๋ค ์ฌ์ด์์ ๋ฐ์ํ๋ ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ์ง๋ฌธ์ ๋ตํ๋ ค๊ณ ๋
ธ๋ ฅํ ๊ฒ์
๋๋ค. ๋ฌด์์ ๋จผ์ ๊นฐ๊น์?
์ข์ ์ง๋ฌธ์ ๋๋ค! ํ์ง๋ง ๊ทธ๋ ์ด ํ๋ค์๊ฒ ๋ณ๋ก ์ ๊ฒฝ์ ์ฐ์ง ์๋ ๊ฒ ๊ฐ์๋ฐ...
ํผ๋์ ํฌ๋๋ฅผ ๊ฑด๋๋ฆฌ์ง ๋ง์ธ์!
์งง์ ๋๋ต: ์์ฒญ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ผ ์ค์ํ ์๋น์ค๋ฅผ ๋์์ผ๋ก ํฉ๋๋ค.
๋ ๊ธธ์ง๋ง ๋ ๋ช ํํ ๋ต๋ณ: ํผ๋ ์คํ์ ์ด๋์ ์์ํด์ผ ํ๋์ง ์ดํดํ๋ ค๋ฉด ๋ค์ ์ธ ๊ฐ์ง ์์ญ์ ์ฃผ์๋ฅผ ๊ธฐ์ธ์ด์ญ์์ค.
- ๋ด์ ์ถฉ๋ ๊ธฐ๋ก ํจํด์ ์๋ณํ๊ณ ;
- ๊ฒฐ์ ํ๋ค ์ค์ํ ์ข ์์ฑ;
- ์์๋ฅผ ์ฌ์ฉํ์ญ์์ค ๊ณผ์ ํจ๊ณผ.
์๊ธด๋ฐ ์ด ๋ถ๋ถ์ ๊ทธ๋ฅ ์ฝ๊ฒ ๋ถ๋ฅผ ์๋ ์๊ฒ ๋ค์ "์๊ธฐ ๋ฐ๊ฒฌ๊ณผ ๊นจ๋ฌ์์ ํฅํ ์ฌ์ ". ์ฌ๊ธฐ์ ์ฐ๋ฆฌ๋ ๋ฉ์ง ์ ๊ธฐ๋ฅผ ๊ฐ์ง๊ณ "์ฐ์ฃผ"๋ฅผ ์์ํ ๊ฒ์ ๋๋ค.
1. ๋ต์ ๊ณผ๊ฑฐ์ ์๋ค
๊ธฐ์ตํ์ ๋ค๋ฉด, ์ฒซ ๋ฒ์งธ ๋ถ๋ถ์์ ์ค๋ฅ ์์ (COE) ๊ฐ๋ ์ ์๊ฐํ์ต๋๋ค. ์ด๋ ๊ธฐ์ , ํ๋ก์ธ์ค ๋๋ ์กฐ์ง์ ์ค์์ ๊ฐ์ ์ค์๋ฅผ ๋ถ์ํ์ฌ ์์ธ์ ์ดํดํ๊ณ ์๋ฐฉํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์์ผ๋ก ์ฌ๋ฐ. ์ผ๋ฐ์ ์ผ๋ก ์ฌ๊ธฐ์๋ถํฐ ์์ํด์ผ ํฉ๋๋ค.
โํ์ฌ๋ฅผ ์ดํดํ๋ ค๋ฉด ๊ณผ๊ฑฐ๋ฅผ ์์์ผ ํฉ๋๋ค.โ โ ์นผ ์ธ์ด๊ฑด
์คํจ ๊ธฐ๋ก์ ์ดํด๋ณด๊ณ COE ๋๋ ์ฌํ ๋ถ์์์ ํ๊ทธ๋ฅผ ์ง์ ํ๊ณ ๋ถ๋ฅํ์ธ์. ์ข ์ข ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ์ผ๋ฐ์ ์ธ ํจํด์ ์๋ณํ๊ณ ๊ฐ COE์ ๋ํด ๋ค์ ์ง๋ฌธ์ ์๋ฌธํด ๋ณด์ญ์์ค.
"์ด๊ฒ์ ์์ธกํ๊ณ ๊ฒฐํจ ์ฃผ์ ์ผ๋ก ์๋ฐฉํ ์ ์์์๊น์?"
๋๋ ๊ฒฝ๋ ฅ ์ด๊ธฐ์ ํ ๋ฒ์ ์คํจ๋ฅผ ๊ธฐ์ตํฉ๋๋ค. ๋ช ๊ฐ์ง ๊ฐ๋จํ ํผ๋ ์คํ์ ์ํํ๋ค๋ฉด ์ฝ๊ฒ ์๋ฐฉํ ์ ์์์ ๊ฒ์ ๋๋ค.
์ ์์ ์ธ ์กฐ๊ฑด์์ ๋ฐฑ์๋ ์ธ์คํด์ค๋ ์ํ ํ์ธ์ ์๋ตํฉ๋๋ค.
๋ก๋ ๋ฐธ๋ฐ์(ELB) ). ELB๋ ์ด๋ฌํ ๊ฒ์ฌ๋ฅผ ์ฌ์ฉํ์ฌ ์์ฒญ์ ์ ์ ์ธ์คํด์ค๋ก ๋ฆฌ๋๋ ์ ํฉ๋๋ค. ์ธ์คํด์ค๊ฐ "๋น์ ์"์ธ ๊ฒ์ผ๋ก ํ์ธ๋๋ฉด ELB๋ ํด๋น ์ธ์คํด์ค์ ๋ํ ์์ฒญ ์ ์ก์ ์ค๋จํฉ๋๋ค. ์ด๋ ๋ ์ฑ๊ณต์ ์ธ ๋ง์ผํ ์บ ํ์ธ ์ดํ ํธ๋ํฝ ์์ด ์ฆ๊ฐํ๊ณ ๋ฐฑ์๋๊ฐ ํ์๋ณด๋ค ์ํ ํ์ธ์ ๋ ๋๋ฆฌ๊ฒ ์๋ตํ๊ธฐ ์์ํ์ต๋๋ค. ์ด๋ฒ ๊ฑด๊ฐ๊ฒ์ง์ ์ด๋ ๊ฒ ํ๋ค๊ณ ํด์ผ๋๋๊น์ ์ฆ, ์ข ์์ฑ ์ํ๊ฐ ํ์ธ๋์์ต๋๋ค.๊ทธ๋ฌ๋ ํ๋์์ ๋ชจ๋ ๊ฒ์ด ๊ด์ฐฎ์์ต๋๋ค.
๊ทธ๋ฐ ๋ค์ ์ด๋ฏธ ์คํธ๋ ์ค๊ฐ ๋ง์ ์ํฉ์์ ์ธ์คํด์ค ์ค ํ๋๊ฐ ์ค์ํ์ง ์์ ์ผ๋ฐ ETL cron ์์ ์ ์คํํ๊ธฐ ์์ํ์ต๋๋ค. ๋์ ํธ๋ํฝ๊ณผ cronjob์ ์กฐํฉ์ผ๋ก CPU ์ฌ์ฉ๋ฅ ์ด ๊ฑฐ์ 100%์ ์ด๋ฅด๋ ์ต๋๋ค. CPU ๊ณผ๋ถํ๋ก ์ธํด ์ํ ํ์ธ์ ๋ํ ์๋ต ์๋๊ฐ ๋์ฑ ๋๋ ค์ ธ์ ELB๋ ์ธ์คํด์ค์ ์ฑ๋ฅ ๋ฌธ์ ๊ฐ ์๋ค๊ณ ํ๋จํ์ต๋๋ค. ์์ํ ๋๋ก ๋ฐธ๋ฐ์๊ฐ ํธ๋ํฝ ๋ถ์ฐ์ ์ค๋จํ๊ณ , ์ด๋ก ์ธํด ๊ทธ๋ฃน์ ๋๋จธ์ง ์ธ์คํด์ค์ ๋ํ ๋ก๋๊ฐ ์ฆ๊ฐํ์ต๋๋ค.
๊ฐ์๊ธฐ ๋ค๋ฅธ ๋ชจ๋ ์ธ์คํด์ค๋ ์ํ ํ์ธ์ ์คํจํ๊ธฐ ์์ํ์ต๋๋ค.
์ ์ธ์คํด์ค๋ฅผ ์์ํ๋ ค๋ฉด ํจํค์ง๋ฅผ ๋ค์ด๋ก๋ํ๊ณ ์ค์นํด์ผ ํ์ผ๋ฉฐ ELB๊ฐ ์๋ ํ์ฅ ๊ทธ๋ฃน์์ ํจํค์ง๋ฅผ ํ๋์ฉ ๋นํ์ฑํํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ๋ณด๋ค ํจ์ฌ ์ค๋ ๊ฑธ๋ ธ์ต๋๋ค. ๊ณง ์ ์ฒด ํ๋ก์ธ์ค๊ฐ ์๊ณ์ ์ ๋๋ฌํ๊ณ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ถฉ๋ํ ๊ฒ์ด ๋ถ๋ช ํฉ๋๋ค.
๊ทธ๋ฐ ๋ค์ ์ฐ๋ฆฌ๋ ๋ค์ ์ฌํญ์ ์์ํ ์ดํดํ์ต๋๋ค.
- ์ ์ธ์คํด์ค๋ฅผ ์์ฑํ ๋ ์ํํธ์จ์ด๋ฅผ ์ค์นํ๋ ๋ฐ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฌ๋ฏ๋ก ๋ถ๋ณ ์ ๊ทผ ๋ฐฉ์์ ์ ํธํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๊ณจ๋ AMI . - ๋ณต์กํ ์ํฉ์์๋ ์ํ ํ์ธ ๋ฐ ELB์ ๋ํ ์๋ต์ด ์ฐ์ ์๋์ด์ผ ํฉ๋๋ค. ๋ง์ง๋ง์ผ๋ก ์ํ๋ ๊ฒ์ ๋๋จธ์ง ์ธ์คํด์ค์ ์๋ช ์ ๋ณต์กํ๊ฒ ๋ง๋๋ ๊ฒ์ ๋๋ค.
- ์ํ ํ์ธ์ ๋ก์ปฌ ์บ์ฑ์ (๋ช ์ด ๋์์ด๋ผ๋) ๋ง์ ๋์์ด ๋ฉ๋๋ค.
- ์ด๋ ค์ด ์ํฉ์์๋ cron ์์ ๋ฐ ๊ธฐํ ์ค์ํ์ง ์์ ํ๋ก์ธ์ค๋ฅผ ์คํํ์ง ๋ง์ญ์์ค. ๊ฐ์ฅ ์ค์ํ ์์ ์ ์ํด ๋ฆฌ์์ค๋ฅผ ์ ์ฝํ์ญ์์ค.
- ์๋ ํ์ฅ ์ ๋ ์์ ์ธ์คํด์ค๋ฅผ ์ฌ์ฉํ์ธ์. 10๊ฐ์ ์์ ํ๋ณธ ๊ทธ๋ฃน์ด 4๊ฐ์ ํฐ ํ๋ณธ ๊ทธ๋ฃน๋ณด๋ค ๋ซ์ต๋๋ค. ํ๋์ ์ธ์คํด์ค๊ฐ ์คํจํ๋ฉด ์ฒซ ๋ฒ์งธ ๊ฒฝ์ฐ์๋ ํธ๋ํฝ์ 10%๊ฐ 9๊ฐ ์ง์ ์ ๋ถ์ฐ๋๊ณ , ๋ ๋ฒ์งธ ๊ฒฝ์ฐ์๋ ํธ๋ํฝ์ 25%๊ฐ XNUMX๊ฐ ์ง์ ์ ๋ถ์ฐ๋ฉ๋๋ค.
๋ฐ๋ผ์, ์ด๊ฒ์ด ์๊ฒฌ๋์์ผ๋ฏ๋ก ๋ฌธ์ ๋ฅผ ๋์ ํจ์ผ๋ก์จ ์๋ฐฉํ ์ ์์์ต๋๊น?
ะะฐ, ๊ทธ๋ฆฌ๊ณ ์ฌ๋ฌ ๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก.
์ฒซ์งธ, ๋ค์๊ณผ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋์ CPU ์ฌ์ฉ๋์ ์๋ฎฌ๋ ์ด์
ํฉ๋๋ค. stress-ng
cpuburn
โฏ stress-ng --matrix 1 -t 60s
์คํธ๋ ์ค
๋์งธ, ์ธ์คํด์ค์ ๊ณผ๋ถํ๋ฅผ ๊ฐํ์ฌ wrk
โฏ wrk -t12 -c400 -d20s http://127.0.0.1/api/health
์คํ์ ์๋์ ์ผ๋ก ๊ฐ๋จํ์ง๋ง ์ค์ ์คํจ๋ก ์ธํ ์คํธ๋ ์ค๋ฅผ ๊ฒช์ง ์๊ณ ๋ ์๊ฐํด๋ณผ ์ ์๋ ์ข์ ์๋ฃ๋ฅผ ์ ๊ณตํ ์ ์์ต๋๋ค.
ํ์ง๋ง ๊ฑฐ๊ธฐ์ ๋ฉ์ถ์ง ๋ง์ธ์. ํ ์คํธ ํ๊ฒฝ์์ ์ถฉ๋์ ์ฌํํด๋ณด๊ณ "๋ผ๋ ์ง๋ฌธ์ ๋ํ ๋ต์ ํ์ธํด๋ณด์ธ์.์ด๋ฅผ ์์ธกํ๊ณ ๊ฒฐํจ์ ๋์ ํ์ฌ ์๋ฐฉํ ์ ์์์ต๋๊น?" ์ด๊ฒ์ ๊ฐ์ ์ ํ ์คํธํ๊ธฐ ์ํ ์นด์ค์ค ์คํ ๋ด์ ๋ฏธ๋ ์นด์ค์ค ์คํ์ด์ง๋ง ์คํจ๋ก ์์๋ฉ๋๋ค.
๊ฟ์ด์๋์, ์๋๋ฉด ์ค์ ๋ก ์ผ์ด๋ฌ๋์?
๊ทธ๋ฌ๋ ์คํจ์ ์ญ์ฌ๋ฅผ ์ฐ๊ตฌํ๊ณ , ๋ถ์ํ์ธ์. EOC, ํ๊ทธ๋ฅผ ์ง์ ํ๊ณ "ํํธ ๋ฐ๊ฒฝ"(๋ ์ ํํ๊ฒ๋ ์ํฅ์ ๋ฐ๋ ๊ณ ๊ฐ ์)์ ๊ธฐ์ค์ผ๋ก ๋ถ๋ฅํ ๋ค์ ํจํด์ ์ฐพ์ต๋๋ค. ๋ฌธ์ ๋ฅผ ๋์ ํจ์ผ๋ก์จ ์ด๋ฅผ ์์ธกํ๊ณ ์๋ฐฉํ ์ ์์๋์ง ์ค์ค๋ก์๊ฒ ๋ฌผ์ด๋ณด์ญ์์ค. ๋ต์ ํ์ธํ์ธ์.
๊ทธ๋ฐ ๋ค์ ๋ฒ์๊ฐ ๊ฐ์ฅ ํฐ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ํจํด์ผ๋ก ์ ํํฉ๋๋ค.
2. ์ข ์์ฑ ๋งต ๊ตฌ์ถ
์ ์ ์๊ฐ์ ๋ด์ด ์ง์์์ ๋ํด ์๊ฐํด ๋ณด์ธ์. ์ข ์์ฑ์ ๋ํ ๋ช ํํ ์ง๋๊ฐ ์๋์? ์คํจํ ๊ฒฝ์ฐ ์ด๋ค ์ํฅ์ ๋ฏธ์น ์ง ์๊ณ ์๋์?
์ ํ๋ฆฌ์ผ์ด์ ์ฝ๋์ ์ต์ํ์ง ์๊ฑฐ๋ ๊ท๋ชจ๊ฐ ๋๋ฌด ์ปค์ง๋ฉด ์ฝ๋์ ๊ธฐ๋ฅ๊ณผ ์ข ์์ฑ์ด ๋ฌด์์ธ์ง ์ดํดํ๊ธฐ ์ด๋ ค์ธ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ข ์์ฑ๊ณผ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ์ฌ์ฉ์์ ๋ํ ๊ฐ๋ฅํ ์ํฅ์ ์ดํดํ๋ ๊ฒ์ ์นด์ค์ค ์์ง๋์ด๋ง์ ์์ํ ์์น๋ฅผ ์๋ ๋ฐ ์ค์ํฉ๋๋ค. ์์์ ์ ์ํฅ ๋ฐ๊ฒฝ์ด ๊ฐ์ฅ ํฐ ๊ตฌ์ฑ ์์์ ๋๋ค.
์ข ์์ฑ์ ์๋ณํ๊ณ ๋ฌธ์ํํ๋ ๊ฒ์ "์ข ์์ฑ ๋งต ์์ฑยป (์ข ์์ฑ ๋งคํ). ์ด๋ ์ผ๋ฐ์ ์ผ๋ก ์ฝ๋ ํ๋กํ์ผ๋ง ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋๊ท๋ชจ ์ฝ๋ ๋ฒ ์ด์ค๊ฐ ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ํ๋ฉ๋๋ค. (์ฝ๋ ํ๋กํ์ผ๋ง) ๋ฐ ๊ณ์ธก (์๋จ). ๋คํธ์ํฌ ํธ๋ํฝ์ ๋ชจ๋ํฐ๋งํ์ฌ ์ง๋๋ฅผ ๊ตฌ์ถํ ์๋ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ๋ชจ๋ ์ข ์์ฑ์ด ๋์ผํ ๊ฒ์ ์๋๋๋ค(์ด๋ก ์ธํด ํ๋ก์ธ์ค๊ฐ ๋์ฑ ๋ณต์กํด์ง๋๋ค). ์ผ๋ถ ๋นํ์ ์ธ, ๋ค๋ฅธ - ์ค๊ณ ๋ฑ ํ๋ (์ ์ด๋ ์ด๋ก ์ ์ผ๋ก๋ ์ค์ํ์ง ์์ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋๋ ์ข ์์ฑ ๋ฌธ์ ๋ก ์ธํด ์ถฉ๋์ด ์์ฃผ ๋ฐ์ํ๊ธฐ ๋๋ฌธ์).
์ค์ํ ์ข ์์ฑ์ด ์์ผ๋ฉด ์๋น์ค๊ฐ ์๋ํ ์ ์์ต๋๋ค. ์ค์ํ์ง ์์ ์ข ์์ฑ "ํด์๋ ์๋๋ค.ยป ์ถ๋ฝ ์ ์๋น์ค์ ์ํฅ์ ๋ฏธ์น๊ธฐ ์ํด. ์ข ์์ฑ์ ์ดํดํ๋ ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฌ์ฉํ๋ API๋ฅผ ๋ช ํํ๊ฒ ์ดํดํด์ผ ํฉ๋๋ค. ์ด๋ ๋ณด์ด๋ ๊ฒ๋ณด๋ค ํจ์ฌ ๋ ์ด๋ ค์ธ ์ ์์ต๋๋ค. ์ ์ด๋ ๋๊ท๋ชจ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฒฝ์ฐ์๋ ๊ทธ๋ ์ต๋๋ค.
๋ชจ๋ API๋ฅผ ์ดํด๋ณด๋ ๊ฒ๋ถํฐ ์์ํ์ธ์. ๊ฐ์ฅ ํ์ด๋ผ์ดํธ ์ค์ํ๊ณ ์ค์ํ. ๊ฐ์ ธ๊ฐ๋ค ะทะฐะฒะธัะธะผะพััะธ ์ฝ๋ ์ ์ฅ์์์ ํ์ธํด ๋ณด์ธ์. ์ฐ๊ฒฐ ๋ก๊ทธ, ๋ค์ ๋ณด๊ธฐ ๋ฌธ์ (๋ฌผ๋ก ์กด์ฌํ๋ ๊ฒฝ์ฐ - ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ์๋ ์ฌ์ ํะพ๋ ํฐ ๋ฌธ์ ). ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ํ๋กํ์ผ๋ง ๋ฐ ์ถ์ , ์ธ๋ถ ํตํ๋ฅผ ํํฐ๋งํฉ๋๋ค.
๋ค์๊ณผ ๊ฐ์ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. netstat
- ์์คํ
์ ๋ชจ๋ ๋คํธ์ํฌ ์ฐ๊ฒฐ(ํ์ฑ ์์ผ) ๋ชฉ๋ก์ ํ์ํ๋ ๋ช
๋ น์ค ์ ํธ๋ฆฌํฐ์
๋๋ค. ์๋ฅผ ๋ค์ด ํ์ฌ ์ฐ๊ฒฐ์ ๋ชจ๋ ๋์ดํ๋ ค๋ฉด ๋ค์์ ์
๋ ฅํฉ๋๋ค.
โฏ netstat -a | more
AWS์์๋ ๋ค์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋น์ ์ ๋ํ ์ฌ์ฉํ ์ ์์ต๋๋ค
AWS X-Ray ์ฝ์
๋คํธ์ํฌ ์ข ์์ฑ ๋งต์ ๋ถ๋ถ์ ์ธ ์๋ฃจ์ ์ผ ๋ฟ์ ๋๋ค. ์, ์ด๋ค ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ์ด๋ค ์ ํ๋ฆฌ์ผ์ด์ ์ด ํต์ ํ๋์ง ํ์ํ์ง๋ง ๋ค๋ฅธ ์ข ์์ฑ์ด ์์ต๋๋ค.
๋ง์ ์ ํ๋ฆฌ์ผ์ด์
์ด DNS๋ฅผ ์ฌ์ฉํ์ฌ ์ข
์ ํญ๋ชฉ์ ์ฐ๊ฒฐํ๋ ๋ฐ๋ฉด, ๋ค๋ฅธ ์ ํ๋ฆฌ์ผ์ด์
์ ์๋น์ค ๊ฒ์์ ์ฌ์ฉํ๊ฑฐ๋ ๊ตฌ์ฑ ํ์ผ์ ํ๋ ์ฝ๋ฉ๋ IP ์ฃผ์(์: /etc/hosts
).
์๋ฅผ ๋ค์ด ๋ค์์ ๋ง๋ค ์ ์์ต๋๋ค. iptables
๋ฌด์์ด ๊นจ์ง๋์ง ์ดํด๋ณด์ธ์. ์ด๋ ๊ฒ ํ๋ ค๋ฉด ๋ค์ ๋ช
๋ น์ ์
๋ ฅํ์ญ์์ค.
โฏ iptables -I OUTPUT -p udp --dport 53 -j REJECT -m comment --comment "Reject DNS"
DNS ๋ธ๋ํ
๊ฒฝ์ฐ /etc/hosts
๋๋ ๊ธฐํ ๊ตฌ์ฑ ํ์ผ์ ์ฌ์ฉํ๋ฉด ์ ํ ์์ง ๋ชปํ๋ IP ์ฃผ์๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค(์, ๋ถํํ๋ ์ด๋ฐ ์ผ๋ ๋ฐ์ํฉ๋๋ค). ๋ค์ ๊ตฌ์กฐ์ ์ฌ ์ ์์ต๋๋ค iptables
. ๋น์ ์ด ๋ฐ๊ฒฌํ๋ค๊ณ ๊ฐ์ ํด ๋ด
์๋ค 8.8.8.8
๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ด Google์ ๊ณต๊ฐ DNS ์๋ฒ ์ฃผ์์ธ์ง๋ ๋ชจ๋ฆ
๋๋ค. ์ฌ์ฉํ์ฌ iptables
๋ค์ ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ์ด ์ฃผ์๋ก ๋ค์ด์ค๊ณ ๋๊ฐ๋ ํธ๋ํฝ์ ์ฐจ๋จํ ์ ์์ต๋๋ค.
โฏ iptables -A INPUT -s 8.8.8.8 -j DROP -m comment --comment "Reject from 8.8.8.8"
โฏ iptables -A OUTPUT -d 8.8.8.8 -j DROP -m comment --comment "Reject to 8.8.8.8"
์ ๊ทผ ํ์
์ฒซ ๋ฒ์งธ ๊ท์น์ Google์ ๊ณต๊ฐ DNS์์ ๋ชจ๋ ํจํท์ ์ญ์ ํฉ๋๋ค. ping
์๋ํ์ง๋ง ํจํท์ด ๋ฐํ๋์ง ์์ต๋๋ค. ๋ ๋ฒ์งธ ๊ท์น์ ์์คํ
์์ Google์ ๊ณต๊ฐ DNS๋ก ํฅํ๋ ๋ชจ๋ ํจํท์ ์ญ์ ํฉ๋๋ค. ping
์ฐ๋ฆฌ๋ ์ป๋๋ค. ์กฐ์์ ํ์ฉ๋์ง.
์ฐธ๊ณ : ์ด ํน๋ณํ ๊ฒฝ์ฐ์๋ ๋ค์์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค. whois 8.8.8.8
, ๊ทธ๋ฌ๋ ์ด๊ฒ์ ๋จ์ง ์์ผ ๋ฟ์
๋๋ค.
TCP์ UDP๋ฅผ ์ฌ์ฉํ๋ ๋ชจ๋ ๊ฒ์ด ์ค์ ๋ก IP์ ์์กดํ๊ธฐ ๋๋ฌธ์ ์ฐ๋ฆฌ๋ ํ ๋ผ ๊ตฌ๋ฉ์ ๋ ๊น์ด ํ๊ณ ๋ค ์ ์์ต๋๋ค. ๋๋ถ๋ถ์ ๊ฒฝ์ฐ IP๋ ARP์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ๋ฐฉํ๋ฒฝ์ ์์ง ๋ง์ธ์...
๋นจ๊ฐ์ฝ์ ๋จน์ผ๋ฉด ์ด์ํ ๋๋ผ์ ๋จ๊ฒ ๋๊ณ , ํ ๋ผ๊ตด์ด ์ผ๋ง๋ ๊น์์ง ๋ณด์ฌ์ฃผ๊ฒ ๋ค."
์ข ๋ ๊ธ์ง์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ๋ถ๋ฆฌ ์๋์ฐจ๋ฅผ ํ๋์ฉ ํ๋์ฉ ์ดํด๋ณด๊ณ ๋ฌด์์ด ๊ณ ์ฅ ๋ฌ๋์ง ์ดํด๋ณด์ธ์... "ํผ๋์ ์์ญ์ด"๊ฐ ๋์ด๋ณด์ธ์. ๋ฌผ๋ก ๋ง์ ํ๋ก๋์ ์์คํ ์ ์ด๋ฌํ ๋ฌด์ฐจ๋ณ ๋์ ๊ณต๊ฒฉ์ ์ํด ์ค๊ณ๋์ง ์์์ง๋ง ์ ์ด๋ ํ ์คํธ ํ๊ฒฝ์์๋ ์๋ํด ๋ณผ ์ ์์ต๋๋ค.
์ข ์์ฑ ๋งต์ ๊ตฌ์ถํ๋ ๊ฒ์ ๋งค์ฐ ์ค๋ ์๊ฐ์ด ๊ฑธ๋ฆฌ๋ ์์ ์ธ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ ๋ ์ต๊ทผ ์๋ฐฑ ๊ฐ์ ๋ง์ดํฌ๋ก์๋น์ค์ ๋ช ๋ น์ ๋ํ ์ข ์์ฑ ๋งต์ ๋ฐ์๋์ผ๋ก ์์ฑํ๋ ๋๊ตฌ๋ฅผ ๊ฐ๋ฐํ๋ ๋ฐ ๊ฑฐ์ 2๋ ์ ๋ณด๋ธ ํด๋ผ์ด์ธํธ์ ์ด์ผ๊ธฐ๋ฅผ ๋๋ด์ต๋๋ค.
๊ทธ๋ฌ๋ ๊ทธ ๊ฒฐ๊ณผ๋ ๋งค์ฐ ํฅ๋ฏธ๋กญ๊ณ ์ ์ฉํฉ๋๋ค. ์์คํ , ์ข ์์ฑ ๋ฐ ์ด์์ ๋ํด ๋ง์ ๊ฒ์ ๋ฐฐ์ฐ๊ฒ ๋ฉ๋๋ค. ๋ค์ ํ ๋ฒ ์ธ๋ด์ฌ์ ๊ฐ์ง์ญ์์ค. ๊ฐ์ฅ ์ค์ํ ๊ฒ์ ์ฌํ ์์ฒด์ ๋๋ค.
3. ๊ณผ์ ์ ์กฐ์ฌํ๋ผ
โ๋ฌด์์ ๊ฟ๊พธ๋ ์๋ ๊ทธ๊ฒ์ ๋ฏฟ๋๋๋ผ.โ โ ๋ฐ๋ชจ์คํ ๋ค์ค
๋ค์ด๋ณธ ์ ์๋์? ๊ณผ์ ํจ๊ณผ?
Wikipedia์ ๋ฐ๋ฅด๋ฉด, ๊ณผ์ ํจ๊ณผ๋ "์์ ์ ํ๋๊ณผ ๊ฒฐ์ ์ ๋ํ ๊ฐ์ธ์ ํ์ ์ด ๊ทธ๋ฌํ ํ๋จ์ ๊ฐ๊ด์ ์ธ ์ ํ์ฑ๋ณด๋ค ํจ์ฌ ๋ ํฐ ์ธ์ง์ ํธ๊ฒฌ"์ ๋๋ค. ํนํ ์์ ๊ฐ ์์ค์ด ์๋์ ์ผ๋ก ๋์ ๋ ๋์ฑ ๊ทธ๋ ์ต๋๋ค.
๋ณธ๋ฅ๊ณผ ๊ฒฝํ์ ๋ฐํ์ผ๋ก..
๋ด ๊ฒฝํ์ ๋ฐ๋ฅด๋ฉด ์ด๋ฌํ ์๊ณก์ ์นด์ค์ค ์์ง๋์ด๋ง์ ์ด๋์ ์์ํด์ผ ํ๋์ง์ ๋ํ ํ๋ฅญํ ํํธ์ ๋๋ค.
๊ณผ์ ํ ์ด์์๋ฅผ ์กฐ์ฌํ์ธ์.
์ฐฐ๋ฆฌ: "์ด๊ฑด XNUMX๋ ๋์ ํ ๋ฒ๋ ๋ฌด๋์ง์ง ์์์ด. ๋ค ๊ด์ฐฎ์!"
์ถฉ๋: "์ ๊น๋ง์... ๊ธ๋ฐฉ ๊ฐ๊ฒ์!"
๊ณผ์ ์ผ๋ก ์ธํ ํธ๊ฒฌ์ ๊ทธ๊ฒ์ ์ํฅ์ ๋ฏธ์น๋ ๋ค์ํ ์์ธ์ผ๋ก ์ธํด ๊ตํํ๊ณ ์ฌ์ง์ด ์ํํ ๊ฒ์ ๋๋ค. ํ์๋ค์ด ๊ธฐ์ ์ ์ฌํ์ ๊ธฐ์ธ์๊ฑฐ๋ ๊ธฐ์ ์ '์์ 'ํ๋ ๋ฐ ๋ง์ ์๊ฐ์ ์๋นํ ๊ฒฝ์ฐ์๋ ํนํ ๊ทธ๋ ์ต๋๋ค.
ํฉ์ฐ
์นด์ค์ค ์์ง๋์ด๋ง์ ์ถ๋ฐ์ ์ ์ฐพ๋ ๊ฒ์ ํญ์ ์์๋ณด๋ค ๋ ๋ง์ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ์ค๋ฉฐ, ๋๋ฌด ๋นจ๋ฆฌ ์ผ์ ๊นจ๊ธฐ ์์ํ๋ ํ์ (์นด์ค์ค-)์ ๋ ๊ธ๋ก๋ฒํ๊ณ ํฅ๋ฏธ๋ก์ด ๋ณธ์ง์ ๋ง๊ฐํฉ๋๋ค.๊ณตํ - ์ฐฝ์์ ์ธ ์์ฉ ๊ณผํ์ ๋ฐฉ๋ฒ ะธ ๊ฒฝํ์ ์ฆ๊ฑฐ (์ํํธ์จ์ด) ์์คํ ์ ์ค๊ณ, ๊ฐ๋ฐ, ์ด์, ์ ์ง ๊ด๋ฆฌ ๋ฐ ๊ฐ์ ์ ์ํด.
์ด๊ฒ์ผ๋ก ๋ ๋ฒ์งธ ๋ถ๋ถ์ ๋ง์นฉ๋๋ค. ๋ฆฌ๋ทฐ๋ฅผ ์์ฑํ๊ฑฐ๋, ์๊ฒฌ์ ๊ณต์ ํ๊ฑฐ๋, ๋ฐ์๋ฅผ ๋ณด๋ด์ฃผ์ธ์.
๋ฒ์ญ๊ฐ์ ์ถ์
๋ธ๋ก๊ทธ์์๋ ์ฝ์ด๋ณด์ธ์.
- ยซ
์นด์ค์ค ์์ง๋์ด๋ง: ๊ณ ์์ ์ธ ํ๊ดด์ ๊ธฐ์ . 1 ๋ถ "; - ยซ
Kubernetes์์ ๊ณ ๊ฐ์ฉ์ฑ์ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ "; - ยซ
๋ชจ๋ํฐ๋ง ๋ฐ Kubernetes(๋ฆฌ๋ทฐ ๋ฐ ๋์์ ๋ณด๊ณ ) "; - ยซ
Kubernetes์์ kube-proxy ๋ฐ ๋ ธ๋ ๊ฐ์ฉ์ฑ ์คํ ".
์ถ์ฒ : habr.com