cKA SimB - Q16 네임스페이스 및 API 리소스

1 개요[ | ]

Namespace 및 API 리소스 확인
  • Kubernetes는 리소스를 논리적으로 분리하기 위해 Namespace 개념을 사용함
  • API 리소스는 Kubernetes가 관리하는 모든 객체 유형을 의미하며, kubectl api-resources 명령으로 확인 가능

2 Namespace 목록 확인[ | ]

  • 클러스터에 존재하는 Namespace 목록 보기
# kubectl get ns
NAME              STATUS   AGE
default           Active   12d
kube-system       Active   12d
kube-public       Active   12d
dev               Active   2d

3 특정 Namespace에 있는 리소스 보기[ | ]

# kubectl get all -n dev

4 API 리소스 목록 확인[ | ]

  • 현재 클러스터에서 지원되는 리소스 유형을 모두 나열
# kubectl api-resources
NAME                              SHORTNAMES   APIGROUP                       NAMESPACED   KIND
pods                              po                                         true         Pod
deployments                       deploy       apps                          true         Deployment
ingresses                         ing          networking.k8s.io             true         Ingress
persistentvolumeclaims            pvc                                        true         PersistentVolumeClaim
nodes                             no                                         false        Node

5 특정 리소스의 API 버전 확인[ | ]

# kubectl explain deploy
KIND:     Deployment
VERSION:  apps/v1

6 리소스 종류별 Scope[ | ]

  • kubectl api-resources 명령에서 NAMESPACED 항목으로 리소스의 범위를 확인할 수 있음:
    • true → 네임스페이스 범위 (예: Pod, Service, Deployment)
    • false → 클러스터 범위 (예: Node, PersistentVolume)

7 Namespace 생성 및 삭제 예시[ | ]

  • Namespace 생성:
# kubectl create ns test-ns
  • Namespace 삭제:
# kubectl delete ns test-ns

8 요약[ | ]

  • Namespace는 리소스를 논리적으로 격리하는 데 사용되며, kubectl get ns로 확인 가능
  • kubectl api-resources 명령을 통해 현재 클러스터에서 사용 가능한 모든 리소스 유형과 범위를 확인할 수 있음
  • 리소스가 네임스페이스 범위인지 클러스터 범위인지 확인하는 것은 RBAC 설정, 접근 제어 등에 필수적
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}