44BIT๋์ [์ด๋ณด๋ฅผ ์ํ ์ฟ ๋ฒ๋คํฐ์ค ์๋ด์] ์ฟ ๋ฒ๋คํฐ์ค ์ํคํ ์ฒ ๊ฐ์๋ฅผ ๋ฃ๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค.
์ ์ด๋ฏธ์ง์ฒ๋ผ ์ฟ ๋ฒ๋คํฐ์ค์ ์ผ๋ฐ์ ์ธ ๊ตฌ์ฑ์ ๋ณด๋ฉด, ํฌ๋(pod)๋ฅผ ๊ทธ๋ฅ ๋์ฐ๋ ๊ฒฝ์ฐ๋ ๊ฑฐ์ ์๋ค๊ณ ๋ด๋ ๋๋ค.
Deployment
๋ฅผ ๋จผ์ ์์ฑ์ ํ๊ณ , ๊ทธ๋ฌ๋ฉด Deployment๊ฐ ReplicaSet
์ ์๋์ผ๋ก ์์ฑํ๊ณ , ๊ทธ๋ผ ReplicaSet๊ฐpod
๋ฅผ ์๋์ผ๋ก ์์ฑํ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ๋๋ค.๊ทธ๋ฆฌ๊ณ ์ด ์ค๋ธ์ ํธ๋ฅผ ์ธ๋ถ์ ๋ ธ์ถ์ ํ ๋๋
Service(ClusterIP)
๋ฅผ ํ๋ ๋ถ์ด๊ณ Ingress
๋ฅผ ๋ถ์ธ๋ค. Ingress๋ฅผ ๋ถ์ด๋ฉด NodePort
์ LoadBalancer
๊ฐ ์๋์ผ๋ก ์์ฑ๋๋ค.์ฆ, ์ค์ ๋ก๋ ํด๋ผ์ด์ธํธ๊ฐ ๋๋ฉ์ธ์ ํตํด ์ ์์ ํ๋ฉด, ๋ก๋๋ฐธ๋ฐ์๋ฅผ ๊ฑฐ์ณ์, ๋ ธ๋ํฌํธ๋ฅผ ๊ฑฐ์ณ์, ํด๋ฌ์คํฐIP๋ฅผ ๊ฑฐ์ณ์ Pod๋ก ์ฐ๊ฒฐ๋๋, ์ด๊ฒ ์ฟ ๋ฒ๋คํฐ์ค์ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ์ด๋ผ๊ณ ์ดํดํ๋ฉด ๋๋ค. ํ๋์ฉ ์ด๋ค ๊ธฐ๋ฅ์ ๊ฐ์ง ์ค๋ธ์ ํธ์ธ์ง ์ดํด๋ณด์.
Pod(ํฌ๋, ํ)์ ์ฟ ๋ฒ๋คํฐ์ค์์์ ๊ฐ์ฅ ์์ ๋ฐฐํฌ ๋จ์์ด๋ฉฐ, ๊ฐ Pod๋ง๋ค ๊ณ ์ ํ IP๋ฅผ ํ ๋น๋ฐ๋๋ค. ์ฌ๋ฌ ๊ฐ์ ์ปจํ ์ด๋๊ฐ ํ๋์ Pod์ ์ํ ์ ์๋ค.
๋ฆฌํ๋ฆฌ์นด์
์ ์ฌ๋ฌ ๊ฐ์ Pod๋ฅผ ๊ด๋ฆฌํ๋ฉฐ, replicas = 3
๊ณผ ๊ฐ์ ์์ผ๋ก ๋ช ๊ฐ์ Pod๋ฅผ ๊ด๋ฆฌํ ์ง ๊ฒฐ์ ํ๋ค. ์ฆ, ์ ๊ท Pod์ ์์ฑํ๊ฑฐ๋ ๊ธฐ์กด Pod์ ์ ๊ฑฐํ์ฌ ์ํ๋ ์(Replicas)๋ฅผ ์ ์งํ๋ ์ญํ ์ ํ๋ค.
ReplicaSet์ ๊ฐ์ธ๊ณ ์๋, ๋ฐฐํฌ ๋ฒ์ ์ ๊ด๋ฆฌํ๋ ์ค๋ธ์ ํธ์ด๋ค. ๋ด๋ถ์ ์ผ๋ก ReplicaSet์ ํ์ฉํด ๋ฌด์ค๋จ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ๊ฐ๋ฅ์ผ ํ๋ค.
์ฟ ๋ฒ๋คํฐ์ค๋ ๋คํธ์ํฌ๋ Service๋ผ๋ ๋ณ๋์ ์ค๋ธ์ ํธ๋ก ๊ด๋ฆฌํ๋ค. ์๋น์ค ์ค์์๋ ํด๋ฌ์คํฐIP๋ ํด๋ฌ์คํฐ ๋ด๋ถ์์ ์ฌ์ฉํ๋ ํ๋ก์ ์๋น์ค์ด๋ค. ํด๋ฌ์คํฐIP์ ์์ฒญ์ ๋ณด๋ด๋ฉด ์ฌ๋ฌ ๊ฐ์ Pod ์ค ํ๋๋ก ์๋์ผ๋ก ์์ฒญ์ด ๊ฐ๋ ๊ฒ์ด๋ค.
์ด๋ ๊ฒ ํด๋ฌ์คํฐIP๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๋ Pod์ IP๋ ๋์ ์ด๊ธฐ ๋๋ฌธ์ด๋ค. (Deployment๋ฅผ ํตํด Pod์ด ์ ๋ฐ์ดํธ๋ ๋ IP๋ฅผ ์ ์งํ ์ํ๋ก ์ ๋ฐ์ดํธ ๋๋๊ฒ ์๋๋ผ ๊ทธ๋ฅ Pod์ด ์ฃฝ๊ณ ์๋ก์ด Pod ์์ฑ๋๋ ๊ฐ๋ ์ด๋ค.) ๋ฐ๋ผ์ Deployment ์์ ์กด์ฌํด Pod์ IP์๋ ์๊ด์์ด ์ก์ธ์คํ ์ ์๋๋กํ๋, ๊ณ ์ IP๋ฅผ ๊ฐ์ง Service๊ฐ ํ์ํ ๊ฒ์ด๋ค.
ํด๋ฌ์คํฐ ๋ด๋ถ์์ ์๋น์ค ์ฐ๊ฒฐ์ DNS๋ฅผ ์ด์ฉํ๋ค.
๋ค๋ง ํด๋ฌ์คํฐIP๋ ํด๋ฌ์คํฐ ๋ด๋ถ์์๋ง ํต์ ํ ์ ์๋ค. ๊ทธ๋์ ์ธ๋ถ ๋ธ๋ผ์ฐ์ ์์๋ ์ ๊ทผํ ์ ์๋๋ก, NodePort๋ผ๋ ๊ฐ๋ ์ด ์๊ธด๋ค. NodePort๋ ๋ ธ๋(host)์ ๋ ธ์ถ๋์ด ์ธ๋ถ์์๋ ์ ๊ทผ์ด ๊ฐ๋ฅํ ์๋น์ค ์ด๋ค. ๋ค๋ง ๋ ธ๋/VM IP๊ฐ ๋ณ๊ฒฝ๋ ๊ฒฝ์ฐ ์ฒ๋ฆฌ๋ฅผ ํด์ค์ผํ๊ธฐ ๋๋ฌธ์ ์ค ์๋น์ค์์ ๋ ธ๋ํฌํธ๋ง์ผ๋ก ์ธ๋ถ ํด๋ผ์ด์ธํธ ๋ ธ์ถํ๋ ๋ฐฉ์์ ๊ถ์ฅ๋์ง ์๋๋ค. ๋ฐ๋ก ๋ค์์ ๋์ค๋ ๋ก๋ ๋ฐธ๋ฐ์ฑ์ ์ฌ์ฉํ๋ค.
๋ ธ๋ํฌํธ์๋ ์ค์ํ ํน์ง์ด ์๋๋ฐ, ๋ ธ๋๊ฐ ์ฌ๋ฌ ๊ฐ์ผ๋ ๋ ธ๋ํฌํธ๋ฅผ ์์ฑํ๋ฉด ๋ชจ๋ ๋ ธ๋์ ๋ ธ๋ํฌํธ๊ฐ ์์ฑ๋๋ค. ์ด๋ ์ด๋ค ๋ ธ๋์ ์์ฒญ์ ๋ณด๋ด๋ ๋ด๋ถ์ ์ํ๋ ํด๋ฌ์คํฐIP๋ก ์๋์ผ๋ก ์ ์ฐ๊ฒฐ๋๋๋ก ์๋ํ๋ค. ์๋ ๊ทธ๋ฆผ์ด ์ดํด์ ๋์์ด ๋๋ค.
๋ชจ๋ ๋ ธ๋์ ์ธ๋ถ ์ ์ ๋ถ์ฐ ์์ฒญ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด์๋ NodePort ๋ณด๋ค๋ Load Balancer ์ฌ์ฉ์ด ์ ์ ํ๋ค.
๊ฒ์๋ฌผ ์ ์ผ ์๋จ์ <์ผ๋ฐ์ ์ธ ๊ตฌ์ฑ>์ ๋ณด๋ฉด, ๋ ธ๋ํฌํธ ์์ ๋ก๋๋ฐธ๋ฐ์๋ผ๋ ๋ํ๋์ ์๋น์ค๊ฐ ๋ถ์ด์๋๊ฑธ ๋ณผ ์ ์๋ค. ๋จ 1๊ฐ์ IP๋ง์ ์ธ๋ถ์ ๋ ธ์ถํ๊ฒ ํ๋ฉฐ ํด๋น IP๋ก ๋ชจ๋ ํธ๋ํฝ์ ๋ถํ ๋ถ์ฐํ๋ค.
HTTP, TCP, UDP ๋ฑ ๋๋ถ๋ถ์ ํ๋กํ ์ฝ๊ณผ ํต์ ํ ์ ์๋ค.
ft_service ๊ณผ์ ์์๋ metallb
๋ผ๋ ๋ก๋๋ฐธ๋ฐ์๋ฅผ ์ฌ์ฉํ๋ค.
์ง๊ธ๊น์ง์ ์ค๋ธ์ ํธ๋ค์ด IPํฌํธ๋ก๋ง ์ ์ํ๋ ์๋น์ค์๋ค๋ฉด, Ingress๋ ๋๋ฉ์ธ ์ด๋ฆ, ๋๋ฉ์ธ ํจ์ค์ ๋ฐ๋ผ ๋ด๋ถ์ ์๋ ํด๋ฌ์คํฐIP์๋ ๊ฐ์ ์ด๋ฆ์ผ๋ก ์ฐ๊ฒฐํ ์ ์๋๋ก ํด์ค๋ค. Ingress ํ๋๋ง ๋ง๋ค์ด๋ ์ฌ๋ฌ ๊ฐ์ ๋ก๋๋ฐธ๋ฐ์๋ฅผ ๋ง๋ค์ด ์์์ ๋ญ๋นํ๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์๋ค.
๋ค๋ง ft_serviece ๊ณผ์ ์์๋ ์๊ทธ๋ฆฌ์ค๋ ์ฌ์ฉํ์ง ์๋๋ค.
๋ฑ๋ฑ ํจ์ฌ ๋ง์ ์ค๋ธ์ ํธ๊ฐ ์กด์ฌํ๋ค. ์ฟ ๋ฒ๋คํฐ์ค์ ์ด๋ ค์ด ์ ์ผ ์๋ ์๊ณ , ๊ทธ๋ฅ ์ด๋ฐ๊ฒ ์๋ค๋ ๊ฒ ์ ๋๋ง ์๊ณ ๋์ด๊ฐ๊ณ ํ์ํ๋ฉด ๋ด์ฉ์ ์ถ๊ฐํ๊ธฐ๋ก...
์๋ฌดํผ ์ฟ ๋ฒ๋คํฐ์ค๊ฐ ์ผ๋ง๋ ์ ๋์์ธ๋ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ์ธ์ง ์ ์ ์์๋ ๊ฐ์. ์ฒ์์๋ ๋ญ๊ฐ ์ด๋ ๊ฒ ๋ณต์กํ๊ฒ ์ถ์ํ ๋์ด์๊ณ ์ฐ๊ฒฐ๋์ด์๋์ง ํ๋๋ฐ, ์ด๊ฒ์ด ์๋ฒ์ค๋ฅผ ์์ ์ ์ผ๋ก, ํจ๊ณผ์ ์ผ๋ก, ๋ ๊ฐ๋ณ๊ฒ ์ด์ํ ์ ์๋ ๋น๋ฒ์ด์๋ค.