์๋กํ ์ฌ๋ฌ๋ถ! ์ ์ด๋ฆ์ Oleg Anastasyev์ด๊ณ ํ๋ซํผ ํ์ Odnoklassniki์์ ์ผํ๊ณ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ ์ธ์๋ Odnoklassniki์๋ ๋ง์ ํ๋์จ์ด๊ฐ ์๋ํ๊ณ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ 500๊ฐ ์ด์์ ์๋ฒ์ ์ฝ 8๊ฐ์ ๋์ ๊ฐ์ถ XNUMX๊ฐ์ ๋ฐ์ดํฐ ์ผํฐ๋ฅผ ๋ณด์ ํ๊ณ ์์ต๋๋ค. ์ด๋ ์์ ์์ ์ฐ๋ฆฌ๋ ์๋ก์ด ๊ด๋ฆฌ ์์คํ ์ ๋์ ํ๋ฉด ์ฅ๋น๋ฅผ ๋ณด๋ค ํจ์จ์ ์ผ๋ก ๋ก๋ํ๊ณ , ์ก์ธ์ค ๊ด๋ฆฌ๋ฅผ ์ฉ์ดํ๊ฒ ํ๋ฉฐ, ์ปดํจํ ๋ฆฌ์์ค์ (์ฌ)๋ถ๋ฐฐ๋ฅผ ์๋ํํ๊ณ , ์๋ก์ด ์๋น์ค ์ถ์ ์๋๋ฅผ ๋์ด๊ณ , ๋์ ์๋๋ฅผ ๋์ผ ์ ์๋ค๋ ๊ฒ์ ๊นจ๋ฌ์์ต๋๋ค. ๋๊ท๋ชจ ์ฌ๊ณ ๊น์ง.
๊ทธ ๊ฒฐ๊ณผ๋ ๋ฌด์์ ๋๊น?
์ ์ ์ฌ๋ฌ ํ๋์จ์ด ์ธ์๋ ์ด ํ๋์จ์ด๋ฅผ ์ฌ์ฉํ๋ ์ฌ๋๋ค๋ ์์ต๋๋ค. ๋ฐ์ดํฐ ์ผํฐ์ ์ง์ ๊ทผ๋ฌดํ๋ ์์ง๋์ด; ๋คํธ์ํฌ ์ํํธ์จ์ด๋ฅผ ์ค์ ํ๋ ๋คํธ์ํฌ ๋ด๋น์; ์ธํ๋ผ ํ๋ ฅ์ฑ์ ์ ๊ณตํ๋ ๊ด๋ฆฌ์ ๋๋ SRE ๊ฐ๋ฐํ์ ๊ฐ๊ฐ ํฌํธ ๊ธฐ๋ฅ์ ์ผ๋ถ๋ฅผ ๋ด๋นํฉ๋๋ค. ๊ทธ๋ค์ด ๋ง๋๋ ์ํํธ์จ์ด๋ ๋ค์๊ณผ ๊ฐ์ด ์๋ํฉ๋๋ค.
์ฌ์ฉ์ ์์ฒญ์ ๋ฉ์ธ ํฌํธ ์ ๋ฉด์์ ๋ชจ๋ ์์ ๋ฉ๋๋ค.
์ด๋ฌํ ๊ฐ ์๋น์ค๋ ๋ง์ ์์คํ ์ ๋ฐฐํฌ๋๋ฉฐ ๊ฐ ์๋น์ค์๋ ๋ชจ๋์ ๊ธฐ๋ฅ, ์ด์ ๋ฐ ๊ธฐ์ ๊ฐ๋ฐ์ ๋ด๋นํ๋ ๋ด๋น ๊ฐ๋ฐ์๊ฐ ์์ต๋๋ค. ์ด๋ฌํ ๋ชจ๋ ์๋น์ค๋ ํ๋์จ์ด ์๋ฒ์์ ์คํ๋๋ฉฐ ์ต๊ทผ๊น์ง ์ฐ๋ฆฌ๋ ์๋ฒ๋น ์ ํํ ํ๋์ ์์ ์ ์์ํ์ต๋๋ค. ์ฆ, ํน์ ์์ ์ ํนํ๋ ์๋น์ค์์ต๋๋ค.
์ ๊ทธ๋ฐ ๊ฒ๋๊น? ์ด ์ ๊ทผ ๋ฐฉ์์๋ ๋ค์๊ณผ ๊ฐ์ ๋ช ๊ฐ์ง ์ฅ์ ์ด ์์์ต๋๋ค.
- ์๋ํ๋ ๋๋ ๊ด๋ฆฌ. ์์ ์ ์ผ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์ผ๋ถ ์ค์ ์ด ํ์ํ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ์๋ฒ๋ ์ ํํ ํ๋์ ํน์ ๊ทธ๋ฃน์ ํ ๋น๋๊ณ , ์ด ๊ทธ๋ฃน์ ๋ํ cfengine ์ ์ฑ ์ด ์ค๋ช ๋๊ฑฐ๋ ์ด๋ฏธ ์ค๋ช ๋์์ผ๋ฉฐ, ์ด ๊ตฌ์ฑ์ ์ค์์์ ์ด ๊ทธ๋ฃน์ ๋ชจ๋ ์๋ฒ์ ์๋์ผ๋ก ๋กค์์๋ฉ๋๋ค.
- ์ฝ๊ฒ ํ ์ง๋จ. ์ค์ ํ๋ก์ธ์์ ๋ถํ ์ฆ๊ฐ๋ฅผ ๋ณด๊ณ ์ด ๋ถํ๊ฐ ์ด ํ๋์จ์ด ํ๋ก์ธ์์์ ์คํ๋๋ ์์ ์ ์ํด์๋ง ์์ฑ๋ ์ ์๋ค๋ ๊ฒ์ ๊นจ๋ฌ์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ๋น๋ํ ์ฌ๋์ ์ฐพ๋ ์์ ์ ๋งค์ฐ ๋นจ๋ฆฌ ๋๋ฉ๋๋ค.
- ์ฝ๊ฒ ํ ๋ชจ๋ํฐ๋ง. ์๋ฒ์ ๋ฌธ์ ๊ฐ ์์ผ๋ฉด ๋ชจ๋ํฐ์์ ์ด๋ฅผ ๋ณด๊ณ ํ๋ฏ๋ก ์ฑ ์์ด ๋๊ตฌ์๊ฒ ์๋์ง ์ ํํ ์ ์ ์์ต๋๋ค.
์ฌ๋ฌ ๋ณต์ ๋ณธ์ผ๋ก ๊ตฌ์ฑ๋ ์๋น์ค์๋ ๊ฐ๊ฐ ํ๋์ฉ ์ฌ๋ฌ ์๋ฒ๊ฐ ํ ๋น๋ฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ ์๋น์ค์ ๋ํ ์ปดํจํ ๋ฆฌ์์ค๋ ๋งค์ฐ ๊ฐ๋จํ๊ฒ ํ ๋น๋ฉ๋๋ค. ์ฆ, ์๋น์ค๊ฐ ๋ณด์ ํ ์๋ฒ ์, ์ฌ์ฉํ ์ ์๋ ์ต๋ ๋ฆฌ์์ค ์์ ๋๋ค. ์ฌ๊ธฐ์ "์ฌ์"์ ์ฌ์ฉํ๊ธฐ ์ฝ๋ค๋ ์๋ฏธ๊ฐ ์๋๋ผ ๋ฆฌ์์ค ํ ๋น์ด ์๋์ผ๋ก ์ํ๋๋ค๋ ์๋ฏธ์ ๋๋ค.
์ด ์ ๊ทผ ๋ฐฉ์์ ํตํด ์ฐ๋ฆฌ๋ ๋ค์์ ์ํํ ์๋ ์์์ต๋๋ค. ํน์ ์ฒ ๊ตฌ์ฑ ์ด ์๋ฒ์์ ์คํ ์ค์ธ ์์ ์ ๋ํด ์์ ์ด ๋ง์ ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ฒฝ์ฐ 4๊ฐ์ ๋์คํฌ๊ฐ ์๋ ์์๊ฐ ์๋ 38U ์๋ฒ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์์ ์ด ์์ ํ ๊ณ์ฐ์ ์ธ ๊ฒ์ด๋ผ๋ฉด ๋ ์ ๋ ดํ 1U ์๋ฒ๋ฅผ ๊ตฌ์ ํ ์ ์์ต๋๋ค. ์ด๋ ๊ณ์ฐ์ ์ผ๋ก ํจ์จ์ ์ ๋๋ค. ๋ฌด์๋ณด๋ค๋ ์ด ์ ๊ทผ ๋ฐฉ์์ ํตํด ์ฐ๋ฆฌ๋ ํ๋์ ์น์ํ ์์ ๋คํธ์ํฌ์ ํ์ ํ๋ ๋ก๋๋ฅผ ๊ฐ์ง XNUMX๋ฐฐ ์ ์ ์์ ์ปดํจํฐ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๊ฐ์ฅ ๋น์ผ ๊ฒ์ด ์๋ฒ๋ผ๋ ์ ์ ์์ ์งํํ๋ค๋ฉด ์ปดํจํ ์์ ์ฌ์ฉ์ ์ด๋ฌํ ํจ์จ์ฑ์ ๊ฒฝ์ ์ ํจ์จ์ฑ๋ ๋ณด์ฅํด์ผ ํฉ๋๋ค. ์ค๋ซ๋์ ํ๋์จ์ด๋ ๊ฐ์ฅ ๋น์์ผ๋ฉฐ, ์ฐ๋ฆฌ๋ ํ๋์จ์ด ๊ฐ๊ฒฉ์ ๋ฎ์ถ๊ธฐ ์ํด ๋ง์ ๋ ธ๋ ฅ์ ๊ธฐ์ธ์๊ณ , ํ๋์จ์ด ์ ๋ขฐ์ฑ ์๊ตฌ ์ฌํญ์ ์ค์ด๊ธฐ ์ํ ๋ด๊ฒฐํจ์ฑ ์๊ณ ๋ฆฌ์ฆ์ ๊ณ ์ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ค๋๋ ์ฐ๋ฆฌ๋ ์๋ฒ ๊ฐ๊ฒฉ์ด ๊ฒฐ์ ์ ์ธ ์ญํ ์ ํ์ง ์๋ ๋จ๊ณ์ ๋๋ฌํ์ต๋๋ค. ์ต์ ์ธ๋์ข ์ ๊ณ ๋ คํ์ง ์๋๋ค๋ฉด ๋์ ์๋ ์๋ฒ์ ํน์ ๊ตฌ์ฑ์ ์ค์ํ์ง ์์ต๋๋ค. ์ด์ ๋ ๋ค๋ฅธ ๋ฌธ์ ๊ฐ ์๊ฒผ์ต๋๋ค. ๋ฐ์ดํฐ ์ผํฐ์์ ์๋ฒ๊ฐ ์ฐจ์งํ๋ ๊ณต๊ฐ, ์ฆ ๋ ๊ณต๊ฐ์ ๊ฐ๊ฒฉ์ ๋๋ค.
์ด๊ฒ์ด ์ฌ์ค์ด๋ผ๋ ๊ฒ์ ๊นจ๋ซ๊ณ ์ฐ๋ฆฌ๋ ๋์ ์ผ๋ง๋ ํจ๊ณผ์ ์ผ๋ก ์ฌ์ฉํ๊ณ ์๋์ง ๊ณ์ฐํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค.
์ฐ๋ฆฌ๋ ๊ฒฝ์ ์ ์ผ๋ก ํ๋นํ ์๋ฒ ์ค์์ ๊ฐ์ฅ ๊ฐ๋ ฅํ ์๋ฒ์ ๊ฐ๊ฒฉ์ ๊ฒฐ์ ํ๊ณ , ๋์ ๋ฐฐ์นํ ์ ์๋ ์๋ฒ ์, "์๋ฒ 11๋ = ์์
XNUMX๊ฐ"๋ผ๋ ๊ธฐ์กด ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก ํด๋น ์๋ฒ์์ ์คํํ ์์
์ ๋ฐ ๊ทธ๋ฌํ ์๋ฒ์ ์์ ๊ณ์ฐํ์ต๋๋ค. ์์
์ ์ฅ๋น๋ฅผ ํ์ฉํ ์ ์์ต๋๋ค. ๊ทธ๋ค์ ์ธ๊ณ ๋๋ฌผ์ ํ๋ ธ์ต๋๋ค. ๋ ์ฌ์ฉ ํจ์จ์ ์ฝ XNUMX%์ธ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ๊ฒฐ๋ก ์ ๋ถ๋ช
ํฉ๋๋ค. ๋ฐ์ดํฐ ์ผํฐ ์ฌ์ฉ์ ํจ์จ์ฑ์ ๋์ฌ์ผ ํ๋ค๋ ๊ฒ์
๋๋ค. ํด๊ฒฐ์ฑ
์ ๋ถ๋ช
ํ ๊ฒ ๊ฐ์ต๋๋ค. ํ ์๋ฒ์์ ์ฌ๋ฌ ์์
์ ๋์์ ์คํํด์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ฌ๊ธฐ์๋ถํฐ ์ด๋ ค์์ด ์์๋ฉ๋๋ค.
๋๋ ๊ตฌ์ฑ์ ํจ์ฌ ๋ ๋ณต์กํด์ก์ต๋๋ค. ์ด์ ํ๋์ ๊ทธ๋ฃน์ ์๋ฒ์ ํ ๋นํ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค. ๊ฒฐ๊ตญ, ์ด์ ํ๋์ ์๋ฒ์์ ๋ค์ํ ๋ช ๋ น์ ์ฌ๋ฌ ์์ ์ ์์ํ ์ ์์ต๋๋ค. ๋ํ ๊ตฌ์ฑ์ด ๋ค๋ฅธ ์์ฉ ํ๋ก๊ทธ๋จ๊ณผ ์ถฉ๋ํ ์๋ ์์ต๋๋ค. ์ง๋จ๋ ๋์ฑ ๋ณต์กํด์ง๋๋ค. ์๋ฒ์์ CPU ๋๋ ๋์คํฌ ์๋น๊ฐ ์ฆ๊ฐํ๋ฉด ์ด๋ค ์์ ์ด ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋์ง ์ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ๊ฐ์ฅ ์ค์ํ ๊ฒ์ ๋์ผํ ์์คํ ์์ ์คํ๋๋ ์์ ๊ฐ์ ๊ฒฉ๋ฆฌ๊ฐ ์๋ค๋ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด ๋ค์์ ๋์ผํ ์๋ฒ์์ ๋ค๋ฅธ ๊ณ์ฐ ์์ฉ ํ๋ก๊ทธ๋จ์ด ์์๋๊ธฐ ์ ๊ณผ ํ์ ์๋ฒ ์์ ์ ํ๊ท ์๋ต ์๊ฐ์ ๋ํ ๊ทธ๋ํ์ ๋๋ค. ์ด๋ ์ฒซ ๋ฒ์งธ ์์ฉ ํ๋ก๊ทธ๋จ๊ณผ ์ ํ ๊ด๋ จ์ด ์์ต๋๋ค. ๊ธฐ๋ณธ ์์ ์ ์๋ต ์๊ฐ์ด ํฌ๊ฒ ์ฆ๊ฐํ์ต๋๋ค.
๋น์ฐํ ์ปจํ ์ด๋๋ ๊ฐ์ ๋จธ์ ์์ ์์ ์ ์คํํด์ผ ํฉ๋๋ค. ๊ฑฐ์ ๋ชจ๋ ์์ ์ด ํ๋์ OS(Linux)์์ ์คํ๋๊ฑฐ๋ ๊ทธ์ ๋ง์ถฐ ์กฐ์ ๋๋ฏ๋ก ๋ค์ํ ์ด์ ์ฒด์ ๋ฅผ ์ง์ํ ํ์๊ฐ ์์ต๋๋ค. ๋ฐ๋ผ์ ๊ฐ์ํ๋ ํ์ํ์ง ์์ผ๋ฉฐ ์ถ๊ฐ ์ค๋ฒํค๋๋ก ์ธํด ์ปจํ ์ด๋ํ๋ณด๋ค ํจ์จ์ฑ์ด ๋จ์ด์ง๋๋ค.
์๋ฒ์์ ์ง์ ์์ ์ ์คํํ๊ธฐ ์ํ ์ปจํ ์ด๋ ๊ตฌํ์ผ๋ก์ Docker๋ ์ข์ ํ๋ณด์ ๋๋ค. ํ์ผ ์์คํ ์ด๋ฏธ์ง๋ ์ถฉ๋ํ๋ ๊ตฌ์ฑ ๋ฌธ์ ๋ฅผ ์ ํด๊ฒฐํฉ๋๋ค. ์ด๋ฏธ์ง๊ฐ ์ฌ๋ฌ ๋ ์ด์ด๋ก ๊ตฌ์ฑ๋ ์ ์๋ค๋ ์ฌ์ค์ ํตํด ๊ณตํต ๋ถ๋ถ์ ๋ณ๋์ ๊ธฐ๋ณธ ๋ ์ด์ด๋ก ๋ถ๋ฆฌํ์ฌ ์ธํ๋ผ์ ์ด๋ฏธ์ง๋ฅผ ๋ฐฐํฌํ๋ ๋ฐ ํ์ํ ๋ฐ์ดํฐ ์์ ํฌ๊ฒ ์ค์ผ ์ ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ๊ธฐ๋ณธ(๊ทธ๋ฆฌ๊ณ ๊ฐ์ฅ ํฐ) ๋ ์ด์ด๊ฐ ์ ์ฒด ์ธํ๋ผ์ ๊ฑธ์ณ ๋งค์ฐ ๋น ๋ฅด๊ฒ ์บ์๋๋ฉฐ, ๋ค์ํ ์ ํ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ๋ฒ์ ์ ์ ๊ณตํ๊ธฐ ์ํด ์์ ๋ ์ด์ด๋ง ์ ์กํ๋ฉด ๋ฉ๋๋ค.
๋ํ Docker์ ๊ธฐ์ฑ ๋ ์ง์คํธ๋ฆฌ ๋ฐ ์ด๋ฏธ์ง ํ๊น ์ ์ฝ๋ ๋ฒ์ ๊ด๋ฆฌ ๋ฐ ํ๋ก๋์ ํ๊ฒฝ ์ ๋ฌ์ ์ํ ๊ธฐ์ฑ ๊ธฐ๋ณธ ์์๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋ค๋ฅธ ์ ์ฌํ ๊ธฐ์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก Docker๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ผ์ ์์ค์ ์ปจํ ์ด๋ ๊ฒฉ๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฉ๋ชจ๋ฆฌ ๊ฒฉ๋ฆฌ - ๊ฐ ์ปจํ ์ด๋์๋ ๋จธ์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ์ ๋ํ ์ ํ์ด ์ฃผ์ด์ง๋ฉฐ, ๊ทธ ์ด์์ ์๋นํ์ง ์์ต๋๋ค. CPU ์ฌ์ฉ๋์ ๊ธฐ์ค์ผ๋ก ์ปจํ ์ด๋๋ฅผ ๊ฒฉ๋ฆฌํ ์๋ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฐ๋ฆฌ์๊ฒ๋ ํ์ค ๋จ์ด๋ง์ผ๋ก๋ ์ถฉ๋ถํ์ง ์์์ต๋๋ค. ๊ทธ๋ฌ๋ ์๋์์ ๋ ์์ธํ ์ค๋ช ํฉ๋๋ค.
์๋ฒ์์ ์ปจํ ์ด๋๋ฅผ ์ง์ ์คํํ๋ ๊ฒ์ ๋ฌธ์ ์ ์ผ๋ถ์ผ ๋ฟ์ ๋๋ค. ๋ค๋ฅธ ๋ถ๋ถ์ ์๋ฒ์์ ์ปจํ ์ด๋๋ฅผ ํธ์คํ ํ๋ ๊ฒ๊ณผ ๊ด๋ จ์ด ์์ต๋๋ค. ์ด๋ค ์๋ฒ์ ์ด๋ค ์ปจํ ์ด๋๋ฅผ ๋ฐฐ์นํ ์ ์๋์ง ์ดํดํด์ผ ํฉ๋๋ค. ์ปจํ ์ด๋๋ ์๋๋ฅผ ์ค์ด์ง ์๊ณ ์ต๋ํ ์กฐ๋ฐํ๊ฒ ์๋ฒ์ ๋ฐฐ์นํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ด๋ ์ฌ์ด ์์ ์ด ์๋๋๋ค. ์ด๋ฌํ ๋ฐฐ์น๋ ๋ด๊ฒฐํจ์ฑ ์ธก๋ฉด์์๋ ์ด๋ ค์ธ ์ ์์ต๋๋ค. ์ข ์ข ์ฐ๋ฆฌ๋ ๋์ผํ ์๋น์ค์ ๋ณต์ ๋ณธ์ ๋ค๋ฅธ ๋์ด๋ ๋ฐ์ดํฐ ์ผํฐ์ ๋ค๋ฅธ ๋ฃธ์ ๋ฐฐ์นํ์ฌ ๋์ด๋ ๋ฃธ์ ์ฅ์ ๊ฐ ๋ฐ์ํ๋๋ผ๋ ๋ชจ๋ ์๋น์ค ๋ณต์ ๋ณธ์ด ์ฆ์ ์์ค๋์ง ์๋๋ก ํ๋ ค๊ณ ํฉ๋๋ค.
8๊ฐ์ ์๋ฒ์ 8~16๊ฐ์ ์ปจํ ์ด๋๊ฐ ์๋ ๊ฒฝ์ฐ ์ปจํ ์ด๋๋ฅผ ์๋์ผ๋ก ๋ฐฐํฌํ๋ ๊ฒ์ ์ต์ ์ด ์๋๋๋ค.
๋ํ ์ฐ๋ฆฌ๋ ๊ฐ๋ฐ์๊ฐ ๊ด๋ฆฌ์์ ๋์ ์์ด ํ๋ก๋์ ํ๊ฒฝ์์ ์๋น์ค๋ฅผ ์ง์ ํธ์คํ ํ ์ ์๋๋ก ๋ฆฌ์์ค ํ ๋น์ ์์ด ๋ ๋ง์ ๋ ๋ฆฝ์ฑ์ ๋ถ์ฌํ๊ณ ์ถ์์ต๋๋ค. ๋์์ ์ฐ๋ฆฌ๋ ์ผ๋ถ ์ฌ์ํ ์๋น์ค๊ฐ ๋ฐ์ดํฐ ์ผํฐ์ ๋ชจ๋ ๋ฆฌ์์ค๋ฅผ ์๋นํ์ง ์๋๋ก ์ ์ด๋ฅผ ์ ์งํ๊ณ ์ถ์์ต๋๋ค.
๋ถ๋ช ํ ์ด ์์ ์ ์๋์ผ๋ก ์ํํ๋ ์ ์ด ๊ณ์ธต์ด ํ์ํฉ๋๋ค.
๊ทธ๋์ ์ฐ๋ฆฌ๋ ๋ชจ๋ ๊ฑด์ถ๊ฐ๊ฐ ์ข์ํ๋ ๊ฐ๋จํ๊ณ ์ดํดํ๊ธฐ ์ฌ์ด ๊ทธ๋ฆผ, ์ฆ ์ธ ๊ฐ์ ์ฌ๊ฐํ์ ๋๋ฌํ์ต๋๋ค.
one-cloud masters๋ ํด๋ผ์ฐ๋ ์ค์ผ์คํธ๋ ์ด์ ์ ๋ด๋นํ๋ ์ฅ์ ์กฐ์น ํด๋ฌ์คํฐ์ ๋๋ค. ๊ฐ๋ฐ์๋ ์๋น์ค๋ฅผ ํธ์คํ ํ๋ ๋ฐ ํ์ํ ๋ชจ๋ ์ ๋ณด๊ฐ ํฌํจ๋ ๋งค๋ํ์คํธ๋ฅผ ๋ง์คํฐ์ ๋ณด๋ ๋๋ค. ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ง์คํฐ๋ ์ ํ๋ ๋ฏธ๋์ธ(์ปจํ ์ด๋๋ฅผ ์คํํ๋๋ก ์ค๊ณ๋ ๊ธฐ๊ณ)์ ๋ช ๋ น์ ๋ด๋ฆฝ๋๋ค. ๋ฏธ๋์ธ์๋ ๋ช ๋ น์ ์์ ํ๊ณ Docker์ ๋ช ๋ น์ ์คํํ๋ ์์ด์ ํธ๊ฐ ์์ผ๋ฉฐ Docker๋ Linux ์ปค๋์ ๊ตฌ์ฑํ์ฌ ํด๋น ์ปจํ ์ด๋๋ฅผ ์์ํฉ๋๋ค. ๋ช ๋ น์ ์คํํ๋ ๊ฒ ์ธ์๋ ์์ด์ ํธ๋ ๋ฏธ๋์ธ ๋จธ์ ๊ณผ ๊ทธ ์์์ ์คํ๋๋ ์ปจํ ์ด๋์ ์ํ ๋ณํ์ ๋ํด ์ง์์ ์ผ๋ก ๋ง์คํฐ์ ๋ณด๊ณ ํฉ๋๋ค.
์์ ํ ๋น
์ด์ ๋ง์ ๋ฏธ๋์ธ์ ๋ํ ๋ณด๋ค ๋ณต์กํ ์์ ํ ๋น ๋ฌธ์ ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
๋จ์ผ ํด๋ผ์ฐ๋์ ์ปดํจํ ๋ฆฌ์์ค๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ํน์ ์์ ์ ์๋น๋๋ ํ๋ก์ธ์ ์ ๋ ฅ๋์ ๋๋ค.
- ์์ ์ ์ฌ์ฉํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ ์์ ๋๋ค.
- ๋คํธ์ํฌ ํธ๋ํฝ. ๊ฐ ๋ฏธ๋์ธ์ ๋์ญํญ์ด ์ ํ๋ ํน์ ๋คํธ์ํฌ ์ธํฐํ์ด์ค๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฏ๋ก ๋คํธ์ํฌ๋ฅผ ํตํด ์ ์กํ๋ ๋ฐ์ดํฐ์ ์์ ๊ณ ๋ คํ์ง ์๊ณ ์์ ์ ๋ถ์ฐํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
- ๋์คํฌ. ๋ํ ์ด๋ฌํ ์์ ์ ์ํ ๊ณต๊ฐ์๋ ๋์คํฌ ์ ํ(HDD ๋๋ SSD)๋ ํ ๋น๋ฉ๋๋ค. ๋์คํฌ๋ ์ด๋น ์ ํ๋ ์์ ์์ฒญ(IOPS)์ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ๋จ์ผ ๋์คํฌ๊ฐ ์ฒ๋ฆฌํ ์ ์๋ ๊ฒ๋ณด๋ค ๋ ๋ง์ IOPS๋ฅผ ์์ฑํ๋ ์์ ์ ๊ฒฝ์ฐ "์คํ๋ค", ์ฆ ํด๋น ์์ ์ ์ํด ๋ ์ ์ ์ผ๋ก ์์ฝ๋์ด์ผ ํ๋ ๋์คํฌ ์ฅ์น๋ ํ ๋นํฉ๋๋ค.
๊ทธ๋ฐ ๋ค์ ์ฌ์ฉ์ ์บ์์ ๊ฐ์ ์ผ๋ถ ์๋น์ค์ ๊ฒฝ์ฐ 400๊ฐ์ ํ๋ก์ธ์ ์ฝ์ด, 2,5TB์ ๋ฉ๋ชจ๋ฆฌ, ์๋ฐฉํฅ 50Gbit/s ํธ๋ํฝ, 6๊ฐ์ ์คํ๋ค์ ์๋ 100TB์ HDD ๊ณต๊ฐ๊ณผ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์๋น๋ ๋ฆฌ์์ค๋ฅผ ๊ธฐ๋กํ ์ ์์ต๋๋ค. ๋๋ ๋ค์๊ณผ ๊ฐ์ด ๋ณด๋ค ์น์ํ ํํ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
alloc:
cpu: 400
mem: 2500
lan_in: 50g
lan_out: 50g
hdd:100x6T
์ฌ์ฉ์ ์บ์ ์๋น์ค ๋ฆฌ์์ค๋ ํ๋ก๋์ ์ธํ๋ผ์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ๋ฆฌ์์ค์ ์ผ๋ถ๋ง ์๋นํฉ๋๋ค. ๋ฐ๋ผ์ ์ด์์ ์ค๋ฅ๋ก ์ธํด ๊ฐ์๊ธฐ ์ฌ์ฉ์ ์บ์๊ฐ ํ ๋น๋ ๊ฒ๋ณด๋ค ๋ ๋ง์ ๋ฆฌ์์ค๋ฅผ ์๋นํ์ง ์๋์ง ํ์ธํ๊ณ ์ถ์ต๋๋ค. ์ฆ, ์์์ ์ ํํด์ผ ํฉ๋๋ค. ํ์ง๋ง ํ ๋น๋์ ๋ฌด์์ ๋ฌถ์ ์ ์์ต๋๊น?
๊ตฌ์ฑ ์์ ์ํธ ์์ฉ์ ๋ํ ๋งค์ฐ ๋จ์ํ๋ ๋ค์ด์ด๊ทธ๋จ์ผ๋ก ๋์๊ฐ์ ๋ค์๊ณผ ๊ฐ์ด ๋ ์์ธํ ๋ด์ฉ์ ํฌํจํ์ฌ ๋ค์ ๊ทธ๋ ค ๋ณด๊ฒ ์ต๋๋ค.
๋๊ธธ์ ๋๋ ๊ฒ:
- ์น ํ๋ฐํธ์๋์ ์์ ์ ๋์ผํ ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ์ ๊ฒฉ๋ฆฌ๋ ํด๋ฌ์คํฐ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ์ด๋ฌํ ํด๋ฌ์คํฐ๊ฐ ์ํ ๋ ผ๋ฆฌ์ ๊ณ์ธต(ํ๋ก ํธ, ์บ์, ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๊ด๋ฆฌ ๊ณ์ธต)์ ๊ตฌ๋ถํ ์ ์์ต๋๋ค.
- ํ๋ฐํธ์๋๋ ์ด๊ธฐ์ข ์ด๋ฉฐ ๋ค์ํ ๊ธฐ๋ฅ ํ์ ์์คํ ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
- ์บ์๋ ๋ฐ์ดํฐ๋ฅผ ์บ์ํ๋ ํ์ ์์คํ ์ ์ฒด์ ๋ถ์ฐ๋ ์๋ ์์ต๋๋ค.
๊ทธ๋ฆผ์ ๋ค์ ๊ทธ๋ ค ๋ณด๊ฒ ์ต๋๋ค.
๋ฐ! ์, ๊ณ์ธต ๊ตฌ์กฐ๊ฐ ๋ณด์ ๋๋ค! ์ฆ, ๋ฆฌ์์ค๋ฅผ ๋ ํฐ ๋ฉ์ด๋ฆฌ๋ก ๋ฐฐํฌํ ์ ์์ต๋๋ค. ์ฆ, ๊ธฐ๋ฅ์ ํ์ ์์คํ (์: ๊ทธ๋ฆผ์ "์์ ")์ ํด๋นํ๋ ์ด ๊ณ์ธต ๊ตฌ์กฐ์ ๋ ธ๋์ ๋ด๋น ๊ฐ๋ฐ์๋ฅผ ํ ๋นํ๊ณ ๋์ผํ ๊ณ์ธต ๊ตฌ์กฐ ์์ค์ ํ ๋น๋์ ์ฒจ๋ถํ ์ ์์ต๋๋ค. ๋ํ ์ด ๊ณ์ธต ๊ตฌ์กฐ๋ฅผ ํตํด ๊ด๋ฆฌ๊ฐ ์ฉ์ดํ๋๋ก ์๋น์ค๋ฅผ ๋ณด๋ค ์ ์ฐํ๊ฒ ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ด๊ฒ์ ๋งค์ฐ ํฐ ์๋ฒ ๊ทธ๋ฃน์ด๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ์น์ ๊ทธ๋ฆผ์ group1, group2๋ก ํ์๋ ์ฌ๋ฌ ๊ฐ์ ์์ ๊ทธ๋ฃน์ผ๋ก ๋๋๋๋ค.
์ถ๊ฐ ์ค์ ์ ๊ฑฐํ๋ฉด ๊ทธ๋ฆผ์ ๊ฐ ๋ ธ๋๋ฅผ ๋ ๋จ์ํ ํ์์ผ๋ก ์์ฑํ ์ ์์ต๋๋ค. ๊ทธ๋ฃน1.์น.ํ๋ก ํธ, api.music.front, ์ฌ์ฉ์-cache.cache.
์ด๊ฒ์ด ์ฐ๋ฆฌ๊ฐ "๊ณ์ธต์ ํ"๋ผ๋ ๊ฐ๋ ์ ๊ฐ๊ฒ ๋ ๋ฐฉ๋ฒ์ ๋๋ค. "group1.web.front"์ ๊ฐ์ ์ด๋ฆ์ด ์์ต๋๋ค. ๋ฆฌ์์ค ๋ฐ ์ฌ์ฉ์ ๊ถํ์ ๋ํ ํ ๋น๋์ด ํ ๋น๋ฉ๋๋ค. DevOps ๋ด๋น์์๊ฒ ๋๊ธฐ์ด์ ์๋น์ค๋ฅผ ๋ณด๋ผ ์ ์๋ ๊ถํ์ ๋ถ์ฌํ๊ณ ํด๋น ์ง์์ ๋๊ธฐ์ด์์ ๋ฌด์ธ๊ฐ๋ฅผ ์์ํ ์ ์์ผ๋ฉฐ OpsDev ๋ด๋น์๋ ๊ด๋ฆฌ์ ๊ถํ์ ๊ฐ๊ฒ ๋๋ฉฐ ์ด์ ๋๊ธฐ์ด์ ๊ด๋ฆฌํ๊ณ ๊ฑฐ๊ธฐ์ ์ฌ๋์ ํ ๋นํ ์ ์์ต๋๋ค. ์ด๋ค์๊ฒ ๊ถํ ๋ฑ์ ๋ถ์ฌํฉ๋๋ค. ์ด ๋๊ธฐ์ด์์ ์คํ๋๋ ์๋น์ค๋ ๋๊ธฐ์ด์ ํ ๋น๋ ๋ด์์ ์คํ๋ฉ๋๋ค. ๋๊ธฐ์ด์ ์ปดํจํ ํ ๋น๋์ด ๋ชจ๋ ์๋น์ค๋ฅผ ํ ๋ฒ์ ์คํํ๊ธฐ์ ์ถฉ๋ถํ์ง ์์ ๊ฒฝ์ฐ ์์ฐจ์ ์ผ๋ก ์คํ๋์ด ๋๊ธฐ์ด ์์ฒด๋ฅผ ํ์ฑํฉ๋๋ค.
์๋น์ค๋ฅผ ์์ธํ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์๋น์ค์๋ ํญ์ ๋๊ธฐ์ด์ ์ด๋ฆ์ ํฌํจํ๋ ์ ๊ทํ๋ ์ด๋ฆ์ด ์์ต๋๋ค. ๊ทธ๋ฌ๋ฉด ์ ๋ฉด ์น ์๋น์ค์ ์ด๋ฆ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ok-web.group1.web.front. ๊ทธ๋ฆฌ๊ณ ์ก์ธ์คํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ ์๋น์ค๊ฐ ํธ์ถ๋ฉ๋๋ค. ok-app.group1.web.front. ๊ฐ ์๋น์ค์๋ ํน์ ์ปดํจํฐ์ ๋ฐฐ์นํ๋ ๋ฐ ํ์ํ ๋ชจ๋ ์ ๋ณด(์ด ์์ ์ด ์๋นํ๋ ๋ฆฌ์์ค ์, ํ์ํ ๊ตฌ์ฑ, ์์ด์ผ ํ๋ ๋ณต์ ๋ณธ ์, ์ด ์๋น์ค ์ค๋ฅ ์ฒ๋ฆฌ๋ฅผ ์ํ ์์ฑ)๋ฅผ ์ง์ ํ๋ ๋งค๋ํ์คํธ๊ฐ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์๋น์ค๊ฐ ๋จธ์ ์ ์ง์ ๋ฐฐ์น๋๋ฉด ํด๋น ์ธ์คํด์ค๊ฐ ๋ํ๋ฉ๋๋ค. ๋ํ ์ธ์คํด์ค ๋ฒํธ์ ์๋น์ค ์ด๋ฆ์ผ๋ก ๋ช ํํ๊ฒ ์ด๋ฆ์ด ์ง์ ๋ฉ๋๋ค. 1.ok-web.group1.web.front, 2.ok-web.group1.web.front, โฆ
์ด๋ ๋งค์ฐ ํธ๋ฆฌํฉ๋๋ค. ์คํ ์ค์ธ ์ปจํ ์ด๋์ ์ด๋ฆ๋ง ๋ณด๋ฉด ์ฆ์ ๋ง์ ์ ๋ณด๋ฅผ ์์๋ผ ์ ์์ต๋๋ค.
์ด์ ์ด๋ฌํ ์ธ์คํด์ค๊ฐ ์ค์ ๋ก ์ํํ๋ ์์ , ์ฆ ์์ ์ ์์ธํ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์์ ๊ฒฉ๋ฆฌ ํด๋์ค
OK์ ๋ชจ๋ ์์ (๊ทธ๋ฆฌ๊ณ ์๋ง๋ ๋ชจ๋ ๊ณณ)์ ๊ทธ๋ฃน์ผ๋ก ๋๋ ์ ์์ต๋๋ค.
- ์งง์ ๋๊ธฐ ์๊ฐ ์์ - prod. ์ด๋ฌํ ์์ ๋ฐ ์๋น์ค์ ๊ฒฝ์ฐ ์๋ต ์ง์ฐ(๋๊ธฐ ์๊ฐ), ์ฆ ๊ฐ ์์ฒญ์ด ์์คํ ์์ ์ผ๋ง๋ ๋นจ๋ฆฌ ์ฒ๋ฆฌ๋๋์ง๊ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์์ ์ ์: ์น ํ๋ก ํธ, ์บ์, ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ, OLTP ์คํ ๋ฆฌ์ง ๋ฑ
- ๊ณ์ฐ ๋ฌธ์ - ๋ฐฐ์น. ์ฌ๊ธฐ์ ๊ฐ ํน์ ์์ฒญ์ ์ฒ๋ฆฌ ์๋๋ ์ค์ํ์ง ์์ต๋๋ค. ๊ทธ๋ค์๊ฒ๋ ์ด ์์ ์ด ํน์ (์ฅ๊ธฐ) ๊ธฐ๊ฐ(์ฒ๋ฆฌ๋) ๋์ ์ผ๋ง๋ ๋ง์ ๊ณ์ฐ์ ์ํํ๋์ง๊ฐ ์ค์ํฉ๋๋ค. ์ด๋ MapReduce, Hadoop, ๊ธฐ๊ณ ํ์ต, ํต๊ณ์ ๋ชจ๋ ์์ ์ด ๋ ๊ฒ์ ๋๋ค.
- ๋ฐฑ๊ทธ๋ผ์ด๋ ์์ - ์ ํด. ์ด๋ฌํ ์์ ์ ๊ฒฝ์ฐ ๋๊ธฐ ์๊ฐ์ด๋ ์ฒ๋ฆฌ๋์ ๊ทธ๋ค์ง ์ค์ํ์ง ์์ต๋๋ค. ์ฌ๊ธฐ์๋ ๋ค์ํ ํ ์คํธ, ๋ง์ด๊ทธ๋ ์ด์ , ์ฌ๊ณ์ฐ ๋ฐ ํ ํ์์์ ๋ค๋ฅธ ํ์์ผ๋ก์ ๋ฐ์ดํฐ ๋ณํ์ด ํฌํจ๋ฉ๋๋ค. ํํธ์ผ๋ก๋ ๊ณ์ฐ๋ ๊ฒ๊ณผ ๋น์ทํ์ง๋ง, ์ผ๋ง๋ ๋นจ๋ฆฌ ์๋ฃ๋๋์ง๋ ์ฐ๋ฆฌ์๊ฒ ๋ณ๋ก ์ค์ํ์ง ์์ต๋๋ค.
์ด๋ฌํ ์์ ์ด ์ค์ ํ๋ก์ธ์์ ๊ฐ์ ๋ฆฌ์์ค๋ฅผ ์ด๋ป๊ฒ ์๋นํ๋์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์งง์ ์ง์ฐ ์์ . ์ด๋ฌํ ์์ ์ ๋ค์๊ณผ ์ ์ฌํ CPU ์๋น ํจํด์ ๊ฐ์ต๋๋ค.
์ฒ๋ฆฌ๋ฅผ ์ํด ์ฌ์ฉ์์ ์์ฒญ์ด ์์ ๋๋ฉด ์์ ์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ CPU ์ฝ์ด๋ฅผ ์ฌ์ฉํ๊ธฐ ์์ํ๊ณ ์ด๋ฅผ ์ฒ๋ฆฌํ๋ฉฐ ์๋ต์ ๋ฐํํ๊ณ ๋ค์ ์์ฒญ์ ๊ธฐ๋ค๋ฆฐ ํ ์ค์ง๋ฉ๋๋ค. ๋ค์ ์์ฒญ์ด ๋์ฐฉํ์ต๋๋ค. ๋ค์ ์ฐ๋ฆฌ๋ ๊ฑฐ๊ธฐ์ ์๋ ๋ชจ๋ ๊ฒ์ ์ ํํ๊ณ ๊ณ์ฐํ ํ ๋ค์ ์์ฒญ์ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค.
์ด๋ฌํ ์์ ์ ๋ํ ์ต์ ๋๊ธฐ ์๊ฐ์ ๋ณด์ฅํ๋ ค๋ฉด ์๋นํ๋ ์ต๋ ๋ฆฌ์์ค๋ฅผ ํ๋ณดํ๊ณ ๋ฏธ๋์ธ(์์ ์ ์คํํ ์์คํ )์ ํ์ํ ์ฝ์ด ์๋ฅผ ์์ฝํด์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ฉด ๋ฌธ์ ์ ๋ํ ์์ฝ ๊ณต์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
alloc: cpu = 4 (max)
๊ทธ๋ฆฌ๊ณ 16๊ฐ์ ์ฝ์ด๋ฅผ ๊ฐ์ง ๋ฏธ๋์ธ ๋จธ์ ์ด ์๋ค๋ฉด ์ ํํ XNUMX๊ฐ์ ์์ ์ ๊ทธ ๋จธ์ ์ ๋ฐฐ์นํ ์ ์์ต๋๋ค. ํนํ ์ด๋ฌํ ์์ ์ ํ๊ท ํ๋ก์ธ์ ์๋น๋ ์ข ์ข ๋งค์ฐ ๋ฎ๋ค๋ ์ ์ ์ฃผ๋ชฉํฉ๋๋ค. ์ด๋ ์์ ์ด ์์ฒญ์ ๊ธฐ๋ค๋ฆฌ๋ ์๊ฐ์ ์๋น ๋ถ๋ถ์ด ์๋ฌด๊ฒ๋ ์ํํ์ง ์๊ธฐ ๋๋ฌธ์ ๋ถ๋ช ํฉ๋๋ค.
๊ณ์ฐ ์์ . ํจํด์ ์ฝ๊ฐ ๋ค๋ฆ ๋๋ค.
์ด๋ฌํ ์์ ์ ํ๊ท CPU ๋ฆฌ์์ค ์๋น๋ ์๋นํ ๋์ต๋๋ค. ์ข ์ข ๊ณ์ฐ ์์ ์ด ํน์ ์๊ฐ ๋ด์ ์๋ฃ๋๊ธฐ๋ฅผ ์ํ๋ฏ๋ก ์ ์ฒด ๊ณ์ฐ์ด ํ์ฉ ๊ฐ๋ฅํ ์๊ฐ ๋ด์ ์๋ฃ๋๋๋ก ํ์ํ ์ต์ ํ๋ก์ธ์ ์๋ฅผ ์์ฝํด์ผ ํฉ๋๋ค. ์์ฝ ๊ณต์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
alloc: cpu = [1,*)
"์ ์ด๋ ํ๋ ์ด์์ ์ฌ์ ์ฝ์ด๊ฐ ์๋ ๋ฏธ๋์ธ์ ๋ฐฐ์นํด ์ฃผ์ธ์. ๊ทธ๋ฌ๋ฉด ์ฝ์ด๊ฐ ์๋ ๋งํผ ๋ชจ๋ ๊ฒ์ ์ง์ด์ผ์ผ๋ฒ๋ฆด ๊ฒ์ ๋๋ค."
์ฌ๊ธฐ์ ์ฌ์ฉ ํจ์จ์ฑ์ ์ด๋ฏธ ์งง์ ์ง์ฐ์ด ์๋ ์์ ๋ณด๋ค ํจ์ฌ ์ข์ต๋๋ค. ๊ทธ๋ฌ๋ ํ๋์ ๋ฏธ๋์ธ ๋จธ์ ์์ ๋ ๊ฐ์ง ์ ํ์ ์์ ์ ๊ฒฐํฉํ๊ณ ์ด๋ ์ค์ ๋ฆฌ์์ค๋ฅผ ๋ฐฐํฌํ๋ฉด ์ด๋์ด ํจ์ฌ ๋ ์ปค์ง ๊ฒ์ ๋๋ค. ์ง์ฐ ์๊ฐ์ด ์งง์ ์์ ์ ํ๋ก์ธ์๊ฐ ํ์ํ ๊ฒฝ์ฐ ์ฆ์ ์ด๋ฅผ ์์ ํ๊ณ , ๋ฆฌ์์ค๊ฐ ๋ ์ด์ ํ์ํ์ง ์์ผ๋ฉด ๊ณ์ฐ ์์ ์ผ๋ก ์ ์ก๋ฉ๋๋ค. ์ฆ, ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๊ทธ๋ฌ๋ ์ด๋ป๊ฒํด์ผํฉ๋๊น?
๋จผ์ prod์ ํด๋น ํ ๋น์ ์ดํด๋ณด๊ฒ ์ต๋๋ค. cpu = 4. XNUMX๊ฐ์ ์ฝ์ด๋ฅผ ์์ฝํด์ผ ํฉ๋๋ค. Docker ์คํ์์๋ ๋ค์ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก ์ด๋ฅผ ์ํํ ์ ์์ต๋๋ค.
- ์ต์
์ฌ์ฉ
--cpuset=1-4
์ฆ, ๋จธ์ ์ ํน์ ์ฝ์ด XNUMX๊ฐ๋ฅผ ์์ ์ ํ ๋นํฉ๋๋ค. - ์ฌ์ฉ
--cpuquota=400_000 --cpuperiod=100_000
, ํ๋ก์ธ์ ์๊ฐ์ ๋ํ ํ ๋น๋์ ํ ๋นํฉ๋๋ค. ์ฆ, ์ค์๊ฐ 100ms๋ง๋ค ์์ ์ด 400ms ์ดํ์ ํ๋ก์ธ์ ์๊ฐ์ ์๋นํจ์ ๋ํ๋ ๋๋ค. ๋์ผํ XNUMX๊ฐ์ ์ฝ์ด๊ฐ ์ป์ด์ง๋๋ค.
๊ทธ๋ฌ๋ ์ด๋ค ์ค ์ด๋ค ๋ฐฉ๋ฒ์ด ์ ํฉํ๊ฐ?
cpuset์ ๊ฝค ๋งค๋ ฅ์ ์ผ๋ก ๋ณด์ ๋๋ค. ์์ ์๋ XNUMX๊ฐ์ ์ ์ฉ ์ฝ์ด๊ฐ ์์ผ๋ฉฐ ์ด๋ ํ๋ก์ธ์ ์บ์๊ฐ ์ต๋ํ ํจ์จ์ ์ผ๋ก ์๋ํจ์ ์๋ฏธํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๋จ์ ๋ ์์ต๋๋ค. OS ๋์ ๋ก๋๋์ง ์์ ๋จธ์ ์ฝ์ด ์ ์ฒด์ ๊ณ์ฐ์ ๋ถ์ฐํ๋ ์์ ์ ์ํํด์ผ ํ๋ฉฐ ์ด๋ ํนํ ์ฌ์ํ ์์ ์ด ์๋๋๋ค. ๊ธฐ๊ณ. ํ ์คํธ ๊ฒฐ๊ณผ ์ฌ๊ธฐ์๋ ํ ๋น๋์ด ์๋ ์ต์ ์ด ๋ ์ ํฉํ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ด์ ์ฒด์ ๊ฐ ํ์ฌ ์์ ์ ์ํํ ์ฝ์ด๋ฅผ ๋ ์์ ๋กญ๊ฒ ์ ํํ ์ ์๊ณ ํ๋ก์ธ์ ์๊ฐ์ด ๋ ํจ์จ์ ์ผ๋ก ๋ถ์ฐ๋ฉ๋๋ค.
์ต์ ์ฝ์ด ์๋ฅผ ๊ธฐ์ค์ผ๋ก Docker์์ ์์ฝํ๋ ๋ฐฉ๋ฒ์ ์์ ๋ณด๊ฒ ์ต๋๋ค. ์ต๋๊ฐ์ ์ ํํ ํ์๊ฐ ์๊ณ ์ต์๊ฐ๋ง ๋ณด์ฅํ๋ฉด ์ถฉ๋ถํ๋ฏ๋ก ์ผ๊ด ์์
์ ๋ํ ํ ๋น๋์ ๋ ์ด์ ์ ์ฉ๋์ง ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์ ์ต์
์ด ์ ๋ง์ต๋๋ค docker run --cpushares
.
๋ฐฐ์น์ ์ต์ ํ๋์ ์ฝ์ด์ ๋ํ ๋ณด์ฆ์ด ํ์ํ ๊ฒฝ์ฐ ๋ค์์ ํ์ํ๋ ๋ฐ ๋์ํ์ต๋๋ค. --cpushares=1024
, ์ฝ์ด๊ฐ ๋ ๊ฐ ์ด์ ์์ผ๋ฉด ํ์ํฉ๋๋ค. --cpushares=2048
. CPU ๊ณต์ ๋ ํ๋ก์ธ์ ์๊ฐ์ด ์ถฉ๋ถํ๋ค๋ฉด ๋ถ๋ฐฐ๋ฅผ ๋ฐฉํดํ์ง ์์ต๋๋ค. ๋ฐ๋ผ์ prod๊ฐ ํ์ฌ 1024๊ฐ์ ์ฝ์ด๋ฅผ ๋ชจ๋ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ์ฐ ์ผ๊ด ์์
์ ์ ํํ๋ ๊ฒ์ด ์์ผ๋ฉฐ ์ถ๊ฐ ํ๋ก์ธ์ ์๊ฐ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ํ๋ก์ธ์๊ฐ ๋ถ์กฑํ ์ํฉ์์ prod๊ฐ ์ฝ์ด 2048๊ฐ๋ฅผ ๋ชจ๋ ์๋นํ๊ณ ํ ๋น๋์ ๋๋ฌํ ๊ฒฝ์ฐ ๋จ์ ํ๋ก์ธ์ ์๊ฐ์ CPU ๊ณต์ ์ ๋น๋กํ์ฌ ๋๋์ด์ง๋๋ค. ์ฆ, ์ฌ์ฉ ๊ฐ๋ฅํ ์ฝ์ด๊ฐ XNUMX๊ฐ์ธ ์ํฉ์์๋ ํ๋๊ฐ XNUMX๊ฐ์ CPU ๊ณต์ ๊ฐ ์๋ ์์
์ ์ ๊ณต๋๊ณ ๋๋จธ์ง ๋ ๊ฐ๋ XNUMX๊ฐ์ CPU ๊ณต์ ๊ฐ ์๋ ์์
์ ์ ๊ณต๋ฉ๋๋ค.
๊ทธ๋ฌ๋ ํ ๋น๋๊ณผ ๊ณต์ ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๋ง์ผ๋ก๋ ์ถฉ๋ถํ์ง ์์ต๋๋ค. ํ๋ก์ธ์ ์๊ฐ์ ํ ๋นํ ๋ ์ง์ฐ ์๊ฐ์ด ์งง์ ์์
์ด ๋ฐฐ์น ์์
๋ณด๋ค ์ฐ์ ์์๋ฅผ ๋ฐ๋๋ก ํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ์ฐ์ ์์๊ฐ ์์ผ๋ฉด ํ๋ก๋์
์์ ํ์ํ ์๊ฐ์ ์ผ๊ด ์์
์ด ํ๋ก์ธ์ ์๊ฐ์ ๋ชจ๋ ์ฐจ์งํ๊ฒ ๋ฉ๋๋ค. Docker ์คํ์๋ ์ปจํ
์ด๋ ์ฐ์ ์์ ์ง์ ์ต์
์ด ์์ง๋ง Linux CPU ์ค์ผ์ค๋ฌ ์ ์ฑ
์ด ์ ์ฉํฉ๋๋ค. ๋น์ ์ ๊ทธ๋ค์ ๋ํด ์์ธํ ์ฝ์ ์ ์์ต๋๋ค
- SCHED_OTHER
๊ธฐ๋ณธ์ ์ผ๋ก Linux ์์คํ ์ ๋ชจ๋ ์ผ๋ฐ ์ฌ์ฉ์ ํ๋ก์ธ์ค๋ ์์ ํฉ๋๋ค. - SCHED_๋ฐฐ์น
๋ฆฌ์์ค ์ง์ฝ์ ์ธ ํ๋ก์ธ์ค๋ฅผ ์ํด ์ค๊ณ๋์์ต๋๋ค. ํ๋ก์ธ์์ ์์ ์ ๋ฐฐ์นํ๋ฉด ์์ ํ์ฑํ ํจ๋ํฐ๊ฐ ๋์ ๋ฉ๋๋ค. ์ด๋ฌํ ์์ ์ ํ์ฌ SCHED_OTHER๋ฅผ ์ฌ์ฉํ๋ ์์ ์์ ์ฌ์ฉ ์ค์ธ ๊ฒฝ์ฐ ํ๋ก์ธ์ ๋ฆฌ์์ค๋ฅผ ๋ฐ์ ๊ฐ๋ฅ์ฑ์ด ์ ์ต๋๋ค. - SCHED_IDLE
nice -19๋ณด๋ค ํจ์ฌ ๋ฎ์ ์ฐ์ ์์๋ฅผ ๊ฐ์ง ๋ฐฑ๊ทธ๋ผ์ด๋ ํ๋ก์ธ์ค์ ๋๋ค. ์ฐ๋ฆฌ๋ ์คํ ์์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค์๋์ค , ํธ์ถํ์ฌ ์ปจํ ์ด๋๋ฅผ ์์ํ ๋ ํ์ํ ์ ์ฑ ์ ์ค์ ํ๊ธฐ ์ํด
one.nio.os.Proc.sched_setscheduler( pid, Proc.SCHED_IDLE )
๊ทธ๋ฌ๋ Java๋ก ํ๋ก๊ทธ๋๋ฐํ์ง ์๋๋ผ๋ chrt ๋ช ๋ น์ ์ฌ์ฉํ์ฌ ๋์ผํ ์์ ์ ์ํํ ์ ์์ต๋๋ค.
chrt -i 0 $pid
๋ช ํ์ฑ์ ์ํด ๋ชจ๋ ๊ฒฉ๋ฆฌ ์์ค์ ํ๋์ ํ๋ก ์์ฝํด ๋ณด๊ฒ ์ต๋๋ค.
์ ์ฐ ๋ฑ๊ธ
ํ ๋น ์์
Docker ์คํ ์ต์
sched_setscheduler ์ฐจํธ*
์๊ทนํ๋ค
CPU = 4
--cpuquota=400000
--cpuperiod=100000
SCHED_OTHER
์ผ๊ด
CPU = [1, *)
--cpushares=1024
SCHED_๋ฐฐ์น
์ ํด
CPU= [2, *)
--cpushares=2048
SCHED_IDLE
*์ปจํ ์ด๋ ๋ด๋ถ์์ chrt๋ฅผ ์ํํ๋ ๊ฒฝ์ฐ sys_nice ๊ธฐ๋ฅ์ด ํ์ํ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก Docker๋ ์ปจํ ์ด๋๋ฅผ ์์ํ ๋ ์ด ๊ธฐ๋ฅ์ ์ ๊ฑฐํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
๊ทธ๋ฌ๋ ์์
์ ํ๋ก์ธ์๋ฟ๋ง ์๋๋ผ ํธ๋ํฝ๋ ์๋นํฉ๋๋ค. ์ด๋ ํ๋ก์ธ์ ๋ฆฌ์์ค์ ์๋ชป๋ ํ ๋น๋ณด๋ค ๋คํธ์ํฌ ์์
์ ๋๊ธฐ ์๊ฐ์ ๋ ํฐ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์ฐ๋ฆฌ๋ ๋น์ฐํ ๊ตํต ์ํฉ์ ๋ํด ์ ํํ ๋์ผํ ๊ทธ๋ฆผ์ ์ป๊ณ ์ถ์ดํฉ๋๋ค. ์ฆ, prod ์์
์ด ์ผ๋ถ ํจํท์ ๋คํธ์ํฌ๋ก ๋ณด๋ผ ๋ ์ต๋ ์๋๋ฅผ ์ ํํฉ๋๋ค(๊ณต์ ํ ๋น: lan=[*,500mbps) ), prod๋ฅผ ์ฌ์ฉํ๋ฉด ์ด ์์
์ ์ํํ ์ ์์ต๋๋ค. ๋ฐฐ์น์ ๊ฒฝ์ฐ ์ต์ ์ฒ๋ฆฌ๋๋ง ๋ณด์ฅํ์ง๋ง ์ต๋ ์ฒ๋ฆฌ๋์ ์ ํํ์ง ์์ต๋๋ค(๊ณต์ ํ ๋น: lan=[10Mbps,*) ) ์ด ๊ฒฝ์ฐ prod ํธ๋ํฝ์ ์ผ๊ด ์์
๋ณด๋ค ์ฐ์ ์์๋ฅผ ๋ฐ์์ผ ํฉ๋๋ค.
์ฌ๊ธฐ์ Docker์๋ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ณธ ์์๊ฐ ์์ต๋๋ค. ํ์ง๋ง ๊ทธ๊ฒ ์ฐ๋ฆฌ๋ฅผ ๋์์ฃผ๋ฌ ์์ด
์ฌ๊ธฐ์ 1:0์ hsfc ๋ถ์ผ์ "๋ฃจํธ qdisc"์ ๋๋ค. 1:1 - ์ ์ฒด ๋์ญํญ ์ ํ์ด 8Gbit/s์ธ hsfc ํ์ ํด๋์ค์ด๋ฉฐ, ๋ชจ๋ ์ปจํ ์ด๋์ ํ์ ํด๋์ค๊ฐ ๊ทธ ์๋์ ๋ฐฐ์น๋ฉ๋๋ค. 1:2 - hsfc ํ์ ํด๋์ค๋ ์๋์์ ์ค๋ช ํ๋ "๋์ " ์ ํ์ด ์๋ ๋ชจ๋ ๋ฐฐ์น ๋ฐ ์ ํด ์์ ์ ๊ณตํต๋ฉ๋๋ค. ๋๋จธ์ง hsfc ํ์ ํด๋์ค๋ ํด๋น ๋งค๋ํ์คํธ์ ํด๋นํ๋ ์ ํ(450 ๋ฐ 400Mbit/s)์ ์ฌ์ฉํ์ฌ ํ์ฌ ์คํ ์ค์ธ prod ์ปจํ ์ด๋๋ฅผ ์ํ ์ ์ฉ ํด๋์ค์ ๋๋ค. ๊ฐ hsfc ํด๋์ค์๋ Linux ์ปค๋ ๋ฒ์ ์ ๋ฐ๋ผ qdisc ๋๊ธฐ์ด fq ๋๋ fq_codel์ด ํ ๋น๋์ด ํธ๋ํฝ ๋ฒ์คํธ ์ค ํจํท ์์ค์ ๋ฐฉ์งํฉ๋๋ค.
์ผ๋ฐ์ ์ผ๋ก TC ๋ถ์ผ๋ ๋๊ฐ๋ ํธ๋ํฝ์๋ง ์ฐ์ ์์๋ฅผ ์ง์ ํ๋ ์ญํ ์ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ฐ๋ฆฌ๋ ๋ค์ด์ค๋ ํธ๋ํฝ์ ์ฐ์ ์์๋ ์ ํ๊ณ ์ถ์ต๋๋ค. ๊ฒฐ๊ตญ ์ผ๋ถ ์ผ๊ด ์์
์ ์ ์ฒด ๋ค์ด์ค๋ ์ฑ๋์ ์ฝ๊ฒ ์ ํํ ์ ์์ผ๋ฉฐ ์๋ฅผ ๋ค์ด ๋งคํ ๋ฐ ์ถ์๋ฅผ ์ํ ๋๋์ ์
๋ ฅ ๋ฐ์ดํฐ ์ผ๊ด ์ฒ๋ฆฌ๋ฅผ ์์ ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ์ํด ์ฐ๋ฆฌ๋ ๋ชจ๋์ ์ฌ์ฉํฉ๋๋ค
์คํ ์ค์ ์ฐ๋ฆฌ๋ ๋ฏธ๋์ธ ๋จธ์ ์์ ์ฐ์ ์์๊ฐ ์๋ ๋ฐฐ์น/์ ํด ํธ๋ํฝ์ 1:2 ํด๋์ค๊ฐ ํน์ ์ฌ์ ๋ ์ธ ์ดํ๋ก ์ ํ๋ ๋ hsfc๊ฐ ์ต์์ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์ธ๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํ์ต๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ฐ์ ์์๊ฐ ์๋ ํธ๋ํฝ์ด ํ๋ก๋์ ์์ ์ ์ง์ฐ ์๊ฐ์ ๋๋ฌด ๋ง์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. miniond๋ ๋งค์ด ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๋์ญํญ์ ์์ ๊ฒฐ์ ํ์ฌ ํน์ ๋ฏธ๋์ธ์ ๋ชจ๋ ์์ฐ ์์ ์ ํ๊ท ํธ๋ํฝ ์๋น๋ฅผ ์ธก์ ํฉ๋๋ค. ๋คํธ์ํฌ ์ธํฐํ์ด์ค ๋์ญํญ์์ ์ด๋ฅผ ๋บ๋๋ค. ์์ ๋ง์ง์ผ๋ก, ์ฆ
๋์ญ์ ๋ค์ด์ค๊ณ ๋๊ฐ๋ ํธ๋ํฝ์ ๋ํด ๋ ๋ฆฝ์ ์ผ๋ก ์ ์๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์๋ก์ด ๊ฐ์ ๋ฐ๋ผ miniond๋ ๋น์ฐ์ ์์ ํด๋์ค ์ ํ์ 1:2๋ก ์ฌ๊ตฌ์ฑํฉ๋๋ค.
๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ ์ธ ๊ฐ์ง ๊ฒฉ๋ฆฌ ํด๋์ค(prod, ๋ฐฐ์น ๋ฐ ์ ํด)๋ฅผ ๋ชจ๋ ๊ตฌํํ์ต๋๋ค. ์ด๋ฌํ ํด๋์ค๋ ์์ ์ ์ฑ๋ฅ ํน์ฑ์ ํฐ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ ์ด ์์ฑ์ ๊ณ์ธต ๊ตฌ์กฐ์ ์ต์์์ ๋ฐฐ์นํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ๊ทธ๋ฌ๋ฉด ๊ณ์ธต ๊ตฌ์กฐ ๋๊ธฐ์ด์ ์ด๋ฆ์ ๋ณด๋ฉด ์ฐ๋ฆฌ๊ฐ ๋ฌด์์ ๋ค๋ฃจ๊ณ ์๋์ง ์ฆ์ ์ ์ ์์ต๋๋ค.
์ฐ๋ฆฌ ์น๊ตฌ๋ค ๋ชจ๋ ์น ะธ ์์ ๊ทธ๋ฐ ๋ค์ ํ๋ฐํธ๋ prod ์๋์ ๊ณ์ธต ๊ตฌ์กฐ์ ๋ฐฐ์น๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด ๋ฐฐ์น ์๋์ ์๋น์ค๋ฅผ ๋ฐฐ์นํด ๋ณด๊ฒ ์ต๋๋ค. ์์ ์นดํ๋ก๊ทธ, Odnoklassniki์ ์ ๋ก๋๋ mp3 ํ์ผ ์ธํธ์์ ํธ๋ ์นดํ๋ก๊ทธ๋ฅผ ์ฃผ๊ธฐ์ ์ผ๋ก ์ปดํ์ผํฉ๋๋ค. ์ ํด ์ํ์ ์๋น์ค ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ์์ ๋ณ์๊ธฐ, ์์ ๋ณผ๋ฅจ ๋ ๋ฒจ์ ํ์คํํฉ๋๋ค.
์ถ๊ฐ ์ค์ ๋ค์ ์ ๊ฑฐํ๋ฉด ์ ์ฒด ์๋น์ค ์ด๋ฆ ๋์ ์์ ๊ฒฉ๋ฆฌ ํด๋์ค๋ฅผ ์ถ๊ฐํ์ฌ ์๋น์ค ์ด๋ฆ์ ๋ ๊น๋ํ๊ฒ ์์ฑํ ์ ์์ต๋๋ค. ์น.ํ๋ฐํธ.ํ๋ก๋, ์นดํ๋ก๊ทธ.์์ .๋ฐฐ์น, ๋ณ์๊ธฐ.์์ .์ ํด.
์ด์ ์๋น์ค ์ด๋ฆ์ ๋ณด๋ฉด ์๋น์ค๊ฐ ์ํํ๋ ๊ธฐ๋ฅ๋ฟ๋ง ์๋๋ผ ์ค์๋ ๋ฑ์ ์๋ฏธํ๋ ๊ฒฉ๋ฆฌ ํด๋์ค๋ ์ดํดํฉ๋๋ค.
๋ชจ๋ ๊ฒ์ด ํ๋ฅญํ์ง๋ง ํ ๊ฐ์ง ์์ธํ ์ง์ค์ด ์์ต๋๋ค. ํ ์ปดํจํฐ์์ ์คํ๋๋ ์์ ์ ์์ ํ ๊ฒฉ๋ฆฌํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
์ฐ๋ฆฌ๊ฐ ๋ฌ์ฑํ ๊ฒ: ๋ฐฐ์น๊ฐ ์ง์ค์ ์ผ๋ก ์๋นํ๋ ๊ฒฝ์ฐ ๋ง CPU ๋ฆฌ์์ค๊ฐ ์์ผ๋ฉด ๋ด์ฅ๋ Linux CPU ์ค์ผ์ค๋ฌ๊ฐ ์์ ์ ๋งค์ฐ ์ ์ํํ๋ฉฐ ์ค์ ๋ก ํ๋ก๋์ ์์ ์ ์ํฅ์ ์ฃผ์ง ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด ์ผ๊ด ์์ ์ด ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ ๊ทน์ ์ผ๋ก ์๋ํ๊ธฐ ์์ํ๋ฉด ์ํธ ์ํฅ์ด ์ด๋ฏธ ๋ํ๋ฉ๋๋ค. ์ด๋ prod ์์ ์ด ํ๋ก์ธ์์ ๋ฉ๋ชจ๋ฆฌ ์บ์์์ "์ป๊ฒจ ๋๊ฐ๊ธฐ" ๋๋ฌธ์ ๋ฐ์ํฉ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์บ์ ๋๋ฝ์ด ์ฆ๊ฐํ๊ณ ํ๋ก์ธ์๊ฐ prod ์์ ์ ๋ ๋๋ฆฌ๊ฒ ์ฒ๋ฆฌํฉ๋๋ค. ์ด๋ฌํ ์ผ๊ด ์์ ์ผ๋ก ์ธํด ์ผ๋ฐ์ ์ธ ํ๋ก๋์ ์ปจํ ์ด๋์ ๋๊ธฐ ์๊ฐ์ด 10% ์ฆ๊ฐํ ์ ์์ต๋๋ค.
์ต์ ๋คํธ์ํฌ ์นด๋์๋ ๋ด๋ถ ํจํท ๋๊ธฐ์ด์ด ์๊ธฐ ๋๋ฌธ์ ํธ๋ํฝ์ ๊ฒฉ๋ฆฌํ๋ ๊ฒ์ด ํจ์ฌ ๋ ์ด๋ ต์ต๋๋ค. ์ผ๊ด ์์ ์ ํจํท์ด ๋จผ์ ๋์ฐฉํ๋ฉด ํด๋น ํจํท์ด ์ผ์ด๋ธ์ ํตํด ๊ฐ์ฅ ๋จผ์ ์ ์ก๋๋ฉฐ ์ด์ ๋ํด ์๋ฌด ์กฐ์น๋ ์ทจํ ์ ์์ต๋๋ค.
๊ฒ๋ค๊ฐ ์ฐ๋ฆฌ๋ ์ง๊ธ๊น์ง TCP ํธ๋ํฝ ์ฐ์ ์์ ๋ฌธ์ ๋ง ํด๊ฒฐํ์ต๋๋ค. hsfc ์ ๊ทผ ๋ฐฉ์์ UDP์์๋ ์๋ํ์ง ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ TCP ํธ๋ํฝ์ ๊ฒฝ์ฐ์๋ ์ผ๊ด ์์ ์ผ๋ก ์ธํด ํธ๋ํฝ์ด ๋ง์ด ๋ฐ์ํ๋ฉด prod ์์ ์ ์ง์ฐ๋ ์ฝ 10% ์ฆ๊ฐํฉ๋๋ค.
๊ฒฐํจ ํ์ฉ
๋จ์ผ ํด๋ผ์ฐ๋๋ฅผ ๊ฐ๋ฐํ ๋์ ๋ชฉํ ์ค ํ๋๋ Odnoklassniki์ ๋ด๊ฒฐํจ์ฑ์ ํฅ์์ํค๋ ๊ฒ์ด์์ต๋๋ค. ๋ฐ๋ผ์ ๋ค์์๋ ๊ฐ๋ฅํ ์คํจ ๋ฐ ์ฌ๊ณ ์๋๋ฆฌ์ค๋ฅผ ๋ ์์ธํ ๊ณ ๋ คํ๊ณ ์ถ์ต๋๋ค. ์ปจํ ์ด๋ ์ค๋ฅ๋ผ๋ ๊ฐ๋จํ ์๋๋ฆฌ์ค๋ถํฐ ์์ํด ๋ณด๊ฒ ์ต๋๋ค.
์ปจํ ์ด๋ ์์ฒด๋ ์ฌ๋ฌ ๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก ์คํจํ ์ ์์ต๋๋ค. ์ด๋ ๋งค๋ํ์คํธ์ ํ์๋ ๊ฒ๋ณด๋ค ๋ ๋ง์ ๋ฆฌ์์ค๋ฅผ prod ์์ ์ด ์๋นํ๊ธฐ ์์ํ๋ ๋งค๋ํ์คํธ์ ์ผ์ข ์ ์คํ, ๋ฒ๊ทธ ๋๋ ์ค๋ฅ์ผ ์ ์์ต๋๋ค. ํ ๊ฐ์ง ์ฌ๋ก๊ฐ ์์์ต๋๋ค. ๊ฐ๋ฐ์๊ฐ ํ๋์ ๋ณต์กํ ์๊ณ ๋ฆฌ์ฆ์ ๊ตฌํํ๊ณ ์ด๋ฅผ ์ฌ๋ฌ ๋ฒ ์ฌ์์ ํ ํ ๋๋ฌด ํผ๋์ค๋ฌ์์ ๊ฒฐ๊ตญ ๋ฌธ์ ๊ฐ ๋งค์ฐ ์ฌ์ํ์ง ์์ ๋ฐฉ์์ผ๋ก ๋ฐ๋ณต๋์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ prod ์์ ์ ๋์ผํ ๋ฏธ๋์ธ์ ๋ค๋ฅธ ๋ชจ๋ ์์ ๋ณด๋ค ์ฐ์ ์์๊ฐ ๋๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ํ๋ก์ธ์ ๋ฆฌ์์ค๋ฅผ ์๋นํ๊ธฐ ์์ํ์ต๋๋ค. ์ด ์ํฉ์์๋ ๊ฒฉ๋ฆฌ, ์ฆ CPU ์๊ฐ ํ ๋น๋์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค. ์์ ์ ํ ๋น๋์ด ํ ๋น๋๋ฉด ํด๋น ์์ ์ ๋ ์ด์ ํ ๋น๋์ ์๋นํ์ง ์์ต๋๋ค. ๋ฐ๋ผ์ ๋์ผํ ์์คํ ์์ ์คํ๋๋ ๋ฐฐ์น ๋ฐ ๊ธฐํ ํ๋ก๋์ ์์ ์์๋ ์๋ฌด ๊ฒ๋ ๋ฐ๊ฒฌ๋์ง ์์์ต๋๋ค.
๋ ๋ฒ์งธ๋ก ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ๋ ์ปจํ ์ด๋๊ฐ ๋จ์ด์ง๋ ๊ฒ์ ๋๋ค. ์ฌ๊ธฐ์ ๋ค์ ์์ ์ ์ฑ ์ ์ฐ๋ฆฌ๋ฅผ ๊ตฌํด์ค๋๋ค. ๋ชจ๋๊ฐ ์ด๋ฅผ ์๊ณ ์์ผ๋ฉฐ Docker ์์ฒด๊ฐ ํ๋ฅญํ ์์ ์ ์ํํฉ๋๋ค. ๊ฑฐ์ ๋ชจ๋ ํ๋ก๋์ ์์ ์๋ ํญ์ ๋ค์ ์์ ์ ์ฑ ์ด ์์ต๋๋ค. ๋๋ก๋ ์ผ๊ด ์์ ์ด๋ ํ๋ก๋์ ์ปจํ ์ด๋ ๋๋ฒ๊น ์ on_failure๋ฅผ ์ฌ์ฉํฉ๋๋ค.
์ ์ฒด ๋ฏธ๋์ธ์ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ ์ด๋ป๊ฒ ํ ์ ์๋์?
๋ถ๋ช ํ ๋ค๋ฅธ ๋จธ์ ์์ ์ปจํ ์ด๋๋ฅผ ์คํํ์ญ์์ค. ์ฌ๊ธฐ์ ํฅ๋ฏธ๋ก์ด ๋ถ๋ถ์ ์ปจํ ์ด๋์ ํ ๋น๋ IP ์ฃผ์์ ์ด๋ค ์ผ์ด ๋ฐ์ํ๋์ง์ ๋๋ค.
์ปจํ ์ด๋๊ฐ ์คํ๋๋ ๋ฏธ๋์ธ ๋จธ์ ๊ณผ ๋์ผํ IP ์ฃผ์๋ฅผ ์ปจํ ์ด๋์ ํ ๋นํ ์ ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ์ปจํ ์ด๋๊ฐ ๋ค๋ฅธ ์์คํ ์์ ์์๋๋ฉด ํด๋น IP ์ฃผ์๊ฐ ๋ณ๊ฒฝ๋๊ณ ๋ชจ๋ ํด๋ผ์ด์ธํธ๋ ์ปจํ ์ด๋๊ฐ ์ด๋ํ๋ค๋ ์ฌ์ค์ ์ดํดํด์ผ ํ๋ฉฐ ์ด์ ๋ณ๋์ ์๋น์ค ๊ฒ์ ์๋น์ค๊ฐ ํ์ํ ๋ค๋ฅธ ์ฃผ์๋ก ์ด๋ํด์ผ ํฉ๋๋ค.
์๋น์ค ๊ฒ์์ด ํธ๋ฆฌํฉ๋๋ค. ์๋น์ค ๋ ์ง์คํธ๋ฆฌ๋ฅผ ๊ตฌ์ฑํ๊ธฐ ์ํด ๋ค์ํ ์์ค์ ๋ด๊ฒฐํจ์ฑ์ ์ ๊ณตํ๋ ์๋ฃจ์
์ด ์์ฅ์ ๋ง์ด ๋์ ์์ต๋๋ค. ์ด๋ฌํ ์๋ฃจ์
์ ๋ก๋ ๋ฐธ๋ฐ์ ๋ก์ง์ ๊ตฌํํ๊ณ KV ์คํ ๋ฆฌ์ง ๋ฑ์ ํํ๋ก ์ถ๊ฐ ๊ตฌ์ฑ์ ์ ์ฅํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
๊ทธ๋ฌ๋ ๋ณ๋์ ๋ ์ง์คํธ๋ฆฌ๋ฅผ ๊ตฌํํ ํ์๋ ํผํ๊ณ ์ถ์ต๋๋ค. ์ด๋ ํ๋ก๋์
์ ๋ชจ๋ ์๋น์ค์์ ์ฌ์ฉ๋๋ ์ค์ํ ์์คํ
์ ๋์
ํ๋ ๊ฒ์ ์๋ฏธํ๊ธฐ ๋๋ฌธ์
๋๋ค. ์ด๋ ์ด๊ฒ์ด ์ ์ฌ์ ์ธ ์คํจ ์ง์ ์์ ์๋ฏธํ๋ฉฐ ๋ด๊ฒฐํจ์ฑ์ด ๋งค์ฐ ๋์ ์๋ฃจ์
์ ์ ํํ๊ฑฐ๋ ๊ฐ๋ฐํด์ผ ํ๋ฉฐ ์ด๋ ๋ถ๋ช
ํ ๋งค์ฐ ์ด๋ ต๊ณ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆฌ๋ฉฐ ๋น์ฉ์ด ๋ง์ด ๋ญ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ ํ๋์ ํฐ ๋จ์ ์ ๊ธฐ์กด ์ธํ๋ผ๊ฐ ์๋ก์ด ์ธํ๋ผ์ ํจ๊ป ์๋ํ๋ ค๋ฉด ์ผ์ข
์ ์๋น์ค ๊ฒ์ ์์คํ
์ ์ฌ์ฉํ๋๋ก ๋ชจ๋ ์์
์ ์์ ํ ๋ค์ ์์ฑํด์ผ ํ๋ค๋ ๊ฒ์
๋๋ค. ๋ง์ ์์
์ด ์์ผ๋ฉฐ ์ผ๋ถ ์ฅ์์์๋ OS ์ปค๋ ์์ค์์ ์๋ํ๊ฑฐ๋ ํ๋์จ์ด์ ์ง์ ์๋ํ๋ ํ์ ์์ค ์ฅ์น์ ๊ฒฝ์ฐ ๊ฑฐ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค. ๋ค์๊ณผ ๊ฐ์ ํ๋ฆฝ๋ ์๋ฃจ์
ํจํด์ ์ฌ์ฉํ์ฌ ์ด ๊ธฐ๋ฅ์ ๊ตฌํํฉ๋๋ค.
๋จ์ผ ํด๋ผ์ฐ๋์์ IP๋ ์ปจํ ์ด๋๋ฅผ ๋ฐ๋ฆ ๋๋ค. ์ฆ, ๊ฐ ์์ ์ธ์คํด์ค์๋ ์์ฒด IP ์ฃผ์๊ฐ ์์ต๋๋ค. ์ด ์ฃผ์๋ "์ ์ "์ ๋๋ค. ์๋น์ค๊ฐ ์ฒ์ ํด๋ผ์ฐ๋๋ก ์ ์ก๋ ๋ ๊ฐ ์ธ์คํด์ค์ ํ ๋น๋ฉ๋๋ค. ์๋น์ค ์๋ช ๋์ ์๋น์ค์ ์ธ์คํด์ค ์๊ฐ ๋ค๋ฅธ ๊ฒฝ์ฐ ๊ฒฐ๊ตญ์๋ ์ต๋ ์ธ์คํด์ค ์๋งํผ IP ์ฃผ์๊ฐ ํ ๋น๋ฉ๋๋ค.
์ดํ์๋ ์ด๋ฌํ ์ฃผ์๋ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค. ํ ๋ฒ ํ ๋น๋๊ณ ํ๋ก๋์ ์๋น์ค ๊ธฐ๊ฐ ๋์ ๊ณ์ ์กด์ฌํฉ๋๋ค. IP ์ฃผ์๋ ๋คํธ์ํฌ ์ ์ฒด์์ ์ปจํ ์ด๋๋ฅผ ๋ฐ๋ฆ ๋๋ค. ์ปจํ ์ด๋๊ฐ ๋ค๋ฅธ ๋ฏธ๋์ธ์ผ๋ก ์ ์ก๋๋ฉด ์ฃผ์๊ฐ ๋ฐ๋ผ์ต๋๋ค.
๋ฐ๋ผ์ IP ์ฃผ์ ๋ชฉ๋ก์ ๋ํ ์๋น์ค ์ด๋ฆ ๋งคํ์ ๊ฑฐ์ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค. ๊ธ ์ด๋ฐ์ ์ธ๊ธํ ์๋น์ค ์ธ์คํด์ค์ ์ด๋ฆ์ ๋ค์ ์ดํด๋ณด๋ฉด(1.ok-web.group1.web.front.prod, 2.ok-web.group1.web.front.prod, โฆ), DNS์์ ์ฌ์ฉ๋๋ FQDN๊ณผ ์ ์ฌํ๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค. ๊ทธ๋ ์ต๋๋ค. ์๋น์ค ์ธ์คํด์ค ์ด๋ฆ์ ํด๋น IP ์ฃผ์์ ๋งคํํ๊ธฐ ์ํด DNS ํ๋กํ ์ฝ์ ์ฌ์ฉํฉ๋๋ค. ๋์ฑ์ด ์ด DNS๋ ์คํ ์ค์ด๊ฑฐ๋ ์ค์ง๋ ๋ชจ๋ ์ปจํ ์ด๋์ ์์ฝ๋ IP ์ฃผ์๋ฅผ ๋ชจ๋ ๋ฐํํฉ๋๋ค(XNUMX๊ฐ์ ๋ณต์ ๋ณธ์ด ์ฌ์ฉ๋๊ณ ๊ฑฐ๊ธฐ์ XNUMX๊ฐ์ ์ฃผ์๊ฐ ์์ฝ๋์ด ์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. XNUMX๊ฐ๊ฐ ๋ชจ๋ ๋ฐํ๋ฉ๋๋ค). ์ด ์ ๋ณด๋ฅผ ๋ฐ์ ํด๋ผ์ด์ธํธ๋ XNUMX๊ฐ์ ๋ณต์ ๋ณธ ๋ชจ๋์ ์ฐ๊ฒฐ์ ์๋ํ์ฌ ์๋ ์ค์ธ ๋ณต์ ๋ณธ์ ํ์ธํฉ๋๋ค. ๊ฐ์ฉ์ฑ์ ๊ฒฐ์ ํ๋ ์ด ์ต์ ์ ํจ์ฌ ๋ ์์ ์ ์ ๋๋ค. ์ฌ๊ธฐ์๋ DNS๋ ์๋น์ค ๊ฒ์์ด ํฌํจ๋์ง ์์ต๋๋ค. ์ฆ, ์ ๋ณด์ ๊ด๋ จ์ฑ๊ณผ ์ด๋ฌํ ์์คํ ์ ๋ด๊ฒฐํจ์ฑ์ ๋ณด์ฅํ๋ ๋ฐ ํด๊ฒฐํ๊ธฐ ์ด๋ ค์ด ๋ฌธ์ ๊ฐ ์์์ ์๋ฏธํฉ๋๋ค. ๋ํ ์ ์ฒด ํฌํธ์ ์ด์์ด ์์กดํ๋ ์ค์ํ ์๋น์ค์์๋ DNS๋ฅผ ์ ํ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ๊ตฌ์ฑ์ IP ์ฃผ์๋ง ์ ๋ ฅํ๋ฉด ๋ฉ๋๋ค.
์ปจํ ์ด๋ ๋ค์์ ์ด๋ฌํ IP ์ ์ก์ ๊ตฌํํ๋ ๊ฒ์ ๊ฐ๋จํ์ง ์์ ์ ์์ผ๋ฉฐ ๋ค์ ์๋ฅผ ํตํด ์ด๊ฒ์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค.
๋จ์ผ ํด๋ผ์ฐ๋ ๋ง์คํฐ๊ฐ ๋ฏธ๋์ธ M1์๊ฒ ์คํ ๋ช
๋ น์ ๋ด๋ฆฐ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. 1.ok-web.group1.web.front.prod ์ฃผ์ 1.1.1.1. ๋ฏธ๋์ธ์์ ์๋
์ด์ ๋จ์ผ ํด๋ผ์ฐ๋ ๋ง์คํฐ์ M1 ๋ฏธ๋์ธ ๊ฐ์ ์ฐ๊ฒฐ์ด ๋์ด์ก๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ์ด์ ๋จ์ผ ํด๋ผ์ฐ๋ ๋ง์คํฐ๋ M1์ด ์์ ํ ์คํจํ๋ค๋ ๊ฐ์ ์ ๋ฐ๋ผ ์กฐ์น๋ฅผ ์ทจํฉ๋๋ค. ์ฆ, M2 ๋ฏธ๋์ธ์๊ฒ ๋ฐ์ฌํ๋ผ๋ ๋ช ๋ น์ ๋ด๋ฆฝ๋๋ค. web.group1.web.front.prod ๋์ผํ ์ฃผ์ 1.1.1.1. ์ด์ 1.1.1.1์ ๋คํธ์ํฌ์๋ M1๊ณผ M2๋ผ๋ ๋ ๊ฐ์ ์ถฉ๋ํ๋ ๊ฒฝ๋ก๊ฐ ์์ต๋๋ค. ์ด๋ฌํ ์ถฉ๋์ ํด๊ฒฐํ๊ธฐ ์ํด ์ฐ๋ฆฌ๋ BGP ๊ณต์ง์ ๋ช ์๋ Multi Exit Discriminator๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ด๋ ๊ด๊ณ ๋ ๊ฒฝ๋ก์ ๊ฐ์ค์น๋ฅผ ๋ํ๋ด๋ ์ซ์์ ๋๋ค. ์ถฉ๋ํ๋ ๊ฒฝ๋ก ์ค์์ MED ๊ฐ์ด ๋ฎ์ ๊ฒฝ๋ก๊ฐ ์ ํ๋ฉ๋๋ค. ๋จ์ผ ํด๋ผ์ฐ๋ ๋ง์คํฐ๋ ์ปจํ ์ด๋ IP ์ฃผ์์ ํ์ ๋ถ๋ถ์ผ๋ก MED๋ฅผ ์ง์ํฉ๋๋ค. ์ฒ์์ผ๋ก ์ฃผ์๋ ์ถฉ๋ถํ ํฐ MED = 1์ผ๋ก ๊ธฐ๋ก๋๋๋ฐ, ์ด๋ฌํ ๊ธด๊ธ ์ปจํ ์ด๋ ์ ์ก ์ํฉ์์ ๋ง์คํฐ๋ MED๋ฅผ ์ค์ด๊ณ M000๋ ์ด๋ฏธ MED =๋ก ์ฃผ์ 000์ ๊ด๊ณ ํ๋ผ๋ ๋ช ๋ น์ ์์ ํฉ๋๋ค. 2. M1.1.1.1์์ ์คํ ์ค์ธ ์ธ์คํด์ค๋ ์ด ๊ฒฝ์ฐ ์ฐ๊ฒฐ์ด ์์ผ๋ฉฐ ๋ง์คํฐ์์ ์ฐ๊ฒฐ์ด ๋ณต์๋ ๋๊น์ง ๋ง์คํฐ๊ฐ ์ด์ ํ ์ดํฌ์ฒ๋ผ ์ค์ง๋ ๋๊น์ง ๊ทธ์ ์ถ๊ฐ ์ด๋ช ์ ์ฐ๋ฆฌ์๊ฒ ๊ฑฐ์ ๊ด์ฌ์ด ์์ต๋๋ค.
์ฌ๊ณ
๋ชจ๋ ๋ฐ์ดํฐ ์ผํฐ ๊ด๋ฆฌ ์์คํ ์ ํญ์ ์ฌ์ํ ์ค๋ฅ๋ฅผ ์์ฉ ๊ฐ๋ฅํ๊ฒ ์ฒ๋ฆฌํฉ๋๋ค. ์ปจํ ์ด๋ ์ค๋ฒํ๋ก๋ ๊ฑฐ์ ๋ชจ๋ ๊ณณ์์ ์ผ๋ฐ์ ์ธ ํ์์ ๋๋ค.
๋ฐ์ดํฐ ์ผํฐ์ ํ๋ ์ด์์ ๊ณต๊ฐ์์ ์ ์ ๊ณผ ๊ฐ์ ๊ธด๊ธ ์ํฉ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
๋ฐ์ดํฐ์ผํฐ ๊ด๋ฆฌ ์์คํ ์ ์์ด ์ฌ๊ณ ๋ ๋ฌด์์ ์๋ฏธํ๋์? ์ฐ์ , ์ด๋ ๋ง์ ์์คํ ์ ๋๊ท๋ชจ ์ผํ์ฑ ์ค๋ฅ์ด๋ฉฐ ์ ์ด ์์คํ ์ ๋์์ ๋ง์ ์ปจํ ์ด๋๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํด์ผ ํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ฌํด ๊ท๋ชจ๊ฐ ๋งค์ฐ ํฐ ๊ฒฝ์ฐ ๋ฐ์ดํฐ ์ผํฐ์ ๋ฆฌ์์ค ์ฉ๋์ด ๋ถํ์ 100% ๋ฏธ๋ง์ผ๋ก ๋จ์ด์ง๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ์์ ์ ๋ค๋ฅธ ๋ฏธ๋์ธ์๊ฒ ๋ค์ ํ ๋นํ ์ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
์ข ์ข ์ฌ๊ณ ๋ ์ ์ด ๊ณ์ธต์ ์คํจ๋ฅผ ๋๋ฐํฉ๋๋ค. ์ด๋ ์ฅ๋น ๊ณ ์ฅ์ผ๋ก ์ธํด ๋ฐ์ํ ์ ์์ง๋ง ์ฌ๊ณ ๊ฐ ํ ์คํธ๋์ง ์๊ณ ๋ถํ ์ฆ๊ฐ๋ก ์ธํด ์ ์ด ๊ณ์ธต ์์ฒด๊ฐ ๋จ์ด์ง๊ธฐ ๋๋ฌธ์ ๋ ์์ฃผ ๋ฐ์ํฉ๋๋ค.
์ด ๋ชจ๋ ๊ฒ์ ๋ํด ๋ฌด์์ ํ ์ ์์ต๋๊น?
๋๋ ๋ง์ด๊ทธ๋ ์ด์ ์ ์ธํ๋ผ์์ ์๋ง์ ํ๋, ๋ง์ด๊ทธ๋ ์ด์ ๋ฐ ๋ฐฐํฌ๊ฐ ๋ฐ์ํจ์ ์๋ฏธํฉ๋๋ค. ๊ฐ ๋ง์ด๊ทธ๋ ์ด์ ์ ๋ฏธ๋์ธ์๊ฒ ์ปจํ ์ด๋ ์ด๋ฏธ์ง๋ฅผ ์ ๋ฌ ๋ฐ ์์ถ ํด์ ํ๊ณ , ์ปจํ ์ด๋๋ฅผ ์์ ๋ฐ ์ด๊ธฐํํ๋ ๋ฐ ํ์ํ ์๊ฐ์ด ๊ฑธ๋ฆด ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ๋ ์ค์ํ ์์ ๋ณด๋ค ๋ ์ค์ํ ์์ ์ ์์ํ๋ ๊ฒ์ด ๋ฐ๋์งํฉ๋๋ค.
์ฐ๋ฆฌ์๊ฒ ์ต์ํ ์๋น์ค ๊ณ์ธต ๊ตฌ์กฐ๋ฅผ ๋ค์ ์ดํด๋ณด๊ณ ์ด๋ค ์์ ์ ๋จผ์ ์คํํ ์ง ๊ฒฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
๋ฌผ๋ก ์ด๋ ์ฌ์ฉ์ ์์ฒญ ์ฒ๋ฆฌ์ ์ง์ ์ ์ผ๋ก ๊ด์ฌํ๋ ํ๋ก์ธ์ค์ ๋๋ค. ์ฐ๋ฆฌ๋ ์ด๊ฒ์ ๋ค์๊ณผ ๊ฐ์ด ํ์ํฉ๋๋ค. ๋ฐฐ์น ์ฐ์ ์์ โ ๋๊ธฐ์ด์ ํ ๋นํ ์ ์๋ ๋ฒํธ์ ๋๋ค. ๋๊ธฐ์ด์ ์ฐ์ ์์๊ฐ ๋ ๋์ผ๋ฉด ํด๋น ์๋น์ค๊ฐ ๋จผ์ ๋ฐฐ์น๋ฉ๋๋ค.
prod์์๋ ๋ ๋์ ์ฐ์ ์์์ธ 0์ ํ ๋นํฉ๋๋ค. ์ผ๊ด ์ฒ๋ฆฌ - ์กฐ๊ธ ๋ ๋ฎ์, 100; ์ ํด ์ํ - ๋ ๋ฎ์ 200. ์ฐ์ ์์๋ ๊ณ์ธต์ ์ผ๋ก ์ ์ฉ๋ฉ๋๋ค. ๊ณ์ธต ๊ตฌ์กฐ์์ ๋ ๋ฎ์ ๋ชจ๋ ์์ ์๋ ํด๋น ์ฐ์ ์์๊ฐ ์์ต๋๋ค. ํ๋ก๋์ ๋ด๋ถ์ ์บ์๊ฐ ํ๋ฐํธ์๋๋ณด๋ค ๋จผ์ ์คํ๋๋๋ก ํ๋ ค๋ฉด ์บ์ = 0, ์ ๋ฉด ํ์ ํ = 1์ ์ฐ์ ์์๋ฅผ ํ ๋นํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฉ์ธ ํฌํธ์ด ํ๋ฐํธ์๋์์ ๋จผ์ ์์๋๊ณ ๋ฎค์ง ํ๋ฐํธ๋ง ์์๋๋๋ก ํ๋ ค๋ ๊ฒฝ์ฐ ๊ทธ๋ฐ ๋ค์ ํ์์ ๋ ๋ฎ์ ์ฐ์ ์์(10)๋ฅผ ํ ๋นํ ์ ์์ต๋๋ค.
๋ค์ ๋ฌธ์ ๋ ์์ ๋ถ์กฑ์ด๋ค. ๋ฐ๋ผ์ ๋ง์ ์์ ์ฅ๋น, ๋ฐ์ดํฐ ์ผํฐ ์ ์ฒด ํ์ด ์คํจํ๊ณ ์ฐ๋ฆฌ๋ ๋๋ฌด ๋ง์ ์๋น์ค๋ฅผ ๋ค์ ์์ํ์ฌ ์ด์ ๋ชจ๋ ์ฌ๋์ ์ํ ๋ฆฌ์์ค๊ฐ ์ถฉ๋ถํ์ง ์์ต๋๋ค. ์ฃผ์ ํต์ฌ ์๋น์ค๋ฅผ ๊ณ์ ์คํํ๊ธฐ ์ํด ํฌ์ํ ์์ ์ ๊ฒฐ์ ํด์ผ ํฉ๋๋ค.
๋ฐฐ์น ์ฐ์ ์์์ ๋ฌ๋ฆฌ ๋ชจ๋ ๋ฐฐ์น ์์ ์ ๋ฌด์ฐจ๋ณ์ ์ผ๋ก ํฌ์ํ ์๋ ์์ผ๋ฉฐ ์ผ๋ถ ์์ ์ ํฌํธ ์ด์์ ์ค์ํฉ๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก ๋ณ๋๋ก ๊ฐ์กฐ ํ์ํ์ต๋๋ค. ์ ์ ์ฐ์ ์์ ์์ . ๋ฐฐ์น๋๋ฉด ์ฐ์ ์์๊ฐ ๋์ ์์ ์ด ์ ์ ๋ ์ ์์ต๋๋ค. ์ฆ, ๋ฌด๋ฃ ํ์์ธ์ด ๋ ์ด์ ์์ผ๋ฉด ์ฐ์ ์์๊ฐ ๋ฎ์ ์์ ์ ์ค์งํ ์ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ ์ฐ์ ์์๊ฐ ๋ฎ์ ์์ ์ ๋ฐฐ์น๋์ง ์์ ์ํ๋ก ๋จ์ ์์ ์ ์์ต๋๋ค. ์ฆ, ์ถฉ๋ถํ ์ฌ์ ๋ฆฌ์์ค๋ฅผ ๊ฐ์ถ ํด๋น ์์ ์ ์ ํฉํ ํ์์ธ์ด ๋ ์ด์ ์์ ๊ฒ์ ๋๋ค.
๊ณ์ธต ๊ตฌ์กฐ์์๋ ์ ํด ์ฐ์ ์์๋ฅผ 200์ผ๋ก ์ง์ ํ์ฌ ์์ฐ ๋ฐ ๋ฐฐ์น ์์ ์ด ์ ํด ์์ ์ ์ ์ ํ๊ฑฐ๋ ์ค์งํ์ง๋ง ์๋ก๋ ์ ์ ํ์ง ์๋๋ก ์ ์ ์ฐ์ ์์๋ฅผ ์ง์ ํ๋ ๊ฒ์ด ๋งค์ฐ ๊ฐ๋จํฉ๋๋ค. ๋ฐฐ์น ์ฐ์ ์์์ ๊ฒฝ์ฐ์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ ๋ณต์กํ ๊ท์น์ ์ค๋ช ํ๊ธฐ ์ํด ๊ณ์ธต ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋ฉ์ธ ์น ํฌํธ์ ๋ํ ๋ฆฌ์์ค๊ฐ ์ถฉ๋ถํ์ง ์์ ๊ฒฝ์ฐ ์์ ๊ธฐ๋ฅ์ ํฌ์ํ๊ณ ํด๋น ๋ ธ๋์ ์ฐ์ ์์๋ฅผ 10์ผ๋ก ๋ฎ๊ฒ ์ค์ ํ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
DC ์ฌ๊ณ ์ ์ฒด
์ ์ฒด ๋ฐ์ดํฐ ์ผํฐ๊ฐ ์คํจํ๋ ์ด์ ๋ ๋ฌด์์
๋๊น? ์์. ์ข์ ํฌ์คํ
์ด์์ต๋๋ค
๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ด ๋๊ตฐ๊ฐ๊ฐ #alive๋ก ํธ์ํ๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ฐ๋ฆฌ๊ฐ ํ๋ ์ผ์ ๋๋ค.
์ฒซ ๋ฒ์งธ ์ ๋ต์ ๊ฒฉ๋ฆฌ์
๋๋ค. ๊ฐ ๋จ์ผ ํด๋ผ์ฐ๋ ์ธ์คํด์ค๋ ๊ฒฉ๋ฆฌ๋์ด ์์ผ๋ฉฐ ํ๋์ ๋ฐ์ดํฐ ์ผํฐ์์๋ง ์์คํ
์ ๊ด๋ฆฌํ ์ ์์ต๋๋ค. ์ฆ, ๋ฒ๊ทธ๋ ์๋ชป๋ ์ด์์ ๋ช
๋ น์ผ๋ก ์ธํ ํด๋ผ์ฐ๋์ ์์ค์ ๋จ ํ๋์ ๋ฐ์ดํฐ ์ผํฐ์ ์์ค์
๋๋ค. ์ฐ๋ฆฌ๋ ์ด์ ๋ํ ์ค๋น๊ฐ ๋์ด ์์ต๋๋ค. ์ ํ๋ฆฌ์ผ์ด์
๊ณผ ๋ฐ์ดํฐ์ ๋ณต์ ๋ณธ์ด ๋ชจ๋ ๋ฐ์ดํฐ ์ผํฐ์ ์์นํ๋ ์ค๋ณต ์ ์ฑ
์ด ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋ด๊ฒฐํจ์ฑ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ๊ณ ์ฃผ๊ธฐ์ ์ผ๋ก ์ค๋ฅ๋ฅผ ํ
์คํธํฉ๋๋ค.
ํ์ฌ ์ฐ๋ฆฌ๋ XNUMX๊ฐ์ ๋ฐ์ดํฐ ์ผํฐ๋ฅผ ๋ณด์ ํ๊ณ ์์ต๋๋ค. ์ด๋ XNUMX๊ฐ์ ๋ณ๋์ ์์ ํ ๊ฒฉ๋ฆฌ๋ ๋จ์ผ ํด๋ผ์ฐ๋ ์ธ์คํด์ค๋ฅผ ์๋ฏธํฉ๋๋ค.
์ด ์ ๊ทผ ๋ฐฉ์์ ๋ฌผ๋ฆฌ์ ์ค๋ฅ๋ก๋ถํฐ ๋ณดํธํ ๋ฟ๋ง ์๋๋ผ ์ด์์ ์ค๋ฅ๋ก๋ถํฐ๋ ๋ณดํธํ ์ ์์ต๋๋ค.
์ธ์ ์์๋ก ๋ ๋ฌด์์ ํ ์ ์์ต๋๊น? ์ด์์๊ฐ ํด๋ผ์ฐ๋์ ์ด์ํ๊ฑฐ๋ ์ ์ฌ์ ์ผ๋ก ์ํํ ๋ช ๋ น์ ๋ด๋ฆด ๋ ๊ฐ์๊ธฐ ์์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ฌ ์์ ์ ์๊ฐ์ด ์ผ๋ง๋ ๋๋์ง ํ์ธํ๋ผ๋ ์์ฒญ์ ๋ฐ์ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์ด๊ฒ์ด ๋ง์ ๋ณต์ ๋ณธ์ ๋๋ ์ค์ง์ด๊ฑฐ๋ ์ด์ํ ๋ช ๋ น์ธ ๊ฒฝ์ฐ ์ ๋งค๋ํ์คํธ์ ๋ฒ์ ๋ฒํธ๋ฟ๋ง ์๋๋ผ ๋ณต์ ๋ณธ ์๋ฅผ ์ค์ด๊ฑฐ๋ ์ด๋ฏธ์ง ์ด๋ฆ์ ๋ณ๊ฒฝํ๋ ๊ฒ์ ๋๋ค.
๊ฒฐ๊ณผ
์ํด๋ผ์ฐ๋์ ํน์ง:
- ์๋น์ค ๋ฐ ์ปจํ ์ด๋์ ๋ํ ๊ณ์ธต์ ๋ฐ ์๊ฐ์ ์ด๋ฆ ์ง์ ์ฒด๊ณ๋ฅผ ์ฌ์ฉํ๋ฉด ์์ ์ด ๋ฌด์์ธ์ง, ์์ ๊ณผ ๊ด๋ จ์ด ์๋์ง, ์์ ๋ฐฉ์๊ณผ ์ฑ ์์๊ฐ ๋๊ตฌ์ธ์ง ๋งค์ฐ ๋น ๋ฅด๊ฒ ํ์ธํ ์ ์์ต๋๋ค.
- ์ฐ๋ฆฌ๋ ์ฐ๋ฆฌ์ ์์ฐ ๋ฐ ๋ฐฐ์น๋ฅผ ๊ฒฐํฉํ๋ ๊ธฐ์ ๋จธ์ ๊ณต์ ์ ํจ์จ์ฑ์ ๋์ด๊ธฐ ์ํด ๋ฏธ๋์ธ์ ๋ํ ์์ ์ ์ํํฉ๋๋ค. cpuset ๋์ CPU ํ ๋น๋, ๊ณต์ , CPU ์ค์ผ์ค๋ฌ ์ ์ฑ ๋ฐ Linux QoS๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- ๋์ผํ ๋จธ์ ์์ ์คํ๋๋ ์ปจํ ์ด๋๋ฅผ ์์ ํ ๊ฒฉ๋ฆฌํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ์ง๋ง ์ํธ ์ํฅ์ 20% ์ด๋ด๋ก ์ ์ง๋ฉ๋๋ค.
- ์๋น์ค๋ฅผ ๊ณ์ธต ๊ตฌ์กฐ๋ก ๊ตฌ์ฑํ๋ฉด ์๋ ์ฌํด ๋ณต๊ตฌ์ ๋์์ด ๋ฉ๋๋ค. ๋ฐฐ์น ๋ฐ ์ ์ ์ฐ์ ์์.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
๊ธฐ์ฑ ์๋ฃจ์ ์ ์ฌ์ฉํ์ง ์์ ์ด์ ๋ ๋ฌด์์ ๋๊น?
- ๋ค์ํ ํด๋์ค์ ์์ ๊ฒฉ๋ฆฌ๋ฅผ ๋ฏธ๋์ธ์ ๋ฐฐ์นํ ๋ ๋ค๋ฅธ ๋ ผ๋ฆฌ๊ฐ ํ์ํฉ๋๋ค. ๋จ์ํ ๋ฆฌ์์ค๋ฅผ ์์ฝํ์ฌ ํ๋ก๋์ ์์ ์ ๋ฐฐ์นํ ์ ์๋ค๋ฉด ๋ฐฐ์น ๋ฐ ์ ํด ์์ ์ ๋ฐฐ์นํ์ฌ ๋ฏธ๋์ธ ๋จธ์ ์์ ๋ฆฌ์์ค์ ์ค์ ํ์ฉ๋๋ฅผ ์ถ์ ํด์ผ ํฉ๋๋ค.
- ๋ค์๊ณผ ๊ฐ์ ์์
์ ์ฌ์ฉ๋๋ ๋ฆฌ์์ค๋ฅผ ๊ณ ๋ คํด์ผ ํฉ๋๋ค.
- ๋คํธ์ํฌ ๋์ญํญ;
- ๋์คํฌ์ ์ ํ ๋ฐ "์คํ๋ค".
- ๋น์ ๋์ ์ค ์๋น์ค ์ฐ์ ์์, ๋ฆฌ์์ค์ ๋ํ ๋ช ๋ น ๊ถํ ๋ฐ ํ ๋น๋์ ํ์ํด์ผ ํ๋ ํ์์ฑ์ ๋จ์ผ ํด๋ผ์ฐ๋์ ๊ณ์ธต์ ๋๊ธฐ์ด์ ์ฌ์ฉํ์ฌ ํด๊ฒฐ๋ฉ๋๋ค.
- ์ฌ๊ณ ๋ฐ ์ฌ๊ฑด์ ๋ํ ๋์ ์๊ฐ์ ์ค์ด๊ธฐ ์ํด ์ปจํ ์ด๋์ ์ฌ๋์ด ์ด๋ฆ์ ๋ถ์ผ ํ์๊ฐ ์์
- ์๋น์ค ๊ฒ์์ ์ผํ์ฑ์ผ๋ก ๊ด๋ฒ์ํ๊ฒ ๊ตฌํํ๋ ๊ฒ์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค. ํ๋์จ์ด ํธ์คํธ์์ ํธ์คํ ๋๋ ์์ ๊ณผ ์ค๋ซ๋์ ๊ณต์กดํด์ผ ํ๋ ํ์์ฑ(์ปจํ ์ด๋๋ฅผ ๋ฐ๋ฅด๋ "์ ์ " IP ์ฃผ์๋ก ํด๊ฒฐ๋๋ ๋ฌธ์ , ๊ฒฐ๊ณผ์ ์ผ๋ก ๋๊ท๋ชจ ๋คํธ์ํฌ ์ธํ๋ผ์์ ๊ณ ์ ํ ํตํฉ์ ๋ํ ํ์์ฑ)
์ด๋ฌํ ๋ชจ๋ ๊ธฐ๋ฅ์ ์ฐ๋ฆฌ์๊ฒ ์ ํฉํ๋๋ก ๊ธฐ์กด ์๋ฃจ์ ์ ๋ํญ ์์ ํด์ผ ํ๋ฉฐ ์์ ๋์ ํ๊ฐํ ๊ฒฐ๊ณผ ๊ฑฐ์ ๋์ผํ ์ธ๊ฑด๋น๋ก ์์ฒด ์๋ฃจ์ ์ ๊ฐ๋ฐํ ์ ์๋ค๋ ๊ฒ์ ๊นจ๋ฌ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทํ์ ์๋ฃจ์ ์ ์ด์ ๋ฐ ๊ฐ๋ฐ์ด ํจ์ฌ ๋ ์ฌ์ธ ๊ฒ์ ๋๋ค. ํ์ํ์ง ์์ ๊ธฐ๋ฅ์ ์ง์ํ๋ ๋ถํ์ํ ์ถ์ํ๊ฐ ํฌํจ๋์ด ์์ง ์์ต๋๋ค.
๋ง์ง๋ง ์ค๊น์ง ์ฝ์ด์ฃผ์ ๋ถ๋ค์ ๋ง์ ์ํด์ ๊ด์ฌ ๋ถํ๋๋ฆฝ๋๋ค!
์ถ์ฒ : habr.com