๐๋ฐ๋ธ์ต์ค, ๋ฒ ์ค์ฒ์๋ฒ, ์ฟ ๋ฒ๋คํฐ์ค - 2
๐ญํ๋ฆฐ๋ถ๋ถ์ ์ง์ ๋ถํ๋๋ ค์
content_copy
- ๋ฐ๋ธ์ต์ค, ๋ฒ ์ค์ฒ์๋ฒ, ์ฟ ๋ฒ๋คํฐ์ค (1/2) : ๋ฐ๋ธ์ต์ค,์ฟ ๋ฒ๋คํฐ์ค์ ๋ํด์
- โถ๋ฐ๋ธ์ต์ค, ๋ฒ ์ค์ฒ์๋ฒ, ์ฟ ๋ฒ๋คํฐ์ค (2/3) : ๋ฒ ์ค์ฒ์๋ฒ, ์ฟ ๋ฒ๋คํฐ์ค ํ๋ ๋ชจ๋ํฐ๋ง ๋ฐฉ๋ฒ์ ๋ํด์
- ๋ฐ๋ธ์ต์ค, ๋ฒ ์ค์ฒ์๋ฒ, ์ฟ ๋ฒ๋คํฐ์ค (3/3) : ์ฐ๋ฆฌํ์ฌ์ ์๋ฒ (๋ฒ ์ค์ฒ์๋ฒ, ์ฟ ๋ฒ๋คํฐ์ค ๋ฑ) ์ํคํ
์ฒ (๋ฏธ๊ณต๊ฐ)
๐ ๋ฒ ์ค์ฒ(bastian) ์๋ฒ, ๋ฒ ์ค์ฒ ํธ์คํธ ?

- ๋ฒ ์ค์ฒ์๋ฒ์ ๊ฒฝ์ฐ ๋ด๋ถ(์ ๋ฌดํ๊ฒฝ)๊ณผ ์ธ๋ถ ๋คํธ์ํฌ ์ฌ์ด์์ ๊ฒ์ดํธ์จ์ด ์ญํ ์ด๋ค.
- ์ด๋ ๋ณด์ ๋์ฑ ์ ๋ํ ์ผํ์ผ๋ก ๋คํธ์ํฌ ๊ณต๊ฒฉ์ ๋ํ ๋ฐฉ์ด ์ญํ ์ ์ํํ๋ค.
- ์ด ์ธ์๋ ๋ฒ ์ค์ฒ ํธ์คํธ๋ฅผ ํตํด ์ธ๋ถ ์ ํ๋ฆฌ์ผ์ด์ ํ๊ฒฝ์ ์ ์,๊ด๋ฆฌ๋ฅผ ํ ์ ์๋ค.
๐ ์ด์ ์ค ์๋น์ค ๋ชจ๋ํฐ๋ง(ํ๋,๋ ธ๋ ๋ชจ๋ํฐ๋ง)
1. kubectl์ ์ด์ฉํ ํ๋ ๋ชจ๋ํฐ๋ง (์ค์น ํ์)
- Kubernetes api๋ฅผ ์ฌ์ฉํด์ ์ฟ ๋๋ฒ ํฐ์ค ์ปจํธ๋กค ํ๋ ์ธ๊ณผ ํต์ ํ๋ ์ปค๋ฉ๋ ๋ผ์ธ ํด(๋๋ CLI)
- ๋ฌธ๋ฒ (๊ณต์๋ฌธ์ ์ฐธ๊ณ - https://kubernetes.io/ko/docs/reference/kubectl/)
- kubectl [command] [type] [name] [flags]
- command: ํ๋ ์ด์์ ๋ฆฌ์์ค์์ ์ํํ๋ ค๋ ๋์์ ์ง์ ํ๋ค. ์: create, get, describe, delete
- TYPE: ๋ฆฌ์์ค ํ์ ์ ์ง์ ํ๋ค. ๋ฆฌ์์ค ํ์ ์ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์์ผ๋ฉฐ ๋จ์ํ, ๋ณต์ํ ๋๋ ์ฝ์ด ํ์์ ์ง์ ํ ์ ์๋ค. ์๋ฅผ ๋ค์ด, ๋ค์์ ๋ช ๋ น์ ๋์ผํ ์ถ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ์์ฑํ๋ค.
- NAME: ๋ฆฌ์์ค ์ด๋ฆ์ ์ง์ ํ๋ค. ์ด๋ฆ์ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ๋ค. ์ด๋ฆ์ ์๋ตํ๋ฉด, ๋ชจ๋ ๋ฆฌ์์ค์ ๋ํ ์ธ๋ถ ์ฌํญ์ด ํ์๋๋ค. ์: kubectl get pods
- flags: ์ ํ์ ํ๋๊ทธ๋ฅผ ์ง์ ํ๋ค. ์๋ฅผ ๋ค์ด, -s ๋๋ --server ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ์ฟ ๋ฒ๋คํฐ์ค API ์๋ฒ์ ์ฃผ์์ ํฌํธ๋ฅผ ์ง์ ํ ์ ์๋ค.
- ex) kubectl get configMap ,kubectl get pod pod1 emdemd
- kubectl [command] [type] [name] [flags]
- ํ
- linux์ watch ๋ช ๋ น์ด๋ฅผ ์คํํด ์ฟ ๋ฒ๋คํฐ์ค์ ํ๋์ ๋ณด๋ฅผ ์ผ์ ์๊ฐ๋ง๋ค ๊ฐฑ์ ํ๊ฒ ํ ์๋ ์๋ค.
- linux watch : watch [OPTIONS] COMMAND
- watch -n 1 -d kubectl get pods
-n์ ์ด๋จ์ ๋ฐ๋ณต ๊ฐ๊ฒฉ์ ๋ํ ์ ์ (1์ด๋ง๋ค ๋ฐ๋ณต)
-d๋ ๋ช
๋ น์ด ๊ฐฑ์ ์ ๋ณ๊ฒฝ๋๋์ ์ด ์์ผ๋ฉด ๊ฐ์กฐํด์ฃผ๋ ๊ธฐ๋ฅ(์๊น๋ฑ์ผ๋ก)
- kubectl get pods : kubectl๋ช
๋ น์ด๋ก pods์ ๋ณด๋ฅผ ๊ฐ์ ธ์ค๊ธฐ
๋ช
๋ น์ด ๊ฒฐ๊ณผ (watch -n 1 -d kubectl get pods)
Every 1,0s: kubectl get pods
NAME READY STATUS RESTARTS AGE
my-release-mariadb-0 1/1 Running 0 4m8s
my-release-wordpress-ddd8857f6-66bcm 1/1 Running 0 4m8s
2. k9s๋ฅผ ์ด์ฉํ ํ๋ ๋ชจ๋ํฐ๋ง (์ค์น ํ์)

- k9s? - ์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์คํ์ผ๋ฆฌ์ํ๊ฒ ๊ด๋ฆฌํ๋ CLI
- ์ฟ ๋ฒ๋คํฐ์ค(์ดํ k8s)์ ์ํธ์์ฉํ๊ธฐ ์ํ ํฐ๋ฏธ๋ ๊ธฐ๋ฐ UI์.(kubectl์ ๋ด๋ถ์์ ์ํํด์ค๋ค๊ณ ์๊ฐํ๋ฉด ๋จ)
- ์ฟ ๋ฒ๋คํฐ์ค์ ๋ฐฐํฌ๋ ๋ฆฌ์์ค(ํ๋,๋ ธ๋,์๋น์ค)๋ฅผ ๊ฐ๋จํ ์ปค๋งจ๋๋ ์กฐ์(๋ฐฉํฅํค,์ํฐํค ๋ฑ)์ ํตํด ์ค์๊ฐ์ผ๋ก ํ์ธ์ด ๊ฐ๋ฅํจ.(์ง์์ ์ผ๋ก ์ํ๊ฐ ๊ฐฑ์ ๋จ)
- ํด๋น ๋ฆฌ์์ค์ ์ํธ์์ฉ์ด ๊ฐ๋ฅํจ(ํ๋ describe, ํด๋น ํ๋์ ์ ์, ํ๋ ํฌ ๋ฑ)
- ์ฐ๋ฆฌ๊ฐ ๊ฐ์ฅ ๋ง์ด ํ์ธํ๊ฒ ๋ ํ๋ ๋ฆฌ์คํธ (์ด๋ฏธ์ง ์ถ์ฒ๋ ๊ณต์ํ)
-
- NAME : ํ๋๋ช
- READY : ์ค๋น๋ ์ปจํ ์ด๋ / ์ ์ฒด ์ปจํ ์ด๋
- RESTART : ํ๋ ์ฌ์์ ํ์ (์ฟ ๋ฒ๋คํฐ์ค ์ค์ ์ ๋ฐ๋ผ ์๋์ผ๋ก ์ฌ์์ํจ)
- STATUS : ํ๋ ์ํ (Running ์ํ๋ง ์๋น์ค ๊ฐ๋ฅ)
- CPU/MEM : ํ์ฌ CPU์ฌ์ฉ๋ / ๋ฉ๋ชจ๋ฆฌ
- /R , /L
- R : ํ์ฌ ์์ฒญ๋ ๋๋น ํ๋ ์ฌ์ฉ๋์ ๋ฐฑ๋ถ์จ๋ก ํ๊ธฐ
- L : ์ค์ ํด์ค ์ต๋ ์ค์ ๊ฐ์ ๋ฐฑ๋ถ์จ๋ก ํ๊ธฐ
- IP : ์ค์ IP ์ฃผ์
- Node : ํ๋๊ฐ ์ํด์๋ ๋ ธ๋ ๋ช (๋ ธ๋:ํ๋๋ 1:N ์ผ๋ก ๋์ด์์)
-
- ์ฃผ๋ก ์ฌ์ฉ ๋จ์ถํค
- d : ํ๋์ describe๋ฅผ ๋ณผ ๋ ์ฌ์ฉ
- - ํด๋น ๋ช ๋ น์ด๋ฅผ ํตํด ์ค์ ํ์ผ์ ๋ณผ ์ ์๊ณผ ์ด๋ฒคํธ๋ฅผ ๋ณผ ์ ์๋๋ฐ, `์ด๋ฒคํธ`ํญ๋ชฉ์์ ํด๋น ํ๋๊ฐ Running์ ์คํจํ ์ด์ ๋ค์ ์ฐพ์ ์ ์์.(ํด๋น ์๋ฌ๋ฉ์์ง๋ฅผ ๋ณด๊ณ ๊ตฌ๊ธ๋งํด์ ํด๊ฒฐํ๋ ์)
- ctrl+k : ํ๋ kill ์ ์ฌ์ฉ
- ์ํฐ : ํด๋น ํ๋์ ์ ์ํ๊ธฐ ์ํด ์ฌ์ฉ
- ์ด๋ฏธ์ง์ ์๋๋ฐ help๋ ์ฐธ๊ณ ๊ฐ๋ฅ
- / :๊ฒ์๊ธฐ๋ฅ
/pods : ํ๋ ๋ฆฌ์คํธ ์กฐํ /nodes : ๋ ธ๋ ๋ฆฌ์คํธ ์กฐํ /service : ์๋น์ค ๋ฆฌ์คํธ ์กฐํ /๊ฒ์ํ๊ณ ์ถ์ ํ ์คํธ : ๊ฒ์๊ฒฐ๊ณผ ์กฐํ
- d : ํ๋์ describe๋ฅผ ๋ณผ ๋ ์ฌ์ฉ

์ถ์ฒ
๋ฐ์ํ