쿠버네티스 네임스페이스

Soonwoo Kwon·2022년 3월 23일
0

쿠버네티스

목록 보기
2/2

네임스페이스란

네임스페이스는 단일 클러스터 내에서의 리소스 그룹 격리 메커니즘을 제공한다. 리소스의 이름은 네임스페이스 내에서 유일해야 한다. 다른 네임 스페이스에 같은 이름에 리소스가 존재하는 것은 가능하다.

네임스페이스 생성하기

yaml을 통해 생성하기

my-namespace.yaml

apiVersion: v1
kind: Namespace
metadata:
  name: <insert-namespace-name-here>

namespace 설정 정보를 담은 yaml 파일을 생성한다.

kubectl create -f ./my-namespace.yaml

위 명령어를 통해 my-namespace의 이름의 네임스페이스를 생성한다. -f 플래그는 파일 이름을 뜻한다.

커맨드 만으로 생성하기

kubectl create namespace <insert-namespace-name-here>

네임스페이스 삭제하기

kubectl delete namespaces <insert-some-namespace-name>

네임스페이스 다루기

요청에 네임스페이스 설정하기

--namespace 플래그를 통해 요청에 대한 네임스페이스를 설정할 수 있다.

kubectl run nginx --image=nginx --namespace=<insert-namespace-name-here>
kubectl get pods --namespace=<insert-namespace-name-here>

선호하는 네임스페이스 설정하기

네임스페이스가 존재하지 않는 오브젝트들은 default 네임스페이스를 갖게 된다. 만약 default 네임스페이스가 아니라 선호하는 네임스페이스를 기본값으로 사용하고 싶다면 다음 명령을 실행하면 된다.

kubectl config set-context --current --namespace=<insert-namespace-name-here>
# 확인하기
kubectl config view --minify | grep namespace:

모든 오브젝트가 네임스페이스에 속하지는 않는다. 대부분의 쿠버네티스 리소스는 네임스페이스에 속하지만, 네임스페이스 리소스 자체는 어떤 네임스페이스에도 속하지 않는다. 노드나 퍼시스턴트 볼륨과 같은 저수준 리소스는 어느 네임스페이스에도 속하지 않는다.

0개의 댓글

관련 채용 정보