Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

클라우드 엔지니어 꿈나무

Kubernetes(K8S) 따배쿠 namespace - Centos7 본문

kubernetes

Kubernetes(K8S) 따배쿠 namespace - Centos7

새싹싹이 2023. 10. 9. 18:06

namespace : k8s API 중 하나

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

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

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

 

kubectl create namespacce

kubectl create deploy ui --image nginx --namespace green

 

kubectl create namespace green --dry-run -o yaml > green-ns.yaml

vi green-ns.yaml

kubectl create -f green-ns.yaml

 

namespace 관리

 

kubernetes 초기 설정 namespaces

namespace 설정을 하지 않는다면 default가 namespace 로 작동

 

# kubectl create namespace orange --dry-run -o yaml => yaml 파일로 생성 가능한지 확

# kubectl create namespace orange --dry-run -o yaml > orange-ns.yaml

# ls 

# vi orange-ns.yaml

 

하기와 같이 수정 

apiVersion: v1
kind: Namespace
metadata:
  name: orange

# kubectl create -f webser-pod.yaml -n blue => namespace 를 blue로 지정해서 실행 

# vi webser-pod.yaml 

apiVersion: v1
kind: Pod
metadata:
  labels:
    run: web
  name: webs
  namespace: orange
spec:
  containers:
  - image: nginx
    name: webs
    ports:
    - containerPort: 80
    
#labels 부분 삭제해도 무방

# kubectl create -f webser-pod.yaml 

# kubectl get pods -n orange

 

default 대신 blue를 base namespace로 설정하기

context 변경하여 설정 가능

#kubectl config view => 현재 쿠버네티스 config 보기

 

# kubectl config set-context blue --cluster kubernetes --user kubernetes-admin --namespace blue => context 새로 생성

# kubectl config view

context에 blue가 추가된 것을 확인할 수 있음

# kubectl config current-context => 현재 사용하고 있는 context 확인

현재까지는 kubernetes-admin@kubernetes를 base namespace로 사용하는 것을 볼 수 있음

# kubectl config use-context blue 

# kubectl config current-context 

blue namespace로 만들어졌던 pod가 namespace 입력 없이 바로 출력되는 것을 볼 수 있음

# kubectl get pod -n default => default namespace의 pod를 보려면 default 입력 필수 

# kubectl delete namespaces blue => blue namespace를 지우면 blue namespace로 만들어진 모든 pod들도 같이 삭제 됨

 

# kubectl config use-context kubernetes-admin@kubernetes => 네임스페이스 기본 사용을 디폴트 값으로 설정

 

<<추가 정보>>

https://hiheey.tistory.com/33 

 

Kubernetes Namespace - Centos7

namespace cluster 내 리소소로 하나의 물리적인 공간에 존재하는 K8S를 논리적인 작업 환경으로 분리 서로 다른 Namespace에는 영향을 끼치치 않기 때문에 팀별 서로 다른 K8S 작업 환경이 필요하다면 Nam

hiheey.tistory.com

<<참고 영상>>

https://youtu.be/pfkx8KDAZyk?si=ElLilUDiGfFmIFml