๐Ÿ” ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค NameSpaces

๊น€์„ฑ์ธยท2023๋…„ 10์›” 12์ผ
0

[DevOps] ๐ŸณDocker & Kubernetes

๋ชฉ๋ก ๋ณด๊ธฐ
22/62

๋‹จ์ผ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฒฉ๋ฆฌ๋œ ๊ณต๊ฐ„์œผ๋กœ ๋‚˜๋ˆ„์–ด ์‚ฌ์šฉ๊ฐ€๋Šฅํ•จ.

  • ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋…ผ๋ฆฌ์  ๋‹จ์œ„๋กœ ๋‚˜๋ˆ ์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•จ.
  • ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํ•˜๋‚˜๋ฅผ ์—ฌ๋Ÿฌ ํŒ€/์‚ฌ์šฉ์ž๊ฐ€ ๊ณต์œ ํ•˜์—ฌ ์‚ฌ์šฉํ•จ.
  • ๋ฆฌ์†Œ์Šค ์ด๋ฆ„์€ ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋‚ด์—์„œ๋งŒ ๊ณ ์œ ํ•˜๊ฒŒ ์‚ฌ์šฉ๋จ (๋‹ค๋ฅธ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์—์„œ ๊ฐ™์€ ์ด๋ฆ„ ์กด์žฌ ๊ฐ€๋Šฅ)

kubectl get namespaces

  • default: ๊ธฐ๋ณธ ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค.
    • ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์—์„œ ๋ช…๋ น์„ ์‹คํ–‰ํ• ๋–„ ๋ณ„๋„์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ํ•ญ์ƒ default ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค์— ๋ช…๋ น ์ ์šฉ
  • kube-system: ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์‹œ์Šคํ…œ์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค.
    • ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๊ด€๋ฆฌ์šฉ ํŒŒ๋“œ์™€ ์„ค์ •์ด ์กด์žฌํ•จ.
  • kube-public: ํด๋Ÿฌ์Šคํ„ฐ ์•ˆ์— ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค.
    • ํด๋Ÿฌ์Šคํ„ฐ ์‚ฌ์šฉ๋Ÿ‰ ๊ฐ™์€ ์ •๋ณด๋ฅผ ๊ด€๋ฆฌ.
  • kube-node-lease : ๊ฐ ๋…ธ๋“œ์˜ ์ž„๋Œ€ ์˜ค๋ธŒ์ ํŠธ๋“ค์„ ๊ด€๋ฆฌํ•˜๋Š” ๋„ค์ž„์ŠคํŽ˜์ด์Šค

๋„ค์ž„ ์ŠคํŽ˜์ด์Šค ์ง€์ • ๋ช…๋ น์–ด

kubectl ๋ช…๋ น์–ด --namespace=<namespace๋ช…>

๋„ค์ž„ ์ŠคํŽ˜์ด์Šค ๋ณ€๊ฒฝ

kubectl config current-context: ํ˜„์žฌ ์ปจํ…์ŠคํŠธ ํ™•์ธ
kubectl config get-context <ํ™•์ธํ•œ ์ปจํ…์ŠคํŠธ๋ช…>: ์ปจํ…์ŠคํŠธ ์ •๋ณด ํ™•์ธ
kubectl config set-context <ํ™•์ธํ•œ ์ปจํ…์ŠคํŠธ๋ช…> --namespace=<๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ช…>: ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ณ€๊ฒฝ (--namespace= ๋งŒ ์ฃผ๋ฉด default๋กœ ๋‹ค์‹œ๋ณ€๊ฒฝ)
kubectl config view | grep namespace: ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ณ€๊ฒฝํ™•์ธ


๋„ค์ž„ ์ŠคํŽ˜์ด์Šค ์ƒ์„ฑ

kubectl create ns <๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ช…>

apiVersion: v1
kind: Namespace
metadata:
    name: ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๋ช…

์ „์ฒด ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค ์กฐํšŒ

kubectl get pod --all-namespaces

0๊ฐœ์˜ ๋Œ“๊ธ€