본문 바로가기
IT study/Kubernetes

04. K8S namespace 생성

by 핸조 2022. 12. 8.

* namespace

  - 클러스터 하나를 여러 개의 논리적인 단위로 나눠서 사용.

  - 쿠버네티스 클러스터 하나를 여러 팀이나 사용자가 함께 공유

  - 용도에 따라 실행해야 하는 앱을 구분할 때 사용

example

## namespace 문법 ##

$ kubectl create namespace <namespacename> // namespace 생성

$ kubectl get namespace // 현재 생성된 namespace 확인

default, kube-node-lease, kube-public 기본 namespace

$ kubectl get pod -n <namesapce> // 해당 namespace의 pod 확인.

orange 라는 namespace안에 webserver4 pod가 ready 상태 확인

pod를 생성할 때 namespace를 지정을 안해준다면 기본적으로 default namespace에 생성된다.

$ kubectl run nginx-server --image=nginx // default namespace에 nginx pod를 생성

kubectl get pods // 현재 생성된 pod 확인

kubectl get pods -n default // 위 명령어와 똑같음.

minikube 사용

그렇다면 기본 namespace를 바꿀수는 없을까 ? 만약 어느 namespace에서 대량의 pod를 관리 또는 생성을 해야할 때

보다 편하게 할순 없을까? 물론 가능하다 namespace switch 를 해보자.

 

1) namespace를 포함한 context 등록

## context 등록 ##

$ kubectl config view // 현재 context config 상태 확인

$ kubectl config set-context <nginx@minikube> --cluster=minikube --user=minikube -namespace=nginx // nginx namespace를 context 등록

context 구문에 namespace를 확인 해 보면 default 밑에 추가한 nginx를 확인 할 수 있다.

 

$ kubectl get pod

nginx namespace를 확인 해주는 것을 확인.

 

이제 default namespace는 nginx 이므로 기존 namespace를 확인하려면 -n 옵션을 주고 namespace 명으로 출력해야한다.

'IT study > Kubernetes' 카테고리의 다른 글

05. yaml 템플릿 및 API Version  (0) 2022.12.08
03. kubectl command 및 pod 생성  (0) 2022.12.07
02. K8S 구축하기  (0) 2022.12.06
01. kubernetes 사용을 위한 아키텍쳐  (0) 2022.11.26