Namespace

Ethan·2021년 6월 10일
0

Kubernetes

목록 보기
5/16

Kubernetes는 하나의 Cluster를 기반 동작하는 가상 클러스터를 지원한다.
즉 하나의 Cluter 내부에서 여러 Cluster를 사용하는 것과 같은 효과를 지닐 수 있다.
이걸 가능하게 해주는 개념이 바로 Namespace이다.

Namespace의 사용 이유

  • 여러가지 종류의 Object가 존재할때 이 Object를 작은 그룹으로 분리 할 수 있다.
  • 분리된 Namespace에서는 동일한 Object의 Naming을 사용 할 수 있다.
    • Object의 name은 Namespace 내부에서 유일해야 한다.

물론 일부 Object는 Namespace에 속하지 않는다.
ex) Node Resource (Daemonset)

kube-로 시작하는 Namespace는 Kubernetes system에서 사용하는 namespace이다.

kubectl get namespace

kubernetes를 사용할때 기본적으로 4가지의 namespace가 제공된다.

  • default
    • namespace가 존재하지 않는 Object을 위한 기본 namespace
  • kube-system
    • Kubernetes System에서 생성한 Object들이 위치하는 namespace
  • kube-public
    • Cluster에서 공개할 필요가 있는 Object들이 위치한다.
    • required는 아니면 관례로 사용된다.
  • kube-node-lease
    • scaling을 할 때 Node의 heartbeat의 성능을 향상 시키는 Node와 관련있는 Object들이 위치한다.

Namespace를 삭제하게 되면 삭제하는 Namespace에 속한 Object는 모두 삭제된다.

profile
잘 하고 싶다는 의욕만 넘치는 평범한 개발자

0개의 댓글