쿠버네티스
-
Kubernetes QoS란? (kube-prometheus-stack 설치로 살펴보는)TECH/Kubernetes 2023. 1. 19. 10:43
최근 kube-prometheus-stack을 설치한 후 prometheus 자체의 메모리 할당량을 살펴보려고 했는데, 이상하게 prometheus 컨테이너만 메트릭이 나타나지 않는 현상을 발견했다. 먼저 Kubernetes의 QoS가 뭔지 알아본 후 prometheus 메트릭이 나타나지 않은 이유를 살펴보자. QoS Classes Kubernetes는 QoS를 사용하여 Pod의 evicting과 scheduling을 결정한다. Kubernetes가 Pod를 생성하면 다음 세가지 중 하나의 QoS 클래스를 Pod에 할당하게 된다. Guaranteed Burstable BestEffort Guaranteed 파드 내의 모든 컨테이너는 memory limit과 memory request를 가져야 한다. 파드..
-
Namespaces 네임스페이스란?TECH/Kubernetes 2022. 11. 4. 19:33
Kubernetes에서 namespaces는 하나의 클러스터 내의 리소스 그룹을 분리하는 메커니즘을 제공한다. 리소스의 이름은 네임스페이스 내에서 유일하지만, 모든 네임스페이스에 걸쳐 유일한 것은 아니다. 네임스페이스 기반 스코핑은 namespace 기반 오브젝트(Deployments, Services, etc)에만 가능하며 클러스터 기반 오브젝트에는 사용할 수 없다. 언제 네임스페이스를 사용해야 할 까? 많은 유저가 여러팀, 프로젝트으로 나뉜 환경에서 사용되는 것이 목적이다. 사용자가 열명 정도로 얼마 안되는 클러스터에서는 네임스페이스를 사용할 필요가 전혀 없다. 네임스페이스가 제공하는 기능들이 필요할 때 사용을 시작해라. 네임스페이스는 이름에 대한 범위를 제공한다. 리소스의 이름은 네임스페이스 내에서..
-
Kubernetes Components - Control PlaneTECH/Kubernetes 2022. 10. 13. 22:07
Kubernetes 배포하면 클러스터를 얻게 된다. Kubernetes 클러스터는 노드라고 불리는 컨테이너화된 애플리케이션을 실행시키는 일련의 워커머신으로 구성되어 있다. 모든 클러스터는 최소 하나의 워커노드를 갖는다. 워커 노드는 애플리케이션 워크로드의 컴포넌트들인 Pod들을 호스트 한다. Control plane은 클러스터 내의 워커 노드와 Pod를 관리한다. 프로덕션 환경에서 control plane은 일반적으로 여러 컴퓨터에 걸쳐 실행되고, 클러스터는 일반적으로 여러 노드를 가지기 때문에 fault-tolerance와 high availability를 제공한다. Control Plane Components control plane의 컴포넌트는 클러스터에 대한 전반적인 결정 뿐만 아니라 (예: 스케..
-
Custom Resource 커스텀 리소스란?TECH/Kubernetes 2022. 8. 16. 11:30
Custom resources 리소스는 특정한 종류의 API 객체들의 집합을 저장하는 Kubernetes API 내의 엔드포인트이다. 예를 들어, 빌트인 파드 리소스는 파드 객체들을 가지고 있다. Custom resource는 Kubernetes API의 확장으로, 기본 Kubernetes 설치시 반드시 사용할 수 있는 것은 아니다. Custom resource는 특정한 kubernetes 설치의 커스텀화를 나타낸다. 하지만, 많은 핵심 kubernetes functions은 custom resource를 이용하여 만들어지고, kubernetes를 더 모듈화한다. Custom resource는 동적 등록을 통해 실행 중인 클러스터에서 사라졌다 나타났다를 할 수 있고, 클러스터 관리자는 custom res..