Kubernetes ํด๋ฌ์คํฐ ๊ด๋ฆฌ
Kubernetes ํด๋ฌ์คํฐ์ ํจ๊ณผ์ ์ธ ๊ด๋ฆฌ๋ ์ฑ๋ฅ๊ณผ ์์ ์ฑ์ ์ ์งํ๋ ๋ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ํด๋ฌ์คํฐ์ ๋
ธ๋ ํ์ฅ, ์
๊ทธ๋ ์ด๋ ๋ฐ ์
๋ฐ์ดํธ๊ฐ ํฌํจ๋ฉ๋๋ค.
ํด๋ฌ์คํฐ ํ์ฅ
Kubernetes ์ํ ํ์ฅ์ ์ ๊ณตํ์ฌ ์ํฌ๋ก๋ ์๊ตฌ์ ๋ฐ๋ผ ์์
์ ๋
ธ๋ ์๋ฅผ ์ฝ๊ฒ ์กฐ์ ํ ์ ์์ต๋๋ค.
- ๋
ธ๋ ์ถ๊ฐ(์ค์ผ์ผ ์
):
- ์ ๋
ธ๋ ์ค๋น: ์ ๋
ธ๋๊ฐ ์ํ๋ Kubernetes ๋ฒ์ ์ ๋ํ ๊ถ์ฅ ์์คํ
์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋์ง ํ์ธํฉ๋๋ค. Docker ๋๋ ์ปจํ
์ด๋ํ ์ปจํ
์ด๋ ๋ฐํ์, kubelet ์์ด์ ํธ ๋ฑ ํ์ํ ์ํํธ์จ์ด๋ฅผ ์ค์นํฉ๋๋ค. ์ด์ ์ฒด์ ์ ๋ฐ๋ฅธ ์์ธํ ์ค์น ๋จ๊ณ๋ ๊ณต์ Kubernetes ์ค๋ช
์๋ฅผ ์ฐธ์กฐํ์ญ์์ค.
- ๋
ธ๋๋ฅผ ํด๋ฌ์คํฐ์ ๊ฐ์
: ์ ๋
ธ๋์์ kubeadm ์กฐ์ธ ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ํด๋ฌ์คํฐ์ ์กฐ์ธํฉ๋๋ค. ์ด๊ธฐ ํด๋ฌ์คํฐ ์ค์ ์์ ๋ค์ ์ ๋ณด๊ฐ ํ์ํฉ๋๋ค.
- ๋ง์คํฐ ๋
ธ๋ IP ์ฃผ์: ๋ง์คํฐ ๋
ธ๋์ IP ์ฃผ์์
๋๋ค.
- ํ ํฐ ๊ฐ์
: ์ด ํ ํฐ์ ์ ์ด ํ๋ฉด ์ด๊ธฐํ ์ค์ ์์ฑ๋์ด ์ถ๋ ฅ์ ์ ๊ณต๋์์ต๋๋ค.
๋ค์์ kubeadm Join ๋ช
๋ น์ ์์
๋๋ค.
$ sudo kubeadm ๊ฐ์
<master_ip_address>:6443 --token <token> --discovery-ca-cert-hash sha256:<hash>
|
- ๋ง์คํฐ ๋
ธ๋<master_ip_address>์ ์ค์ IP ์ฃผ์๋ก ๊ต์ฒดํ์ญ์์ค.
- ์ ์ด ํ๋ฉด ์ด๊ธฐํ ์ค์ ์์ฑ๋ ํ ํฐ<token>์ผ๋ก ๊ต์ฒดํฉ๋๋ค.
- ์ ์ด ํ๋ฉด ์ด๊ธฐํ ์ถ๋ ฅ์ ๋์ค์ปค๋ฒ๋ฆฌ ํ ํฐ CA ์ธ์ฆ์ ํด์<hash>๋ก ๊ต์ฒดํฉ๋๋ค.
๋
ธ๋ ์ ๊ฑฐ(์ค์ผ์ผ ๋ค์ด):
๋
ธ๋๋ฅผ ์ ๊ฑฐํ๊ธฐ ์ ์ ๋จผ์ ๋
ธ๋๋ฅผ ๋น์ฐ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋๋ ์ธ์ ๋
ธ๋์์ ํฌ๋๋ฅผ ์ ๊ตํ๊ฒ ํด์ถ์ํค๊ณ ๊ฑด๊ฐํ ๋
ธ๋์์ ํฌ๋๋ฅผ ์์ฝํ์ฌ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ค์ดํ์์ ๋ฐฉ์งํฉ๋๋ค.
๋
ธ๋ ๋๋ ์ธ: kubectl drain ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ์ ๊ฑฐํ๋ ค๋ ๋
ธ๋๋ฅผ ๋๋ ์ธํฉ๋๋ค. ์ด ๋ช
๋ น์ DaemonSets(์ค์ ์์คํ
์๋น์ค)๊ฐ ๊ณ์ ์คํ๋๋๋ก ํ๋ฉด์ ๋
ธ๋์์ ํฌ๋๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
$ kubectl drain <node-name> --ignore-daemonsets
|
์ ๊ฑฐํ ๋
ธ๋<node-name>์ ํธ์คํธ ์ด๋ฆ ๋๋ IP ์ฃผ์๋ก ๊ต์ฒดํฉ๋๋ค.
ย
๋
ธ๋ ์ญ์ : ์ผ๋จ ๋๋ ์ธ๋๋ฉด kubectl ์ญ์ ๋
ธ๋ ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ํด๋ฌ์คํฐ์์ ๋
ธ๋๋ฅผ ์์ ํ๊ฒ ์ ๊ฑฐํ ์ ์์ต๋๋ค.
ย
$ kubectl delete node <node-name>
|
์ ๊ฑฐํ ๋
ธ๋<node-name>์ ํธ์คํธ ์ด๋ฆ ๋๋ IP ์ฃผ์๋ก ๊ต์ฒดํฉ๋๋ค.
๋ํ ์ ์ด ํ๋ฉด ์
๊ทธ๋ ์ด๋, ์์
์ ๋
ธ๋ ์
๊ทธ๋ ์ด๋, ๋กค์
์
๊ทธ๋ ์ด๋์ ๊ฐ์ ๊ธฐํ ๊ด๋ฆฌ ์์
์ ์ํํ ์ ์์ต๋๋ค.
์ต๊ณ ์ฑ๋ฅ ์ ์ง: ๋ชจ๋ํฐ๋ง, ๋ก๊น
๋ฐ ์คํ ๋ฆฌ์ง
Kubernetes ํด๋ฌ์คํฐ๋ฅผ ๊ฑด๊ฐํ๊ฒ ์ ์งํ๊ธฐ ์ํด์๋ ํจ๊ณผ์ ์ธ ๋ชจ๋ํฐ๋ง๊ณผ ๋ก๊น
์ด ๋งค์ฐ ์ค์ํฉ๋๋ค. Prometheus ๋ฐ ELK Stack๊ณผ ๊ฐ์ ๋๊ตฌ๋ ๋ฆฌ์์ค ํ์ฉ, ํฌ๋ ์ํ ๋ฐ ์ ๋ฐ์ ์ธ ์ฑ๋ฅ์ ๋ํ ์ฌ์ธต์ ์ธ ํต์ฐฐ๋ ฅ์ ์ ๊ณตํ์ฌ, ์ ํ๋ฆฌ์ผ์ด์
์ ์ํฅ์ ๋ฏธ์น๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ์ฌ์ ์ ์๋ณํ๊ณ ํด๊ฒฐํ ์ ์๋๋ก ํฉ๋๋ค. ๋ํ Kubernetes ์ ์ฐ์ฑ์ ์ํด ๋ค์ํ ํ์ฌ ์๋ฃจ์
๊ณผ ํตํฉ๋ฉ๋๋ค.
ํจ์จ์ ์ธ ๋ฐ์ดํฐ ๊ด๋ฆฌ๋ ์คํ
์ดํธํ ์ ํ๋ฆฌ์ผ์ด์
์ ํต์ฌ์
๋๋ค. ํจ์ด์คํ ๋ฆฌ์ง์ Portworxยฎ๋ Kubernetes ํด๋ฌ์คํฐ์ ์ํํ๊ฒ ํตํฉ๋๋ ๊ฐ๋ ฅํ ์ปจํ
์ด๋ ๋ค์ดํฐ๋ธ ์๋ฃจ์
์ ์ ๊ณตํฉ๋๋ค.
Portworx ๋ค์์ ํตํด ์ํฌ๋ก๋๋ฅผ ์ํ ์คํ ๋ฆฌ์ง๋ฅผ ๊ฐ์ํํฉ๋๋ค.
- ์ง์์ ์ธ ๋ณผ๋ฅจ ์ ๊ณต: ํฌ๋๊ฐ ๋ค์ ์์๋๊ฑฐ๋ ์ผ์ ์ด ์ฌ์กฐ์ ๋ ๊ฒฝ์ฐ์๋ ๋ฐ์ดํฐ๊ฐ ์ง์๋๋๋ก ํฉ๋๋ค.
- ๋ฐ์ดํฐ ๋ณดํธ ๋ฐ ์ฌํด ๋ณต๊ตฌ ์ ๊ณต: ์ค๋
์ท ๋ฐ ๋ณต์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฉฐ, ์ฌ๊ณ ๋ฐ์ ์ ๋ค์ดํ์์ ์ต์ํํฉ๋๋ค.
- ๊ด๋ฆฌ ๊ฐ์ํ: ์คํ ๋ฆฌ์ง ๋ฆฌ์์ค์ ํ๋ก๋น์ ๋, ๋ชจ๋ํฐ๋ง ๋ฐ ๊ด๋ฆฌ๋ฅผ ์ํ ์ฌ์ฉ์ ์นํ์ ์ธ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
๊ฒฐ๋ก
Kubernetes ํด๋ฌ์คํฐ๋ ํฅ์๋ ํ์ฅ์ฑ, ๋ด๊ฒฐํจ์ฑ ๋ฐ ๊ฐ์ํ๋ ์ ํ๋ฆฌ์ผ์ด์
๊ด๋ฆฌ๋ฅผ ์ ๊ณตํ๋ ํ๋์ ์ธ ์ปจํ
์ด๋ ์ค์ผ์คํธ๋ ์ด์
์ ๊ธฐ๋ณธ์
๋๋ค. Kubernetes ํด๋ฌ์คํฐ์ ์ ์ฌ๋ ฅ์ ์ต๋ํ ํ์ฉํ๋ ๋ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค. ํจ์ด์คํ ๋ฆฌ์งPortworx Kubernetes ์๋ฒฝํ๊ฒ ํตํฉ๋์ด ์ปจํ
์ด๋ํ๋ ์ํฌ๋ก๋์ ์ ๋ฐ์ ์ธ ํจ์จ์ฑ๊ณผ ์์ ์ฑ์ ํฅ์์ํค๋ ๊ฐ๋ ฅํ ์คํ ๋ฆฌ์ง ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.