Developing

패스트캠퍼스 캐시백 챌린지 65일차 본문

Devops/Fastcampus 캐시백 챌린지

패스트캠퍼스 캐시백 챌린지 65일차

DEV_BLOG 2022. 6. 21. 16:42

수강 인증샷 1
수강 인증샷 2

 

Namespace API Resource와 관련된 내용의 클립을 수강하는식으로 챌린지를 진행하였다. 드디어 내일이면 기나긴 챌린지의 끝이다! Namespace는 label처럼 분류기능뿐 아니라 권한관리나 리소스 제한 기능도 있음을 알게되었다.  다음 포스팅으로는 Job/CronJob 과 관련된 내용을 포스팅할 예정이다. 

 

 

네임스페이스(Namespace)

  • 리소스를 논리적으로 나누기 위한 방법 제공 (논리적 그룹)
  • 네임스페이스의 단위는 사용자 목적에 맞추어 결정
    • 팀 단위 네임스페이스
    • 환경 단위 네임스페이스
    • 서비스 단위 네임스페이스

⇒ label처럼 분류뿐만 아니라 해당 논리적인 그룹에 대하여 권한 관리, CPU / Memory 등 리소스 제한 가능

⇒ 쿠버네티스 상의 API 오브젝트들을 논리적으로 구분하여 관리

 

실습링크는 하단의 링크에 해당한다.

https://github.com/tedilabs/fastcampus-devops/tree/main/3-docker-kubernetes/12-k8s-namespace

 

클러스터 범위 API 리소스와 네임스페이스 범위 API 리소스

  • 네임스페이스에 속할 수 있는 리소스를 네임스페이스 범위 API 리소스라고 함
  • 네임스페이스 범위 API 리소스(Namespace-scoped API Resources)
    • Pod, Deployment,Service, Ingress,Secret ConfigMap, ServiceAccount, Role,Role Binding 등
$ kubectl api-resources --namespaced=true

 

  • 클러스터 범위 API 리소스 (Cluster-scoped API Resources)
    • Node, Namespace, IngressClass, PriorityClass, ClusterRole, ClusterRoldBinding 등
$ kubectl api-resources --namespaced=false

 

클러스터 기본 네임스페이스

  • 쿠버네티스 클러스터를 생성하고나면 기본적으로 만들어져 있는 네임스페이스

 

  • default

⇒ 네임스페이스를 지정하지 않은 경우에 기본저긍로 할당되는 네임스페이스

 

  • kube-system

⇒ 쿠버네티스 시스템에 의해 생성되는 API 오브젝트들을 관리하기 위한 네임스페이스

 

  • kube-public

⇒ 클러스터 내 모든 사용자로부터 접근 가능하고 읽을 수 있는 오브젝트들을 관리하기 위한 네임스페이스

 

  • kube-node-lease

⇒ 쿠버네티스 클러스터 내 노드의 연결 정보를 관리하기 위한 네임스페이스

 

다른 네임스페이스의 서비스 접근하기

  • 서로 다른 서비스(Service)가 통신하기 위해서는 서비스명으로는 충분하지 않다.

⇒ 네임스페이스가 다르지만 서비스명이 동일하다면?

  • FQDN(Fully Qualified Domain Name)과 Domain Search 옵션
$ curl ${service}.${namespace}.svc.cluster.local         #FQDN
$ curl ${service}.${namespace}.svc
$ curl ${service}.${namespace}
$ curl ${service}                        #동일 네임스페이스 내 서비스 접근시 사용

 

ResourceQuota와 LimitRange

  • 네임스페이스 단위의 자원 사용량 관리할 수 있는 기능 제공
  • ResourceQuota

       -  네임스페이스에서 사용할 수 있는 자원 사용량의 합을 제한   

           -  할당할 수 있는 자원(CPU,Memory,Volume 등)의 총합 제한

           -  생성할 수 있는 리소스(Pod,Service,Deployment 등)의 개수 제한

  • LimitRange
    • 파드 혹은 컨테이너에 대하여 자원 기본 할당량 설정, 혹은 최대 / 최소 할당량 설정

 

 

 

 

https://bit.ly/3L3avNW

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

* 본 포스팅은 패스트캠퍼스 환급 챌린지를 위해 작성되었습니다.