
๋ฉ๋ชจ. ๋ฒ์ญ: ์ด ๊ธฐ์ฌ์ ์ ์(Luc Perkins)๋ Linkerd, SMI(Service Mesh Interface), Kuma์ ๊ฐ์ ์คํ ์์ค ํ๋ก์ ํธ์ ๋ณธ๊ฑฐ์ง์ธ CNCF์ ๊ฐ๋ฐ์ ์นํธ์์
๋๋ค. (๊ทธ๋ฐ๋ฐ Istio๊ฐ ์ด ๋ชฉ๋ก์ ์๋ ์ด์ ๊ฐ ๊ถ๊ธํ๋ ์ ์๋์?) "์๋น์ค ๋ฉ์"๋ผ๋ ์ ํ์ด๋ฅผ DevOps ์ปค๋ฎค๋ํฐ์์ ๋ ์ ์ดํดํ๋๋ก ํ๊ธฐ ์ํ ๋ ๋ค๋ฅธ ์๋๋ก, ๊ทธ๋ ์ด๋ฌํ ์๋ฃจ์
์ด ์ ๊ณตํ๋ 16๊ฐ์ง ์ผ๋ฐ์ ์ธ ๊ธฐ๋ฅ์ ๋์ดํ์ต๋๋ค.
์ค๋ โ ์ํํธ์จ์ด ์์ง๋์ด๋ง ๋ถ์ผ์์ ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ์ฃผ์ ์ค ํ๋์ ๋๋ค(๋ฌผ๋ก ๊ทธ๋ด ๋งํ ์ด์ ๋ ์๊ฒ ์ฃ !). ์ ๋ ์ด ๊ธฐ์ ์ด ์์ฒญ๋๊ฒ ์ ๋งํ๋ค๊ณ ์๊ฐํ๊ณ , (๋ฌผ๋ก ํฉ๋ฆฌ์ ์ผ๋ก ๋ฐ์๋ค์ฌ์ง ๋) ๋๋ฆฌ ์ฑํ๋๋ ๊ฒ์ ๋ณด๊ณ ์ถ์ต๋๋ค. ํ์ง๋ง ๋๋ถ๋ถ์ ์ฌ๋๋ค์๊ฒ๋ ์ฌ์ ํ ์ ๋น๋ก์ด ๋ถ์๊ธฐ์ ๋๋ฌ์ธ์ฌ ์์ต๋๋ค. ๊ฒ๋ค๊ฐ, ์ฌ์ง์ด๋ ๋๋ ๊ทธ๋ฅผ ์ ์๊ณ ์๋ค ๊ทธ๊ฒ์ ์ฌ์ฉํ๋ฉด ์ข ์ข ๊ทธ๊ฒ์ ์ฅ์ ์ด๋ ๊ทธ๊ฒ์ด ์ ํํ ๋ฌด์์ธ์ง ์ค๋ช ํ๋ ๋ฐ ์ด๋ ค์์ ๊ฒช์ต๋๋ค(๊ทํ์ ๊ฒธ์ํ ํ์ธ์ ํฌํจํ์ฌ). ์ด ๊ธฐ์ฌ์์๋ ๋ค์ํ ์ฌํญ์ ๋์ดํ์ฌ ์ํฉ์ ๋ฐ๋ก์ก์ผ๋ ค๊ณ ๋ ธ๋ ฅํ ๊ฒ์ ๋๋ค. ์ฌ์ฉ ์๋๋ฆฌ์ค "์๋น์ค ๊ทธ๋ฆฌ๋"*.
* ์ฐธ๊ณ : ๋ฒ์ญ: ์ด ๋ฌธ์๋ถํฐ ์ด ๋ฒ์ญ("์๋น์ค ๋ฉ์")์ ์์ง ์๋ก์ด ์ฉ์ด์ธ ์๋น์ค ๋ฉ์๋ฅผ ๋์ ํ์ฌ ์ฌ์ฉ๋ฉ๋๋ค.
ํ์ง๋ง ๋จผ์ ๋ช ๊ฐ์ง ์๊ฒฌ์ ๋ฐํ๊ณ ์ถ์ต๋๋ค.
- ์ ๋ ์๋น์ค ๋ฉ์๋ฅผ ์ฌ์ฉํด ๋ณธ ์ ๋ ์๊ณ , ์ ๊ต์ก์ ์ํด ์งํํ ํ๋ก์ ํธ ์ธ์๋ ์๋น์ค ๋ฉ์๋ฅผ ์ฌ์ฉํด ๋ณธ ์ ๋ ์์ต๋๋ค. ๋ฐ๋ฉด์ ์ ๋ 2015๋ ์ Twitter์ ๋ด๋ถ ์๋น์ค ๋ฉ์์ ๋ํ ๋ง์ ๋ฌธ์๋ฅผ ์์ฑํ์ต๋๋ค(๊ทธ๋๋ "์๋น์ค ๋ฉ์"๋ผ๊ณ ๋ถ๋ฆฌ์ง๋ ์์์ต๋๋ค) ๊ทธ๋ฆฌ๊ณ ์น์ฌ์ดํธ์ ๋ฌธ์์ ๊ธฐ์ฌํ์ต๋๋ค. , ๊ทธ๋ฌ๋๊น ๋ญ๊ฐ ์๋ฏธ๊ฐ ์๋ ๊ฑฐ์ฃ .
- ์ ๊ฐ ์์ฑํ ๋ชฉ๋ก์ ๋๋ต์ ์ด๊ณ ๋ถ์์ ํฉ๋๋ค. ๋ฌผ๋ก ์ ๊ฐ ๋ชจ๋ฅด๋ ์ฌ์ฉ ์ฌ๋ก๋ ์์ ๊ฒ์ด๊ณ , ๊ธฐ์ ์ด ๋ฐ์ ํ๊ณ ๋ ๋์คํ๋จ์ ๋ฐ๋ผ ์๊ฐ์ด ์ง๋๋ฉด์ ์๋ก์ด ์ฌ๋ก๊ฐ ๋ํ๋ ๊ฐ๋ฅ์ฑ์ด ํฝ๋๋ค.
- ๋์์, ๊ธฐ์กด์ ๋ชจ๋ ์๋น์ค ๋ฉ์ ๊ตฌํ์ด ๋์ด๋ ๋ชจ๋ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ์ง์ํ๋ ๊ฒ์ ์๋๋๋ค. ๋ฐ๋ผ์ "์๋น์ค ๋ฉ์๋..."์ด๋ผ๋ ์ ์ง์ ์ "์ผ๋ถ, ๊ทธ๋ฆฌ๊ณ ์๋ง๋ ๋ชจ๋ ์ธ๊ธฐ ์๋ ์๋น์ค ๋ฉ์ ๊ตฌํ์..."์ผ๋ก ์ฝ์ด์ผ ํฉ๋๋ค.
- ์์์ ์์๋ ์ค์ํ์ง ์์ต๋๋ค.
์งง์ ๋ชฉ๋ก:
- ์๋น์ค ๋ฐ๊ฒฌ
- ์ํธํ;
- ์ธ์ฆ ๋ฐ ๊ถํ ๋ถ์ฌ
- ๋ถํ ๋ถ์ฐ
- ํ๋ก ์ฐจ๋จ;
- ์๋ ํ์ฅ
- ์นด๋๋ฆฌ์ ๋ฐฐํฌ
- ์ฒญ๋ก์ ๋ฐฐํฌ
- ๊ฑด๊ฐ ๊ฒ์ง;
- ๋ถํ ๋ถ์ฐ
- ํธ๋ํฝ ๋ฏธ๋ฌ๋ง
- ๋จ์ด์ฌ;
- ์์ฒญ ์๋ ์ ํ, ์ฌ์๋ ๋ฐ ์๊ฐ ์ด๊ณผ
- ์๊ฒฉ ์ธก์ ;
- ์ฌ์ฌ;
- ์ฌ์.
1. ์๋น์ค ๋ฐ๊ฒฌ
์์ฝ: ๊ฐ๋จํ ์ด๋ฆ์ ์ฌ์ฉํ์ฌ ๋คํธ์ํฌ์ ๋ค๋ฅธ ์๋น์ค์ ์ฐ๊ฒฐํฉ๋๋ค.
์๋น์ค๋ ๋ค์๊ณผ ๊ฐ์ ์ ์ ํ ์ด๋ฆ์ ์ฌ์ฉํ์ฌ ์๋ก๋ฅผ ์๋์ผ๋ก "์ฐพ์" ์ ์์ด์ผ ํฉ๋๋ค. service.api.production, pets/staging ๋๋ cassandra. ํด๋ผ์ฐ๋ ํ๊ฒฝ์ ํ๋ ฅ์ ์ด๋ฉฐ, ์ฌ๋ฌ ์๋น์ค ์ธ์คํด์ค๋ฅผ ํ๋์ ์ด๋ฆ ๋ค์ ์จ๊ธธ ์ ์์ต๋๋ค. ์ด๋ฐ ์ํฉ์์๋ ๋ชจ๋ IP ์ฃผ์๋ฅผ ํ๋์ฝ๋ฉํ๋ ๊ฒ์ด ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ถ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ ๋ถ๋ช
ํฉ๋๋ค.
๋ํ, ํ ์๋น์ค๊ฐ ๋ค๋ฅธ ์๋น์ค๋ฅผ ์ฐพ์ผ๋ฉด ์ฃฝ์ ์ธ์คํด์ค์ ์ ๋ ฅ์ผ๋ก ์์ฒญ์ด ์ ๋ฌ๋ ๊น๋ด ๊ฑฑ์ ํ์ง ์๊ณ ํด๋น ์๋น์ค์ ์์ฒญ์ ๋ณด๋ผ ์ ์์ด์ผ ํฉ๋๋ค. ์ฆ, ์๋น์ค ๋ฉ์๋ ๋ชจ๋ ์๋น์ค ์ธ์คํด์ค์ ์ํ๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ ํธ์คํธ ๋ชฉ๋ก์ ์ต๋ํ ์ต์ ์ํ๋ก ์ ์งํด์ผ ํฉ๋๋ค.
๊ฐ ์๋น์ค ๋ฉ์๋ ์๋น์ค ๊ฒ์ ๋ฉ์ปค๋์ฆ์ ๋ค๋ฅด๊ฒ ๊ตฌํํฉ๋๋ค. ํ์ฌ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ์ DNS Kubernetes์ ๊ฐ์ ์ธ๋ถ ํ๋ก์ธ์ค์ ์์ํ๋ ๊ฒ์ ๋๋ค. ๊ณผ๊ฑฐ์๋ ํธ์ํฐ์์ ์ด ๋ชฉ์ ์ ์ํด ์ด๋ฆ ์์คํ ์ ์ฌ์ฉํ์ต๋๋ค. . ๋ํ ์๋น์ค ๋ฉ์ ๊ธฐ์ ์ ์ฌ์ฉํ๋ฉด ์ฌ์ฉ์ ์ ์ ๋ช ๋ช ๋ฉ์ปค๋์ฆ์ ๋์ ํ ์ ์์ต๋๋ค(ํ์ง๋ง ์์ง ์ด๋ฌํ ๊ธฐ๋ฅ์ ๊ฐ์ถ SM ๊ตฌํ์ ๋ณธ ์ ์ ์์ต๋๋ค).
2. ์ํธํ
์์ฝ: ์๋น์ค ๊ฐ์ ์ํธํ๋์ง ์์ ํธ๋ํฝ์ ์์ ๊ณ ์ด ํ๋ก์ธ์ค๋ฅผ ์๋ํํ๊ณ ํ์ฅ ๊ฐ๋ฅํ๊ฒ ๋ง๋์ธ์.
๊ณต๊ฒฉ์๊ฐ ๋ด๋ถ ๋คํธ์ํฌ์ ์นจํฌํ ์ ์๋ค๋ ์ฌ์ค์ ์๋ ๊ฒ ์ข์ต๋๋ค. ๋ฐฉํ๋ฒฝ์ ์ด๋ฐ ์ผ์ ๋งค์ฐ ์ ์ํํฉ๋๋ค. ํ์ง๋ง ํด์ปค๊ฐ ์นจ์ ํ๋ฉด ์ด๋ป๊ฒ ๋๋์? ๊ทธ๋ ์๋น์ค ๋ด ๊ตํต ์ํฉ์ ์ํ๋ ๋๋ก ์ฒ๋ฆฌํ ์ ์์๊น? ์ด๋ฐ ์ผ์ด ์ผ์ด๋์ง ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ์ด๋ฌํ ์๋๋ฆฌ์ค๋ฅผ ๋ฐฉ์งํ๋ ค๋ฉด ๋ชจ๋ ์๋น์ค ๊ฐ ํธ๋ํฝ์ ์ํธํํ๋ ์ ๋ก ํธ๋ฌ์คํธ ๋คํธ์ํฌ๋ฅผ ๊ตฌํํด์ผ ํฉ๋๋ค. ๋๋ถ๋ถ์ ํ๋ ์๋น์ค ๊ทธ๋ฆฌ๋๋ ์ํธ ์ฐ๊ฒฐ์ ํตํด ์ด๋ฅผ ๋ฌ์ฑํฉ๋๋ค. (์ํธ TLS, mTLS). ์ด๋ค ๊ฒฝ์ฐ์๋ mTLS๊ฐ ์ ์ฒด ํด๋ผ์ฐ๋์ ํด๋ฌ์คํฐ์์ ์๋ํฉ๋๋ค(์ ๋ ํ์ฑ ๊ฐ ํต์ ์ด ์ธ์ ๊ฐ๋ ๋น์ทํ ๋ฐฉ์์ผ๋ก ์ด๋ฃจ์ด์ง ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค).
๋ฌผ๋ก mTLS ์๋น์ค ๋ฉ์์ ๊ฒฝ์ฐ ์ ํ ๊ณผ๋ชฉ. ๊ฐ ์๋น์ค๋ ์์ฒด TLS๋ฅผ ์ฒ๋ฆฌํ ์ ์์ง๋ง, ์ด๋ ์ธ์ฆ์๋ฅผ ์์ฑํ๊ณ ์ด๋ฅผ ์๋น์ค ํธ์คํธ ์ ๋ฐ์ ๋ฐฐํฌํ๊ณ ํ์ผ์์ ์ด๋ฌํ ์ธ์ฆ์๋ฅผ ๋ก๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฝ๋๋ฅผ ํฌํจํ๋ ๋ฐฉ๋ฒ์ ์ฐพ์์ผ ํจ์ ์๋ฏธํฉ๋๋ค. ๋ค, ์ ๊ธฐ์ ์ผ๋ก ์ธ์ฆ์๋ฅผ ๊ฐฑ์ ํ๋ ๊ฒ์ ์์ง ๋ง์ธ์. ์๋น์ค ๋ฉ์๋ ๋ค์๊ณผ ๊ฐ์ ์์คํ ์ผ๋ก mTLS๋ฅผ ์๋ํํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ธ์ฆ์ ๋ฐ๊ธ ๋ฐ ๊ต์ฒด ํ๋ก์ธ์ค๊ฐ ์๋ํ๋ฉ๋๋ค.
3. ์ธ์ฆ ๋ฐ ๊ถํ ๋ถ์ฌ
์์ฝ: ์์ฒญ์ ์์ํ ์ฌ๋์ด ๋๊ตฌ์ธ์ง ํ์ธํ๊ณ ์์ฒญ์ด ์๋น์ค์ ๋๋ฌํ๊ธฐ ์ ์ ํด๋น ์ฌ๋์ด ๋ฌด์์ ํ ์ ์๋์ง ํ์ธํ์ธ์.
์๋น์ค์์๋ ์ข ์ข ๋ค์์ ์๊ณ ์ถ์ดํฉ๋๋ค. ๋๊ตฌ ์์ฒญ(์ธ์ฆ)์ ํ๊ณ ์ด ์ ๋ณด๋ฅผ ์ฌ์ฉํ์ฌ ๊ฒฐ์ ํฉ๋๋ค. ๊ทธ ์ด ์ฃผ์ฒด๋ (๊ถํ ๋ถ์ฌ)๋ฅผ ํ ์ ์๋ค. ์ด ๊ฒฝ์ฐ ๋๋ช ์ฌ "who"๋ ๋ค์์ ์จ๊ธธ ์ ์์ต๋๋ค.
- ๊ธฐํ ์๋น์ค. ์ด๊ฒ์ "์ธ์ฆ"์ด๋ผ๊ณ ํฉ๋๋ค ํผ์ด๋ผ". ์๋ฅผ ๋ค์ด, ์๋น์ค
web์๋น์ค์ ์ ์ํ๊ณ ์ถ์ดํฉ๋๋คdb. ์๋น์ค ๋ฉ์๋ ์ผ๋ฐ์ ์ผ๋ก ์ธ์ฆ์๋ฅผ ํ์ ์๋ณ์๋ก ์ฌ์ฉํ์ฌ mTLS๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ์ ํ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. - ์ผ๋ถ ์ธ๊ฐ ์ฌ์ฉ์. ์ด๊ฒ์ "์ธ์ฆ"์ด๋ผ๊ณ ํฉ๋๋ค ์์ฒญ". ์๋ฅผ ๋ค์ด, ์ฌ์ฉ์
haxor69์๋ก์ด ๋จํ๋ฅผ ์ฌ๊ณ ์ถ์ดํด์. ์๋น์ค ๋ฉ์๋ ๋ค์๊ณผ ๊ฐ์ ๋ค์ํ ๋ฉ์ปค๋์ฆ์ ์ ๊ณตํฉ๋๋ค. .์ฐ๋ฆฌ ์ค ๋ง์ ์ฌ๋์ด ์ ํ๋ฆฌ์ผ์ด์ ์ฝ๋์์ ์ด๋ฐ ์์ ์ ํด์ผ ํ์ต๋๋ค. ์์ฒญ์ด ๋ค์ด์ค๋ฉด ์ฐ๋ฆฌ๋ ํ ์ด๋ธ์ ์ดํด๋ด ๋๋ค.
users, ์ฌ์ฉ์๋ฅผ ์ฐพ์ ๋น๋ฐ๋ฒํธ๋ฅผ ๋น๊ตํ ํ ์ด์ ํ์ธํฉ๋๋ค.permissions์๋น์ค ๋ฉ์์ ๊ฒฝ์ฐ, ์ด ์์ ์ ์์ฒญ์ด ์๋น์ค์ ๋๋ฌํ๊ธฐ๋ ์ ์ ๋ฐ์ํฉ๋๋ค.
์์ฒญ์ด ๋๊ตฌ์๊ฒ์ ์๋์ง ํ์ธํ ํ์๋ ํด๋น ์ฃผ์ฒด๊ฐ ๋ฌด์์ ํ ์ ์๋์ง ๊ฒฐ์ ํด์ผ ํฉ๋๋ค. ์ผ๋ถ ์๋น์ค ๋ฉ์์์๋ YAML ํ์ผ์ด๋ ๋ช ๋ น์ค์์ ๋๊ฐ ๋ฌด์์ ํ ์ ์๋์ง์ ๋ํ ๊ธฐ๋ณธ ์ ์ฑ ์ ์ค์ ํ ์ ์๊ณ , ๋ค๋ฅธ ์๋น์ค ๋ฉ์์์๋ ๋ค์๊ณผ ๊ฐ์ ํ๋ ์์ํฌ์์ ํตํฉ์ ์ ๊ณตํฉ๋๋ค. . ์ต์ข ๋ชฉํ๋ ๊ทํ์ ์๋น์ค๊ฐ ์ ๋ขฐํ ์ ์๋ ์ถ์ฒ์์ ์จ ๊ฒ์ด๋ผ๋ ํ์ ์ ๊ฐ์ง๊ณ ๋ชจ๋ ์์ฒญ์ ์๋ฝํ๋ ๊ฒ์ ๋๋ค. ะธ ์ด ์์ ์ ํ์ฉ๋ฉ๋๋ค.
4. ๋ถํ ๋ถ์ฐ
์์ฝ: ํน์ ํจํด์ ๋ฐ๋ผ ์๋น์ค ์ธ์คํด์ค ์ ๋ฐ์ ๋ถํ๋ฅผ ๋ถ์ฐํฉ๋๋ค.
์๋น์ค ์น์
์ "์๋น์ค"๋ ์ข
์ข
์ฌ๋ฌ ๊ฐ์ ๋์ผํ ์ฌ๋ณธ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ค๋์ ์๋น์ค cache 5๋ถ๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ ๋ด์ผ์ 11๋ถ๋ก ๋์ด๋ ์ ์์ต๋๋ค. ์์ฒญ์ ๋ค์์ผ๋ก ์ ์ก๋ฉ๋๋ค. cache, ํน์ ๋ชฉ์ ์ ๋ง๊ฒ ๋ถ๋ฐฐ๋์ด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ง์ฐ ์๊ฐ์ ์ต์ํํ๊ฑฐ๋ ์๋ํ๋ ์ธ์คํด์ค์ ๋๋ฌํ ํ๋ฅ ์ ์ต๋ํํฉ๋๋ค. ๊ฐ์ฅ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ ์๊ณ ๋ฆฌ์ฆ์ ๋ผ์ด๋ ๋ก๋น ์๊ณ ๋ฆฌ์ฆ์ด์ง๋ง, ๊ฐ์ค์น ๋ฐฉ์ ๋ฑ ๋ค๋ฅธ ์๊ณ ๋ฆฌ์ฆ๋ ๋ง์ด ์์ต๋๋ค. (๊ฐ์ค์น) ์ง์(์ ํธํ๋ ๋์์ ์ ํํ ์ ์์), ๋ง (๋ฐ์ง) ํด์ฑ(์๋ฅ ํธ์คํธ์ ๋ํด ์ผ๊ด๋ ํด์ฑ ์ฌ์ฉ) ๋๋ ์ต์ ์ฟผ๋ฆฌ ๋ฐฉ์(์ฟผ๋ฆฌ๊ฐ ๊ฐ์ฅ ์ ์ ์ธ์คํด์ค๊ฐ ์ฐ์ ์ ์ผ๋ก ์ ๊ณต๋จ).
ํด๋์ ๋ก๋ ๋ฐธ๋ฐ์๋ HTTP ์บ์ฑ ๋ฐ DDoS ๋ณดํธ์ ๊ฐ์ ๋ค๋ฅธ ๊ธฐ๋ฅ์ ๊ฐ์ถ๊ณ ์์ง๋ง, ์ด๋ฌํ ๊ธฐ๋ฅ์ ๋์ ํธ๋ํฝ(์๋น์ค ๋ฉ์์ ์ผ๋ฐ์ ์ธ ์ ์ฉ ๋ถ์ผ)์๋ ๊ทธ๋ค์ง ์ ํฉํ์ง ์์ต๋๋ค. ๋ถํ ๋ถ์ฐ์ ์ํด ์๋น์ค ๋ฉ์๋ฅผ ๋ฐ๋์ ์ฌ์ฉํ ํ์๋ ์์ง๋ง, ์๋น์ค ๋ฉ์๋ฅผ ์ฌ์ฉํ๋ฉด ์ค์ ์ ์ด ํ๋ฉด์์ ๊ฐ ์๋น์ค์ ๋ํ ๋ถํ ๋ถ์ฐ ์ ์ฑ ์ ์ ์ํ๊ณ ์ ์ดํ ์ ์์ผ๋ฏ๋ก ๋คํธ์ํฌ ์คํ์์ ๊ฐ๋ณ ๋ถํ ๋ถ์ฐ ์ฅ์น๋ฅผ ์คํํ๊ณ ๊ตฌ์ฑํ ํ์๊ฐ ์์ต๋๋ค.
5. ํ๋ก ์ฐจ๋จ
์์ฝ: ๋ฌธ์ ๊ฐ ์๋ ์๋น์ค๋ก์ ํธ๋ํฝ์ ์ฐจ๋จํ๊ณ ์ต์ ์ ๊ฒฝ์ฐ ํผํด๋ฅผ ํต์ ํฉ๋๋ค.
์ด๋ค ์ด์ ๋ก ์๋น์ค๊ฐ ํธ๋ํฝ์ ์ฒ๋ฆฌํ ์ ์๋ ๊ฒฝ์ฐ, ์๋น์ค ๋ฉ์๋ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ์ฌ๋ฌ ๊ฐ์ง ์ต์ ์ ์ ๊ณตํฉ๋๋ค(๋ค๋ฅธ ์ต์ ์ ๊ด๋ จ ์น์ ์์ ์ค๋ช ํฉ๋๋ค). ํ๋ก ์ฐจ๋จ์ ํธ๋ํฝ์์ ์๋น์ค๋ฅผ ๋ถ๋ฆฌํ๋ ๊ฐ์ฅ ์ฌ๊ฐํ ์ต์ ์ ๋๋ค. ํ์ง๋ง ๊ทธ ์์ฒด๋ก๋ ์๋ฌด๋ฐ ์๋ฏธ๊ฐ ์์ต๋๋ค. ๋์ฒด ๊ณํ์ด ํ์ํฉ๋๋ค. ์ญ์์ด ์ ๊ณต๋ ์ ์์ต๋๋ค. () ์์ฒญ์ ํ๋ ์๋น์ค์(์ด๋ฅผ ์ํด ์๋น์ค ๋ฉ์๋ฅผ ์ค์ ํ๋ ๊ฒ์ ์์ง ๋ง์ธ์!), ๋๋ ์๋ฅผ ๋ค์ด ์ํ ํ์ด์ง๋ฅผ ๋นจ๊ฐ์์ผ๋ก ์น ํ๊ณ "๋จ์ด์ง๋ ๊ณ ๋"("Twitter is down")๊ฐ ์๋ ํ์ด์ง์ ๋ค์ ๋ฒ์ ์ผ๋ก ์ฌ์ฉ์๋ฅผ ๋ฆฌ๋๋ ์ ํ๋ ๊ฒ.
์๋น์ค ๊ทธ๋ฆฌ๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋ค์์ ๊ฒฐ์ ํ ์ ์์ต๋๋ค. ์ธ์ ์ข ๋ฃ๊ฐ ๋ค๋ฐ๋ฅผ ๊ฒ์ ๋๋ค ๊ทธ ์ด๊ฒ์ด ๋ค๋ฐ๋ฅผ ๊ฒ์ด๋ค. ์ด ๊ฒฝ์ฐ, "์ธ์ "์๋ ์ง์ ๋ ๋งค๊ฐ๋ณ์์ ์กฐํฉ์ด ํฌํจ๋ ์ ์์ต๋๋ค. ์ฆ, ํน์ ๊ธฐ๊ฐ ๋์์ ์ด ์์ฒญ ์, ๋ณ๋ ฌ ์ฐ๊ฒฐ ์, ๋ณด๋ฅ ์ค์ธ ์์ฒญ ์, ํ์ฑ ์ฌ์๋ ์ ๋ฑ์ด ํฌํจ๋ ์ ์์ต๋๋ค.
ํ๋ก ์ฐจ๋จ ๊ธฐ๋ฅ์ ๊ณผ๋ํ๊ฒ ์ฌ์ฉํ๊ณ ์ถ์ง๋ ์๊ฒ ์ง๋ง, ๋น์ ์ํฉ์ ๋๋นํด ๋์ฒด ๊ณํ์ด ์๋ค๋ ๊ฒ์ ์๋ ๊ฒ ์ข์ต๋๋ค.
6. ์๋ ํ์ฅ
์์ฝ: ์ง์ ๋ ๊ธฐ์ค์ ๋ฐ๋ผ ์๋น์ค ์ธ์คํด์ค ์๋ฅผ ๋๋ฆฌ๊ฑฐ๋ ์ค์ ๋๋ค.
์๋น์ค ๋ฉ์๋ ์ค์ผ์ค๋ฌ๊ฐ ์๋๋ฏ๋ก ์ํํ๋ค ๋ ๋ฆฝ์ ์ผ๋ก ํ์ฅ ๊ฐ๋ฅ. ํ์ง๋ง ์ด๋ค์ ์ด๋ค ๊ธฐํ์๊ฐ ๊ฒฐ์ ์ ๋ด๋ฆด ์ ์๋์ง์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ ์ ์์ต๋๋ค. ์๋น์ค ๋ฉ์๋ ์๋น์ค ๊ฐ์ ๋ชจ๋ ํธ๋ํฝ์ ์ ๊ทผํ ์ ์์ผ๋ฏ๋ก ์ด๋ค ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง์ ๋ํ ๊ด๋ฒ์ํ ์ ๋ณด๋ฅผ ์ป์ ์ ์์ต๋๋ค. ์ฆ, ์ด๋ค ์๋น์ค์ ๋ฌธ์ ๊ฐ ์๋์ง, ์ด๋ค ์๋น์ค์ ํ์ฉ๋๊ฐ ๋ฎ๋์ง(ํ ๋น๋ ์ฉ๋์ด ๋ญ๋น๋๊ณ ์๋์ง) ๋ฑ์ ์ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, ์ฟ ๋ฒ๋คํฐ์ค๋ ํฌ๋์ CPU ๋ฐ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ๋ฐ๋ผ ์๋น์ค๋ฅผ ํ์ฅํฉ๋๋ค. (๋ณด๊ณ ์๋ฅผ ์ฐธ์กฐํ์ธ์." - ์ฝ. ๋ฒ์ญ)ํ์ง๋ง ๋ค๋ฅธ ์งํ(์ด ๊ฒฝ์ฐ ํธ๋ํฝ ๊ด๋ จ ์งํ)๋ฅผ ๊ธฐ์ค์ผ๋ก ํ์ฅํ๊ธฐ๋ก ๊ฒฐ์ ํ ๊ฒฝ์ฐ ์ ๋ด ์งํ๊ฐ ํ์ํฉ๋๋ค. ๊ด๋ฆฌ ์ด๊ฒ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค , ะธ ํ์ง๋ง ๊ทธ ๊ณผ์ ์์ฒด๋ ๋งค์ฐ ๋ณต์กํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์๋น์ค ๋ฉ์๋ฅผ ํตํด "์๋น์ค ์ธ์คํด์ค ์ ์ฆ๊ฐ"์ ๊ฐ์ ์กฐ๊ฑด์ ๊ฐ๋จํ ์ง์ ํ ์ ์๋๋ก ํ์ฌ ์ด๋ฅผ ๋จ์ํํ๊ณ ์ถ์ต๋๋ค. auth, ์คํ์ ๊ธฐ๋ค๋ฆฌ๋ ์์ฒญ ์๊ฐ 1๋ถ ๋์ ์๊ณ๊ฐ์ ์ด๊ณผํ๋ ๊ฒฝ์ฐ."
7. ์นด๋๋ฆฌ์ ๋ฐฐํฌ
์์ฝ: ์ผ๋ถ ์ฌ์ฉ์๋ฅผ ๋์์ผ๋ก ์๋น์ค์ ์๋ก์ด ๊ธฐ๋ฅ์ด๋ ๋ฒ์ ์ ํ ์คํธํฉ๋๋ค.
์๋ฅผ ๋ค์ด, SaaS ์ ํ์ ๊ฐ๋ฐ ์ค์ด๊ณ ํด๋น ์ ํ์ ๋ฉ์ง ์ ๋ฒ์ ์ ์ถ์ํ ๊ณํ์ด๋ผ๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ์คํ ์ด์ง์์ ํ ์คํธํด๋ณด๋ ์ ์๋ํ์ต๋๋ค. ํ์ง๋ง ์ค์ ์ํ์์์ ํ๋์ ๋ํด์๋ ์ฌ์ ํ ๋ช ๊ฐ์ง ์ฐ๋ ค๊ฐ ์์ต๋๋ค. ๋ค์ ๋งํด, ์ฌ์ฉ์์ ์ ๋ขฐ๋ฅผ ์ํ์ ๋น ๋จ๋ฆฌ์ง ์๊ณ ์ค์ ์์ ์์ ์๋ก์ด ๋ฒ์ ์ ํ ์คํธํ๋ ๊ฒ์ด ํ์ํฉ๋๋ค. ์ด๋ฐ ๊ฒฝ์ฐ์๋ ์นด๋๋ฆฌ์ ๋ฐฐํฌ๊ฐ ์ ํฉํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ผ๋ถ ์ฌ์ฉ์์๊ฒ ์๋ก์ด ๊ธฐ๋ฅ์ ๋ณด์ฌ์ค ์ ์์ต๋๋ค. ์ด ํ์ ์งํฉ์ ๊ฐ์ฅ ์ถฉ์ฑ๋ ๋์ ์ฌ์ฉ์, ์ ํ์ ๋ฌด๋ฃ ๋ฒ์ ์ ์ฌ์ฉํ๋ ์ฌ์ฉ์, ๋๋ "์คํ ๋์"์ด ๋๊ธฐ๋ก ์์ํ ์ฌ์ฉ์๋ก ๊ตฌ์ฑ๋ ์ ์์ต๋๋ค.
์๋น์ค ๋ฉ์๋ฅผ ์ฌ์ฉํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ด๋ค ๋ฒ์ ์ ๋๊ฐ ๋ณผ ์ ์๋์ง ๊ฒฐ์ ํ๋ ๊ธฐ์ค์ ์ง์ ํ๊ณ , ์ด์ ๋ฐ๋ผ ํธ๋ํฝ์ ๋ผ์ฐํ ํ ์ ์์ต๋๋ค. ํ์ง๋ง ์๋น์ค ์์ฒด์๋ ์๋ฌด๊ฒ๋ ๋ณํ์ง ์์ต๋๋ค. ์๋น์ค ๋ฒ์ 1.0์์๋ ๋ชจ๋ ์์ฒญ์ด ํด๋น ์๋น์ค๋ฅผ ๋ด์ผ ํ ์ฌ์ฉ์์๊ฒ์ ์จ๋ค๊ณ ๊ฐ์ ํ๊ณ , ๋ฒ์ 1.1์์๋ ํด๋น ์๋น์ค๋ฅผ ๋ด์ผ ํ ์ฌ์ฉ์์๊ฒ์ ์จ๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. ๊ทธ๋์ ๊ธฐ์กด ๋ฒ์ ๊ณผ ์ ๊ท ๋ฒ์ ๊ฐ์ ํธ๋ํฝ ๋น์จ์ ๋ณ๊ฒฝํ์ฌ, ์์ ์ ์ผ๋ก ์๋ํ๊ณ ์คํ ๋์์ด ์น์ธ์ ๋ด๋ฆฌ๋ฉด ์ ์ ๋ ๋ง์ ์ฌ์ฉ์๋ฅผ ์ ๊ท ๋ฒ์ ์ผ๋ก ๋ฆฌ๋๋ ์ ํ ์ ์์ต๋๋ค.
8. ๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ
์์ฝ: ๋ฉ์ง ์ ๊ธฐ๋ฅ์ ์ถ์ํ๋, ์ฆ์ ๋๋๋ฆด ์ค๋น๋ฅผ ํ์ธ์.
์๋ฏธ ๊ธฐ์กด์ "๊ทธ๋ฆฐ" ์๋น์ค์ ๋ณํํ์ฌ ์๋ก์ด "๋ธ๋ฃจ" ์๋น์ค๋ฅผ ์ถ์ํ๋ ๊ฒ์ ๋๋ค. ๋ชจ๋ ๊ฒ์ด ์์กฐ๋กญ๊ฒ ์งํ๋๊ณ ์๋ก์ด ์๋น์ค๊ฐ ํจ๊ณผ๊ฐ ์ ์ฆ๋๋ฉด ๊ธฐ์กด ์๋น์ค๋ฅผ ์ ์ฐจ์ ์ผ๋ก ์ข ๋ฃํ ์ ์์ต๋๋ค. (์์ฝ๊ฒ๋ ์ธ์ ๊ฐ ์ด ์๋ก์ด "๋ธ๋ฃจ" ์๋น์ค๋ "๊ทธ๋ฆฐ" ์๋น์ค์ ์ด๋ช ์ ๋ฐ๋ผ ์ฌ๋ผ์ง ๊ฒ์ ๋๋ค...) ๋ธ๋ฃจ-๊ทธ๋ฆฐ ๋ฐฐํฌ๋ ์๋ก์ด ๊ธฐ๋ฅ์ด ๋ค์์ ํฌํจํ๋ค๋ ์ ์์ ์นด๋๋ฆฌ์ ๋ฐฐํฌ์ ๋ค๋ฆ ๋๋ค. ํ๊บผ๋ฒ์ ์ฌ์ฉ์(๋ถ๋ถ์ด ์๋) ์ฌ๊ธฐ์ ์ค์ํ ์ ์ ๋ฌด์จ ์ผ์ด ์๋ชป๋ ๊ฒฝ์ฐ๋ฅผ ๋๋นํด "๋ฐฑ์ ํผ๋์ฒ"๋ฅผ ์ค๋นํด ๋๋ ๊ฒ์ ๋๋ค.
์๋น์ค ๋ฉ์๋ "๋ธ๋ฃจ" ์๋น์ค๋ฅผ ํ ์คํธํ๊ณ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ ์๋ํ๋ "๊ทธ๋ฆฐ" ์๋น์ค๋ก ์ฆ์ ์ ํํ๋ ๋งค์ฐ ํธ๋ฆฌํ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค. ๋ํ "ํ๋์" ์ฅ์น์ ์๋์ ๋ํ ๋ง์ ์ ๋ณด(์๋์ "์๊ฒฉ ์ธก์ " ์น์ ์ฐธ์กฐ)๋ฅผ ์ ๊ณตํ์ฌ ์ฅ์น๊ฐ ์์ ํ ์๋์ ํ ์ค๋น๊ฐ ๋์๋์ง ํ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
๋ฉ๋ชจ. ๋ฒ์ญ: Kubernetes์ ๋ค์ํ ๋ฐฐํฌ ์ ๋ต(์ธ๊ธ๋ Canary, Blue/Green ๋ฐ ๊ธฐํ ํฌํจ)์ ๋ํด ์์ธํ ์์๋ณด๋ ค๋ฉด ์ฌ๊ธฐ๋ฅผ ํด๋ฆญํ์ธ์. .
9. ๊ฑด๊ฐ๊ฒ์ง
์์ฝ: ์ด๋ค ์๋น์ค ์ธ์คํด์ค๊ฐ ์ ์์ธ์ง ๋ชจ๋ํฐ๋งํ๊ณ , ๋ ์ด์ ์ ์์ ์ด์ง ์์ ์ธ์คํด์ค์ ๋์ํฉ๋๋ค.
๊ฑด๊ฐ ์ฒดํฌ (๊ฑด๊ฐ๊ฒ์ง) ์๋น์ค ์ธ์คํด์ค๊ฐ ํธ๋ํฝ์ ์์ ํ๊ณ ์ฒ๋ฆฌํ ์ค๋น๊ฐ ๋์๋์ง ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, HTTP ์๋น์ค์ ๊ฒฝ์ฐ ์ํ ๊ฒ์ฌ๋ ์๋ํฌ์ธํธ์ ๋ํ GET ์์ฒญ์ฒ๋ผ ๋ณด์ผ ์ ์์ต๋๋ค. /health. ๋ต๋ณ 200 OK ์ธ์คํด์ค๊ฐ ์ ์์์ ์๋ฏธํ๊ณ , ๊ทธ๋ ์ง ์์ผ๋ฉด ํธ๋ํฝ์ ์์ ํ ์ค๋น๊ฐ ๋์ง ์์์์ ์๋ฏธํฉ๋๋ค. ์๋น์ค ๋ฉ์๋ฅผ ์ฌ์ฉํ๋ฉด ์ํ ๊ฒ์ฌ๋ฅผ ์ํํ๋ ๋ฐฉ๋ฒ๊ณผ ์ํ ๋น๋๋ฅผ ๋ชจ๋ ์ง์ ํ ์ ์์ต๋๋ค. ์ด ์ ๋ณด๋ ๋ถํ ๋ถ์ฐ ๋ฐ ํ๋ก ์ฐจ๋จ๊ณผ ๊ฐ์ ๋ค๋ฅธ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋ ์ ์์ต๋๋ค.
๋ฐ๋ผ์ ๊ฑด๊ฐ ๊ฒ์ง์ ๋จ๋ ์ผ๋ก ์ฌ์ฉ๋๋ ์ฌ๋ก๊ฐ ์๋๋ฉฐ, ์ผ๋ฐ์ ์ผ๋ก ๋ค๋ฅธ ๋ชฉํ๋ฅผ ๋ฌ์ฑํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ํ, ์ํ ์ ๊ฒ ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ๋ค๋ฅธ ์๋น์ค ๋ฉ์ ๋์๊ณผ ๊ด๋ จ๋ ์ธ๋ถ ์์ ์ด ํ์ํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ํ ํ์ด์ง๋ฅผ ์ ๋ฐ์ดํธํ๊ฑฐ๋, GitHub์์ ์ด์๋ฅผ ์์ฑํ๊ฑฐ๋, JIRA ํฐ์ผ์ ์์ฑํ๋ ๊ฒ์ ๋๋ค. ์๋น์ค ๋ฉ์๋ ์ด ๋ชจ๋ ๊ฒ์ ์๋ํํ๋ ํธ๋ฆฌํ ๋ฉ์ปค๋์ฆ์ ์ ๊ณตํฉ๋๋ค.
10. ๋ถํ ๋ถ์ฐ
์์ฝ: ์ฌ์ฉ๋์ด ์ผ์์ ์ผ๋ก ๊ธ์ฆํ๋ฉด ํธ๋ํฝ ๊ฒฝ๋ก๋ฅผ ๋ณ๊ฒฝํฉ๋๋ค.
์๋น์ค๊ฐ ํธ๋ํฝ์ผ๋ก ๊ณผ๋ถํ๋ ๊ฒฝ์ฐ ํด๋น ํธ๋ํฝ ์ค ์ผ๋ถ๋ฅผ ์ผ์์ ์ผ๋ก ๋ค๋ฅธ ์์น๋ก ๋ฆฌ๋๋ ์ ํ ์ ์์ต๋๋ค(์: "drop" ๋๋ "pour"). (์ฐฝ๊ณ ) (๊ทธ๊ฐ ๊ฑฐ๊ธฐ์ ์์์). ์๋ฅผ ๋ค์ด, ๋ฐฑ์ ์๋น์ค๋ ๋ฐ์ดํฐ ์ผํฐ, ๋๋ ์๊ตฌ์ ์ธ ๋ฐ์ดํฐ ์ผํฐ์ ์ ์ฅํ๋ ๊ฒ์ ๋๋ค. ์ฃผ์ . ๊ฒฐ๊ณผ์ ์ผ๋ก ์๋น์ค๋ ๋ชจ๋ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ๊ฒ์ด ์ค๋จ๋๊ฑฐ๋ ์ค๋จ๋๋ ๋์ ์ผ๋ถ ์์ฒญ์ ๊ณ์ ์ฒ๋ฆฌํ ์ ์๊ฒ ๋ฉ๋๋ค. ๋ถํ ๋ถ์ฐ์ ํ๋ก๋ฅผ ์ฐจ๋จํ๋ ๊ฒ๋ณด๋ค ๋ฐ๋์งํ์ง๋ง, ๊ณผ๋ํ๊ฒ ์ฌ์ฉํ๋ ๊ฒ์ ์ฌ์ ํ โโ๊ถ์ฅ๋์ง ์์ต๋๋ค. ๋ค์ด์คํธ๋ฆผ ์๋น์ค์ ์ถฉ๋์ ์ผ์ผํฌ ์ ์๋ ์ฐ์์ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
11. ํธ๋ํฝ ๋ณ๋ ฌํ/๋ฏธ๋ฌ๋ง
์์ฝ: ํ ๋ฒ์ ์ฌ๋ฌ ๊ณณ์ผ๋ก ์์ฒญ์ ๋ณด๋ ๋๋ค.
๋๋ก๋ ์ฌ๋ฌ ์๋น์ค์ ํ ๋ฒ์ ์์ฒญ(๋๋ ์ฌ๋ฌ ์์ฒญ ์ ํ)์ ๋ณด๋ด์ผ ํ ๋๊ฐ ์์ต๋๋ค. ๋ํ์ ์ธ ์๋ก๋ ํ๋ก๋์
ํธ๋ํฝ์ ์ผ๋ถ๋ฅผ ์คํ
์ด์ง ์๋น์ค๋ก ์ ์กํ๋ ๊ฒ์ด ์์ต๋๋ค. ๋ฉ์ธ ํ๋ก๋์
์น ์๋ฒ๋ ๋ค์ด์คํธ๋ฆผ ์๋น์ค์ ์์ฒญ์ ๋ณด๋
๋๋ค. products.production ๊ทธ๋ฆฌ๊ณ ์ค์ง ๊ทธ์๊ฒ๋ง. ๊ทธ๋ฆฌ๊ณ ์๋น์ค ๋ฉ์๋ ์ด ์์ฒญ์ ์ง๋ฅ์ ์ผ๋ก ๋ณต์ฌํ์ฌ ์ ์กํฉ๋๋ค. products.staging์น ์๋ฒ๋ ์ ํ ์์ง ๋ชปํ๋ ์ฌ์ค์ด์ฃ .
ํธ๋ํฝ ๋ณ๋ ฌํ ์์ ๊ตฌํํ ์ ์๋ ์๋น์ค ๋ฉ์์ ๋ํ ๋ ๋ค๋ฅธ ๊ด๋ จ ์ฌ์ฉ ์ฌ๋ก๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. . ์ด๋ ๋์ผํ ์์ฒญ์ ๋ค์ํ ๋ฒ์ ์ ์๋น์ค์ ๋ณด๋ด๊ณ ๋ชจ๋ ๋ฒ์ ์ด ๋์ผํ๊ฒ ๋์ํ๋์ง ํ์ธํ๋ ๊ฒ์ ํฌํจํฉ๋๋ค. ๋๋ ์์ง ๋ค์๊ณผ ๊ฐ์ ํตํฉ ํ๊ท ํ ์คํธ ์์คํ ์ ๊ฐ์ถ ์๋น์ค ๋ฉ์ ๊ตฌํ์ ์ ํ์ง ๋ชปํ์ต๋๋ค. ํ์ง๋ง ์์ด๋์ด ์์ฒด๋ ์ ๋งํด ๋ณด์ ๋๋ค.
12. ๋จ์ด์ฌ
์์ฝ: ์๋น์ค ๋ฉ์๋ฅผ ๋ฏธ๋ ๋คํธ์ํฌ๋ก ๋๋์ธ์.
๋ํ ~๋ก ์๋ ค์ง ๋ถํ ๊ฒฉ๋ฆฌ๋ ์๋น์ค ๋ฉ์๋ฅผ ์๋ก์ ๋ํด ์๋ฌด๊ฒ๋ ๋ชจ๋ฅด๋ ๋ ผ๋ฆฌ์ ์ผ๋ก ๋ถ๋ฆฌ๋ ์ธ๊ทธ๋จผํธ๋ก ๋๋๋ ๊ธฐ์ ์ ๋๋ค. ๊ฒฉ๋ฆฌ๋ ๊ฐ์ ์ฌ์ค๋ง์ ๋ง๋๋ ๊ฒ๊ณผ ๋น์ทํฉ๋๋ค. ๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์ ์๋น์ค ๋ฉ์์ ๋ชจ๋ ์ด์ (์๋น์ค ๊ฒ์ ๋ฑ)์ ์ฌ์ ํ ๋๋ฆด ์ ์๊ณ , ์ฌ๊ธฐ์ ๋ณด์์ด ๊ฐํ๋์๋ค๋ ์ ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ๊ณต๊ฒฉ์๊ฐ ์๋ธ๋ท ์ค ํ๋์ ์๋น์ค์ ์นจํฌํ๋ ๋ฐ ์ฑ๊ณตํ๋๋ผ๋ ๋ค๋ฅธ ์๋ธ๋ท์์ ์คํ ์ค์ธ ์๋น์ค๋ฅผ ๋ณผ ์ ์๊ณ ํด๋น ์๋น์ค์ ํธ๋ํฝ์ ๊ฐ๋ก์ฑ ์๋ ์์ต๋๋ค.
๋ํ, ์ด๋ฌํ ํํ์ ์กฐ์ง์ ์ธ ์ธก๋ฉด๋ ์์ ์ ์์ต๋๋ค. ํ์ฌ ๊ตฌ์กฐ์ ๋ฐ๋ผ ์๋น์ค๋ฅผ ์๋ธ๋ท์ผ๋ก ๋๋๊ณ ๊ฐ๋ฐ์๊ฐ ์ ์ฒด ์๋น์ค ๋ฉ์๋ฅผ ์ผ๋์ ๋์ด์ผ ํ๋ ์ธ์ง์ ๋ถ๋ด์ ๋ ์ ์๋๋ก ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
13. ์์ฒญ ์๋ ์ ํ, ์ฌ์๋ ๋ฐ ์๊ฐ ์ด๊ณผ
์์ฝ: ๋ ์ด์ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆฌ๋ ์์ฒญ ๊ด๋ฆฌ ์์ ์ ์ฝ๋๋ฒ ์ด์ค์ ํฌํจํ ํ์๊ฐ ์์ต๋๋ค.
์ด๋ฌํ ๋ชจ๋ ์ฌํญ์ ๋ณ๋์ ์ฌ์ฉ ์ฌ๋ก๋ก ๊ฐ์ฃผ๋ ์ ์์ง๋ง, ํ ๊ฐ์ง ๊ณตํต์ ์ธ ํน์ง ๋๋ฌธ์ ์ด๋ฅผ ๊ทธ๋ฃนํํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ด๋ ์ผ๋ฐ์ ์ผ๋ก ์ ํ๋ฆฌ์ผ์ด์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ฒ๋ฆฌํ๋ ์์ฒญ ์๋ช ์ฃผ๊ธฐ ๊ด๋ฆฌ ์์ ์ ๋ถ๋ด์ ๋์ด์ค๋ค๋ ๊ฒ์ ๋๋ค. ๋ฐฑ์๋ ์๋น์ค์ ์์ฒญ์ ๋ณด๋ด๋ Ruby on Rails ์น ์๋ฒ(์๋น์ค ๋ฉ์์ ํตํฉ๋์ง ์์)๋ฅผ ๊ฐ๋ฐํ๋ ๊ฒฝ์ฐ , N๊ฐ์ ์์ฒญ์ด ์คํจํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์ค๋ก ๋ฌด์์ ํ ์ง ๊ฒฐ์ ํด์ผ ํฉ๋๋ค. ๋ํ ์ด๋ฌํ ์๋น์ค๊ฐ ์ฒ๋ฆฌํ ์ ์๋ ํธ๋ํฝ ๋ณผ๋ฅจ์ ํ์ ํ๊ณ ํน์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ๋งค๊ฐ๋ณ์๋ฅผ ํ๋์ฝ๋ฉํด์ผ ํฉ๋๋ค. ๊ฒ๋ค๊ฐ ์ฑ์ ์ธ์ ํฌ๊ธฐํ๊ณ ์์ฒญ์ ๋ญ๋นํ ์ง(์๊ฐ ์ด๊ณผ) ๊ฒฐ์ ํด์ผ ํฉ๋๋ค. ์์ ๋งค๊ฐ๋ณ์๋ฅผ ๋ณ๊ฒฝํ๋ ค๋ฉด ์น ์๋ฒ๋ฅผ ์ค์งํ๊ณ , ์ฌ๊ตฌ์ฑํ ํ ๋ค์ ์์ํด์ผ ํฉ๋๋ค.
์ด๋ฌํ ๋ฌธ์ ๋ฅผ ์๋น์ค ๋ฉ์์ ์์ํ๋ฉด ์๋น์ค ๊ฐ๋ฐ์๊ฐ ์ด์ ๋ํด ์๊ฐํ ํ์๊ฐ ์์ ๋ฟ๋ง ์๋๋ผ, ๋์ฑ ๊ธ๋ก๋ฒํ ๊ด์ ์์ ๋ฌธ์ ๋ฅผ ๋ณผ ์ ์์ต๋๋ค. A โ> B โ> C โ> D โ> E์ ๊ฐ์ด ๋ณต์กํ ์๋น์ค ์ฒด์ธ์ด ์๋ ๊ฒฝ์ฐ ์์ฒญ์ ์ ์ฒด ์๋ช ์ฃผ๊ธฐ๋ฅผ ๊ณ ๋ คํด์ผ ํฉ๋๋ค. ์๋น์ค C์์ ํ์์์์ ์ฐ์ฅํ๋ ๊ฒ์ด ์์ ์ด๋ผ๋ฉด, ๋ถ๋ถ์ ์ผ๋ก ํ๋ ๊ฒ๋ณด๋ค๋ ํ๊บผ๋ฒ์ ๋ชจ๋ ํ๋ ๊ฒ์ด ํฉ๋ฆฌ์ ์ ๋๋ค. ์ฆ, ์๋น์ค ์ฝ๋๋ฅผ ์ ๋ฐ์ดํธํ๊ณ ํ ๋ฆฌํ์คํธ๊ฐ ์น์ธ๋๊ณ CI ์์คํ ์ด ์ ๋ฐ์ดํธ๋ ์๋น์ค๋ฅผ ๋ฐฐํฌํ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๋ ๊ฒ์ ๋๋ค.
14. ์๊ฒฉ ์ธก์
์์ฝ: ์๋น์ค์์ ํ์ํ (๊ทธ๋ฆฌ๊ณ ๊ผญ ํ์ํ์ง ์์) ์ ๋ณด๋ฅผ ๋ชจ๋ ์์งํฉ๋๋ค.
์๊ฒฉ ์ธก์ ์ ์ธก์ ํญ๋ชฉ, ๋ถ์ฐ ์ถ์ , ๋ก๊น ์ ํฌํจํ๋ ์ผ๋ฐ์ ์ธ ์ฉ์ด์ ๋๋ค. ์๋น์ค ๋ฉ์๋ ์ธ ๊ฐ์ง ์ ํ์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ์์งํ๊ณ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๋ฉ์ปค๋์ฆ์ ์ ๊ณตํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๊ฐ๋ฅํ ์ต์ ์ ์๊ฐ ๋๋ฌด ๋ง์์ ์ฝ๊ฐ ๋ชจํธํด์ง๋๋ค. ๋ฉํธ๋ฆญ ์์ง ๋๊ตฌ๊ฐ ์์ต๋๋ค ๊ทธ๋ฆฌ๊ณ ๋ก๊ทธ๋ฅผ ์์งํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ ๊ธฐํ ๋๊ตฌ , , ๊ธฐํ (์๋ฅผ ๋ค์ด, ClickHouse์ ํจ๊ป K8์ ๊ฒฝ์ฐ - ์ฝ. ๋ฒ์ญ)๋ถ์ฐ ์ถ์ ์ ์ํด์๋ ๋ค์์ด ์์ต๋๋ค. ๋ฑ. ๊ฐ ์๋น์ค ๋ฉ์๋ ์ผ๋ถ ๋๊ตฌ๋ฅผ ์ง์ํ๊ณ ๋ค๋ฅธ ๋๊ตฌ๋ ์ง์ํ์ง ์์ ์ ์์ต๋๋ค. ํ๋ก์ ํธ๊ฐ ์ฑ๊ณตํ ์ ์์์ง ๋ณด๋ ๊ฒ์ ํฅ๋ฏธ๋ก์ธ ๊ฒ์ ๋๋ค. ์ด๋ ์ ๋ ์๋ ด์ฑ์ ์ ๊ณตํฉ๋๋ค.
์ด ๊ฒฝ์ฐ ์๋น์ค ๋ฉ์ ๊ธฐ์ ์ ์ฅ์ ์ ์ฌ์ด๋์นด ์ปจํ ์ด๋๊ฐ ์์น์ ์ผ๋ก ํด๋น ์๋น์ค์์ ์์ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์์งํ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ๋ค์ ๋งํด, ๋จ์ผ ์๊ฒฉ ์ธก์ ์์ง ์์คํ ์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ์๋น์ค ๋ฉ์๋ ๋ค์ํ ๋ฐฉ๋ฒ์ผ๋ก ์ด ๋ชจ๋ ์ ๋ณด๋ฅผ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด:
- CLI์์ ํน์ ์๋น์ค์ tail ๋ก๊ทธ
- ์๋น์ค ๋ฉ์ ๋์๋ณด๋์์ ํธ๋ ์์ฒญ ๋ณผ๋ฅจ์ ํ์ธํฉ๋๋ค.
- ๋ถ์ฐ๋ ์ถ์ ์ ๋ณด๋ฅผ ์์งํ์ฌ Jaeger์ ๊ฐ์ ์์คํ ์ผ๋ก ์ ๋ฌํฉ๋๋ค.
์ฃผ์, ์ฃผ๊ด์ ํ๋จ: ์ผ๋ฐ์ ์ผ๋ก ์๊ฒฉ ์ธก์ ์ ๊ฐ๋ ฅํ ์๋น์ค ๋ฉ์ ๊ฐ์ ์ด ๋ฐ๋์งํ์ง ์์ ๋ถ์ผ์ ๋๋ค. ๊ธฐ๋ณธ ์ ๋ณด๋ฅผ ์์งํ๊ณ ์ ์ค๋ฅ ๊ณผ ์ง์ฐ ์๊ฐ๊ณผ ๊ฐ์ ์ผ๋ถ "๊ณจ๋ ๋ฉํธ๋ฆญ"์ ์ฆ์ ์ถ์ ํ๋ ๊ฒ์ ๊ด์ฐฎ์ง๋ง, ์ผ๋ถ ์ ๋ฌธํ๋ ์์คํ ์ ๋์ฒดํ๋ ค๋ ํ๋์ผ์ํ์ธ ์คํ์ด ๋ฑ์ฅํ์ง ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ์ด ์ค ์ผ๋ถ๋ ์ด๋ฏธ ์ ํ๋ฆฝ๋์ด ์๊ณ ์ ์ดํด๋๊ณ ์์ต๋๋ค.
15. ๊ฐ์ฌ
์์ฝ: ์ญ์ฌ์ ๊ตํ์ ์์ ์ฌ๋์ ๊ทธ ์ญ์ฌ๋ฅผ ๋ฐ๋ณตํ ์ด๋ช ์ ๋๋ค.
๊ฐ์ฌ๋ ์์คํ ๋ด์์ ์ค์ํ ์ด๋ฒคํธ๋ฅผ ๊ด์ฐฐํ๋ ๊ธฐ์ ์ ๋๋ค. ์๋น์ค ๋ฉ์์ ๊ฒฝ์ฐ, ์ด๋ ํน์ ์๋น์ค์ ํน์ ์๋ํฌ์ธํธ์ ์์ฒญ์ ํ ์ฌ๋์ ์ถ์ ํ๊ฑฐ๋, ์ง๋๋ฌ์ ํน์ ๋ณด์ ๊ด๋ จ ์ด๋ฒคํธ๊ฐ ๋ช ๋ฒ ๋ฐ์ํ๋์ง ์ถ์ ํ๋ ๊ฒ์ ์๋ฏธํ ์ ์์ต๋๋ค.
๊ฐ์ฌ๊ฐ ์๊ฒฉ ์ธก์ ๊ณผ ๋งค์ฐ ๋ฐ์ ํ ๊ด๋ จ์ด ์๋ค๋ ๊ฒ์ ๋ถ๋ช ํฉ๋๋ค. ์ฐจ์ด์ ์ ์๊ฒฉ ์ธก์ ์ ์ผ๋ฐ์ ์ผ๋ก ์ฑ๋ฅ์ด๋ ๊ธฐ์ ์ ์ ํฉ์ฑ๊ณผ ๊ฐ์ ๊ฒ๊ณผ ์ฐ๊ด๋๋ ๋ฐ๋ฉด, ๊ฐ์ฌ๋ ์๊ฒฉํ ๊ธฐ์ ์ ์ธ ์์ญ์ ๋์ด์ ๋ฒ๋ฅ ๋ฐ ๊ธฐํ ๋ฌธ์ (์: GDPR ์ค์)์ ๊ด๋ จ๋ ์ ์๋ค๋ ๊ฒ์ ๋๋ค.
16. ์๊ฐํ
์์ฝ: ๊ธฐ์ดํ ์ธํฐํ์ด์ค์ ์์ฒ์ธ React.js๊ฐ ์ค๋ ์ด๊ธฐ๋ฅผ.
๋ ์ ์ ํ ์ฉ์ด๊ฐ ์์์ง๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง, ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ์ ๊ฐ ๋งํ๊ณ ์ ํ๋ ๊ฒ์ ์๋น์ค ๋ฉ์๋ ๊ทธ ์ผ๋ถ ๊ตฌ์ฑ ์์์ ๊ทธ๋ํฝ ํํ์ ๋๋ค. ์ด๋ฌํ ์๊ฐํ์๋ ํ๊ท ์ง์ฐ ์๊ฐ, ์ฌ์ด๋์นด ์ปจํ ์ด๋ ๊ตฌ์ฑ ์ ๋ณด, ์ํ ์ ๊ฒ ๊ฒฐ๊ณผ, ์๋ฆผ๊ณผ ๊ฐ์ ์งํ๊ฐ ํฌํจ๋ ์ ์์ต๋๋ค.
์๋น์ค ์งํฅ์ ์ธ ํ๊ฒฝ์์ ์ผํ๋ ๊ฒ์ His Majesty the Monolith๋ณด๋ค ํจ์ฌ ๋ ๋์ ์ธ์ง ๋ถํ๋ฅผ ์๋ฐํฉ๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์ธ์ง์ ์๋ฐ์ ์ด๋ป๊ฒ ํด์๋ ์ง ์ค์ฌ์ผ ํฉ๋๋ค. ๋ฒํผ์ ํด๋ฆญํ๊ธฐ๋ง ํ๋ฉด ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์๋ ์๋น์ค ๋ฉ์์ฉ ๊ฐ๋จํ ๊ทธ๋ํฝ ์ธํฐํ์ด์ค๋ ์ด ๊ธฐ์ ์ ์ฑ์ฅ์ ๋งค์ฐ ์ค์ํ ์ ์์ต๋๋ค.
๋ชฉ๋ก์ ํฌํจ๋์ง ์์์ต๋๋ค
์๋๋ ๋ชฉ๋ก์ ๋ช ๊ฐ์ง ์ฌ์ฉ ์ฌ๋ก๋ฅผ ๋ ํฌํจ์ํค๋ ค๊ณ ํ์ง๋ง, ๊ทธ๋ ๊ฒ ํ์ง ์๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ๋ค์์ ๋ด ๊ฒฐ์ ์ด์ ์ ํจ๊ป ๋์ดํ ๊ฒ์ ๋๋ค.
- ๋ฉํฐ ๋ฐ์ดํฐ ์ผํฐ. ์ ์๊ฐ์ ์ด๊ฑด ์๋น์ค ๋ฉ์์ ์ข๊ณ ๊ตฌ์ฒด์ ์ธ ์ ์ฉ์ด๋ ์๋น์ค ๊ฒ์ ๊ฐ์ ๊ธฐ๋ฅ ์ธํธ์ผ ๋ฟ ์ฌ์ฉ ์ฌ๋ก๋ ์๋๋๋ค.
- ์ง์ ๋ฐ ์ง์ถ. ์ด๋ ๊ด๋ จ๋ ๋ถ์ผ์ด์ง๋ง, ์ ๋ (์๋ง๋ ์ธ์์ ์ผ๋ก) "๋์ ๊ตํต" ์ฌ์ฉ ์ฌ๋ก๋ก ์ ํํ์ต๋๋ค. ์ถ์ ์ ๋ํด์๋ ๋ณ๋์ ๊ธฐ์ฌ๋ก ๋ค๋ฃจ๊ฒ ์ต๋๋ค.
๊ฒฐ๋ก
์ด์ ๋์ ๋๋ค! ๋ค์ ๋งํด, ์ด ๋ชฉ๋ก์ ๋งค์ฐ ์กฐ๊ฑด์ ์ด๋ฉฐ ๋๋ถ๋ถ ๋ถ์์ ํฉ๋๋ค. ๋ด๊ฐ ๋ญ๊ฐ๋ฅผ ๋์ณค๊ฑฐ๋ ์ค์๋ฅผ ํ๋ค๊ณ ์๊ฐ๋๋ฉด Twitter์์ ๋์๊ฒ ์ฐ๋ฝํด ์ฃผ์ธ์.). ์์๋ฒ์ ์ ์ค์ํด ์ฃผ์ธ์.
๋ฒ์ญ๊ฐ์ ์ถ์
์ด ๊ธฐ์ฌ์ ์ฃผ์ ๊ทธ๋ฆผ์ ๊ธฐ์ฌ์ ์ด๋ฏธ์ง๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค."(๊ทธ๋ ๊ณ ๋ฆฌ ๋งฅํค๋). ์ ํ๋ฆฌ์ผ์ด์ ์ ์ผ๋ถ ๊ธฐ๋ฅ(๋ น์)์ด ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ ์ฐ๊ฒฐ์ ์ ๊ณตํ๋ ์๋น์ค ๋ฉ์(ํ๋์)๋ก ์ด๋ป๊ฒ ์ด์ ๋์๋์ง ๋ณด์ฌ์ค๋๋ค.
๋ธ๋ก๊ทธ์์๋ ์ฝ์ด๋ณด์ธ์.
- ยซ";
- ยซ";
- ยซ".
์ถ์ฒ : habr.com
