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
관리 메뉴

Study_note

[Kubernetes] object, namespace, pod, lable 개념 정리 본문

Kubernetes

[Kubernetes] object, namespace, pod, lable 개념 정리

Study_note 2021. 11. 23. 01:27

쿠버네티스는 크게 관리를 받는 오브젝트와 관리하는 컨트롤러로 나뉜다

 

오브젝트

쿠버네티스에 의해서 배포 및 관리되는 오브젝트는 컨테이너화 되어 배포되는 애플리케이션의 워크로드를 기술하는 오브젝트로 오브젝트 생성시 인자로 전달하여 정의를 하거나 또는 yaml이나 json 파일로 스펙을 정의할 수 있다.

Pod, Service, Volume, Namespace 4가지가 있다

 

다음과 같은 오브젝트를 예로 들어보자

apiVersion - 스크립트를 실행하기 위한 쿠버네티스 API 버전이다 보통 v1을 사용한다

kind - 리소스의 종류 정의

metadata -  리소스의 각종 메타 데이타 이름, 라벨 등 각종 메타데이타를 넣는다

spec - 리소스에 대한 상세한 스펙을 정의한다.

 

namespace

동일한 물리 클러스터를 기반으로 하는 논리적으로 구분된 분리단위를 네임스페이스라고 한다.

pod은 네임 스페이스 별로 생성, 관리 될 수 있다

 

Pod

쿠버네티스에서 가장 기본적인 배포 단위로, 컨테이너를 포함하는 단위이다. 쿠버네티스의 특징 중의 하나는 컨테이너를 개별적으로 하나씩 배포하는 것이 아니라 Pod라는 단위로 배포하는데, Pod는 하나 이상의 컨테이너를 포함한다.

 

statci pod

api를 통하지 않고 kublet이 직접 실행하는 파드

 

파드 리소스 할당

특정 노드에 파드가 집중되어 성능이 나빠지고 자원의 효율이 떨어지는 것을 막기 위해서 파드를 설정할 때 파드 안 각 컨테이너가 cpu나 메모리를 얼마나 사용할 수 있을지 조건 지정 가능

request 최소 자원 요구량,  limit 최대 사용량 제한 설정

 

레이블

키-값의 쌍으로 구성되었으며 사용자가 클러스터 안에 오브젝트를 만들 때 메타 데이터로 설정

레이블의 키-값을 통해서 쿠버네티스 클러스터 안에서 컨트롤러들이 관리할 파드를 선택/구분하기 위해서 주로 사용

Comments