์ฟ ๋ฒ๋คํฐ์ค๋ ์ฌ๋ฌ ์ปดํจํฐ(Node)๋ก ๊ตฌ์ฑ๋ ํฐ ์์คํ
์ด์์.
๊ทธ๋ผ ์ด๋ฐ ์ง๋ฌธ์ด ์๊ธฐ๊ฒ ์ฃ ?
โ์๋ก์ด ์ ํ๋ฆฌ์ผ์ด์ (Pod)์ ์ด๋ค ์ปดํจํฐ์ ์ค์น๋์ง?โ
๋ฐ๋ก ์ด๊ฑธ ๊ฒฐ์ ํด์ฃผ๋ ๊ฒ ์ค์ผ์ค๋ง(Scheduling) ์ ๋๋ค!
Pod๊ฐ ๋ง๋ค์ด์ง๋ฉด, ๊ทธ๊ฒ์ ์ด๋ ์ปดํจํฐ(Node)์ ์คํ์ํฌ์ง ๊ฒฐ์ ํ๋ ๊ณผ์ ์ด์์.
์ด ์ญํ ์ ํ๋ ๊ฒ์ด ๋ฐ๋ก ์ฟ ๋ฒ๋คํฐ์ค ์ค์ผ์ค๋ฌ(kube-scheduler)์
๋๋ค.
์ค์ผ์ค๋ฌ๋ ๋ค์ 3๋จ๊ณ๋ฅผ ๊ฑฐ์ณ Pod์ ๋ฐฐ์น๋ฅผ ๊ฒฐ์ ํฉ๋๋ค:
[1๋จ๊ณ] ํํฐ๋ง: ๊ฐ๋ฅํ Node ๊ณ ๋ฅด๊ธฐ
[2๋จ๊ณ] ์ ์ ๋งค๊ธฐ๊ธฐ: ์ด๋ค Node๊ฐ ๋ ์ข์์ง ํ๋จ
[3๋จ๊ณ] ์ ํํ๊ธฐ: ๊ฐ์ฅ ์ข์ Node์ ๋ฐฐ์น
๋จผ์ โ์ด Pod๋ฅผ ์คํํ ์ ์๋ ์ปดํจํฐ๊ฐ ๋๊ตฌ์ผ?โ๋ผ๊ณ ๋ฌผ์ด์.
โ์ด๋ค Node๊ฐ ๊ฐ์ฅ ์ ํฉํ๊ฐ?โ๋ฅผ ํ๋จํ๋ ๋จ๊ณ์ ๋๋ค.
| ๊ธฐ์ค | ์ค๋ช |
|---|---|
| ์ฌ์ฉ๋ ์ ์ Node | ์ฌ์ ๊ฐ ๋ง์ Node ์ฐ์ |
| ์์์ด ๊ณ ๋ฅด๊ฒ ์ฌ์ฉ๋ Node | CPU/๋ฉ๋ชจ๋ฆฌ ๊ท ํ ์กํ Node ์ ํธ |
| ์ด๋ฏธ์ง๊ฐ ์ด๋ฏธ ์๋ Node | ์ด๋ฏธ์ง ๋ค์ด๋ก๋ ์๊ฐ ์ ์ฝ |
์ ์๊ฐ ๊ฐ์ฅ ๋์ Node๊ฐ ์ต์ข ์ ํ๋ฉ๋๋ค.
์ ์๊ฐ ์ ์ผ ๋์ Node์ Pod๊ฐ ์ค์ ๋ก ๋ฐฐ์น(Binding) ๋ฉ๋๋ค.
ํน์ Node๋ โํน์ ์ฉ๋โ๋ก๋ง ์ฌ์ฉํ๊ณ ์ถ์ ์ ์์ด์.
์: GPU ์ ์ฉ, ๊ด๋ฆฌ์ ์ ์ฉ ์๋ฒ ๋ฑ
์๋ก ์กฐ๊ฑด์ด ๋ง์์ผ๋ง ๋ฐฐ์น๊ฐ ๋ฉ๋๋ค.
Pod๋ ์ด๋ค Node์ ๋ฐฐ์น๋๊ธธ ์ํ๋์ง๋ฅผ ์ค์ ํ ์ ์์ด์.
Node ๋ผ๋ฒจ ๊ธฐ์ค์ผ๋ก โ์ด๋ฐ Node์ ๋ฐฐ์นํด์ฃผ์ธ์!โ
โ๊ฐ์ ์ข ๋ฅ์ ๋ค๋ฅธ Pod ๊ทผ์ฒ์์ ์คํํ๊ณ ์ถ์ด์.โ
โ๊ฐ์ ์ข ๋ฅ์ Pod์๋ ๋จ์ด์ ธ์ ์คํํ๊ณ ์ถ์ด์.โ
์นํ์ฑ ์ค์ ์ ํตํด Pod ๋ฐฐ์น๋ฅผ ๋ ์ค๋งํธํ๊ฒ ์ ์ดํ ์ ์์ด์.
kubectl label nodes node1 disktype=ssd
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: disktype
operator: In
values:
- ssd
โ๊ฐ์ ์ข
๋ฅ์ Pod๊ฐ ํ ๊ณณ์ ๋ชฐ๋ฆฌ๋ฉด ์ฅ์ ๋ฐ์ ์ ์ํํด์.โ
โ ๊ทธ๋์ Pod๋ค์ ๊ณจ๊ณ ๋ฃจ ๋ถ์ฐ์ํค๋ ๊ธฐ๋ฅ์ด ํ์ํฉ๋๋ค.
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: ScheduleAnyway
์ด๋ ๊ฒ ํ๋ฉด ์ฌ๋ฌ ์๋ฒ์ Pod๊ฐ ํผ์ ธ์ ์ฅ์ ์ ๋ ๊ฐํด์ ธ์! ๐
| ๊ฐ๋ | ์ค๋ช |
|---|---|
| ์ค์ผ์ค๋ง | Pod๋ฅผ Node์ ๋ฐฐ์นํ๋ ๊ณผ์ |
| ํํฐ๋ง | ์คํ ๊ฐ๋ฅํ Node๋ฅผ ๊ณจ๋ผ๋ด๊ธฐ |
| ์ ์ํ | ์ด๋ค Node๊ฐ ๋ ์ข์์ง ํ๋จ |
| Taint & Toleration | ๊ธ์ง/ํ์ฉ ์กฐ๊ฑด์ผ๋ก ๋ ธ๋ ์ ์ด |
| Affinity | ๋ฐฐ์น ํฌ๋ง ์กฐ๊ฑด ์ค์ |
| Spread | ๊ณ ๋ฅด๊ฒ ๋ถ์ฐ ๋ฐฐ์น |
์ฟ ๋ฒ๋คํฐ์ค๋ ๋จ์ํ ๋ฐฐ์น๊ฐ ์๋, ๋๋ํ๊ฒ Pod๋ฅผ ๋ฐฐ์นํฉ๋๋ค.
์ดํดํ๋ฉด ํด๋ฌ์คํฐ ์ด์์ด ํจ์ฌ ์์ ์ ์ด๊ณ ํจ์จ์ ์ผ๋ก ๋ฐ๋ ์ ์์ด์!
๐ ์ฐธ๊ณ ์๋ฃ