1. Kubernetes
2014๋ ์ ๊นํ๋ธ์ ์คํ ์์ค๋ก ์ฒ์ ๋ฐํ๋ ์ปจํ ์ด๋ ์คํ ํ๋ซํผ์ด๋ค.
์ปจํ ์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋น์ค ์ ์ง, ์ค์ผ์ผ๋ง, ๋ณด์ ๋ฑ ์ฌ๋ฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๋ก๋ ์ฌ๋ฌ๊ฐ์ง์ธ๋ฐ, ๊ทธ ์ค ํ๋๊ฐ ์ฟ ๋ฒ๋คํฐ์ค ๋ฐฐํฌ ํ๊ฒฝ์ ๊ตฌ์ถํ๋ค๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ด๋๋ ๋ฐฐํฌ๊ฐ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ด๋ค.
2. ๋ ธ๋ node
์ฟ ๋ฒ๋คํฐ์ค ๋ด์ ํด๋ฌ์คํฐ ๊ด๋ฆฌ์๋ ๊ฐ ์๋ฒ๋ฅผ ๊ด๋ฆฌํ๋๋ฐ, ์ด ์๋ฒ๋ฅผ ๋ ธ๋(node)๋ผ๊ณ ๋ถ๋ฅธ๋ค.
ํด๋ฌ์คํฐ ๋ด์ ๋ ธ๋๋ค์ ์ถ๊ฐ, ์ ์ธ, ๋กค๋ง ์ ๋ฐ์ดํธ๋ฅผ ํ์ฉํ์ฌ ์ ์ ํ ๊ตฌ์ฑํ ์ ์๋ค.
๋กค๋ง ์ ๋ฐ์ดํธ Rolling Update
ํด๋ฌ์คํฐ ๋ด์ ๋ ธ๋๋ฅผ ์ฐจ๋ก๋๋ก ์ ๋ฐ์ดํธํ๋ ๊ธฐ์
YAMLํ์ผ์ ์ ํ๋ฆฌ์ผ์ด์ ๋ค์ ์์ฑํ์ฌ ์ฟ ๋ฒ๋คํฐ์ค API์ ์ ๋ฌํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์คํ ํ๊ฒฝ์ ๊ตฌ์ถํ ์ ์๋ค.
ํด๋ฌ์คํฐ๋ ์ด YAMLํ์ผ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋์ผ๋ก ์ ๋ฐ์ดํธํ๊ฒ ๋๋ค.
์ฌ๊ธฐ์ ์ด YAMLํ์ผ์ ์ ํ๋ฆฌ์ผ์ด์ ๋งค๋ํ์คํธ(Application manifest)๋ผ๊ณ ํ๋ค.
์ด๋ค ๋ ธ๋๊ฐ ๊ณ ์ฅ์ด ๋๊ฑฐ๋, ์ด์์ ์ผ์ผํจ๋ค๋ฉด ์ฟ ๋ฒ๋คํฐ์ค ๋ด์์ ์๋์ผ๋ก ์ฌ์์ํ๊ณ , ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ถํ๊ฐ ๋์์ง๋ฉด ์๋์ผ๋ก ์ปจํ ์ด๋๋ฅผ ์ถ๊ฐ๋ก ์คํํ๊ฒ๋๋ค.
๋์ปค ์ด๋ฏธ์ง์ YAMLํ์ผ์ ํตํด ์๊ธฐ์๋ณตํ(self-healing)์ ํ๋ฆฌ์ผ์ด์ ํ๊ฒฝ์ด ๊ตฌ์ถ๋๋ ๊ฒ์ด๋ค.
3. ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค
์ฟ ๋ฒ๋คํฐ์ค ํด๋ฌ์คํฐ ๋ด์๋ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ํจ๊ป ํฌํจ๋์ด ์๋ค.
๊ทธ ์์๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ฑ ์ ๋ณด, APIํค, DB ๋น๋ฐ๋ฒํธ ๋ฑ Secret์ ์ ์ฅํด๋ ์ ์๋ค. (๋ค๋ฅธ ํ๊ฒฝ์์๋ ์ปจํ ์ด๋๋ฅผ ์คํํ ์ ์๋ ์ด์ ์ด๋ค.)
๋ํ, ์ฟ ๋ฒ๋คํฐ์ค์์ ์ถ๊ฐ์ ์ธ ์คํ ๋ฆฌ์ง๋ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์, ์ธ๋ถ์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ์ฌ ๊ณ ๊ฐ์ฉ์ฑ์ ํ๋ณดํ๊ฒ ๋๋ค.
4. ๋ถ์ฐ์ฒด๊ณ
๋๋ ์ต๊ทผ ์๋น์ค๋ฅผ MSA(Micro Service Architecture)๊ตฌ์กฐ๋ก ๊ตฌ์ฑํ๋ ค๋ ์๋๋ฅผ ํ๊ณ ์๋๋ฐ, ์ฟ ๋ฒ๋คํฐ์ค๊ฐ ์ ํฉํ ํด์ด๋ค.
์๋ํ๋ฉด ์ฟ ๋ฒ๋คํฐ์ค๋ ์ปจํ ์ด๋๋ง๋ค ์ด๋ค ์ฑ์ธ์ง ๋ฐ์ง์ง ์๊ณ , ์ฌ๋ฌ ์ปจํ ์ด๋๋ฅผ ์คํํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
๊ฐ ์ปจํ ์ด๋๋ง๋ค ๋์ผํ API๋ฅผ ๊ตฌ์ฑํ๋ ๋งค๋ํ์คํธ๋ฅผ ๊ตฌ์ฑํ๋ค๋ฉด ๋ชจ๋ ํ๋์ ํด๋ฌ์คํฐ๋ก ์คํํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
5. ํ๋ Pod
ํ๋(Pod)๋ ์ฟ ๋ฒ๋คํฐ์ค๊ฐ ๋ค๋ฃจ๋ ์ปจํ ์ด๋๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐ ์ฌ์ฉํ๋ ๋จ์์ด๋ค.
์ด ํ๋๋ ์ปจํ ์ด๋๋ฅผ ์คํํ๋ ๋ฆฌ์์ค์ด๊ณ , ์ด ํ๋๋ฅผ ๋ด๋นํ๋ ๊ฒ์ด ๋ํ๋ก์ด๋จผํธ(deployment)์ด๋ค.
๊ฐ ํ๋๋ง๋ค ๊ฐ์ IP์ฃผ์๋ฅผ ๊ฐ์ง๋ฉฐ, ์ด ๋๋ฌธ์ ๊ฐ ํ๋๋ผ๋ฆฌ ํต์ ์ ์ฃผ๊ณ ๋ฐ์ ์ ์๊ฒ ๋๋ค.
ํ๋์๋ ํ ๊ฐ ์ด์์ ์ปจํ ์ด๋๊ฐ ์คํ๋ ์ ์๋ค.
๊ฐ๋ ์ ๋ฆฌ๋ ์ด์ ๋๋ก ํ๋๊ฑธ๋ก ํ๊ณ , ์ดํ๋ก ์ค์ต์ ํตํด ๊ฐ๋ ์ ์ตํ๋ณด์ :)
์ฐธ๊ณ
Learn Kubernetes in a Month of Lunches: Stoneman, Elton
'DevOps > Kubernetes' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Kubernetes] 3. ์ฟ ๋ฒ๋คํฐ์ค ๋คํธ์ํฌ (0) | 2023.09.29 |
---|---|
[Kubernetes] 2. Pod, Deployment, YAML (0) | 2023.09.23 |
[Kubernetes] 1-1. Docker๋ก ์ฟ ๋ฒ๋คํฐ์ค ํ๊ฒฝ ๊ตฌ์ถํ๊ธฐ (0) | 2023.09.23 |