1. 모니터링 구성요소1) 노드 수준 메트릭- 노드 상태 메트릭: 클러스트 내 노드의 수와 각 노드의 상태- 리소스 사용량: CPU, 메모리, 디스크 I/O, 네트워크 대역폭 등의 사용량2) 파드 수준 메트릭- 파드 수 : 실행 중인 파드의 수- 리소스 사용량: 각 파드의 CPU 및 메모리 사용량, 재시작 횟수, 상태(실행 중, 대기 중 등)3) 컨트롤 플레인 매트릭- API 서버나 스케줄러와 같은 컨트롤 플레인 구성요소에는 발생하는 메트릭은 시스템 작동 상태를 보여줌 - 스케줄링 지연 시간이나 대기중 인 파드 수 등을 확인 4) 주요 모니터링 도구(1) Metrics Server : 경령화된 실시간 모니터링 솔루션- 노드와 파드의 CPU 및 메모리 사용량 데이터를 수집- kubectl top node..
1. DaemonSet 1) 개념- 클러스터의 모든 노드에서 특정 파드를 실행하도록 보장하는 리소스- ReplicaSet과 유사하지만, ReplicaSet이 지정된 수의 파들르 여러 노드에 분산 배치하는 반면, DaemonSet은 각 노드마다 하나의 파드를 실행하도록 설계2) 주요 특징(1) 노드별 파드 실행:- DaemonSet은 모든 노드에서 하나의 파드를 실행- 새로운 노드가 클러스터에 추가되면, DaemonSet은 자동으로 해당 노드에 파드를 생성 - 노드가 제거되도 해당 노드의 파드는 자동으로 삭제 (2) 자동 관리- DaemonSet은 클러스터 상태를 지속적으로 모니터링하며, 노드 추가/삭제 시 이를 자동으로 처리(3) 주요 사용 사례- 모니터링 및 로깅 에이전트: 각 노드에서 로그르 수집하거..
1. 수동 스케줄링1) 개념- 클러스터의 기본 스케줄러를 사용하지 않고 사용자가 직접 파드를 특정 노드에 할당하는 방식- 스케줄러가 비활성화되어 있거나, 특정 요구사항에 따라 파드를 수동으로 배치해야 하는 경우에 유용 2) 스케줄링의 기본 원리- 쿠버네티스의 기본 스케줄러는 새로 생성된 파드 중 nodeName필드가 설정되지 않은 파드를 대상으로 적절한 노드를 선택- 스케줄러는 노드의 리소스 상태와 정책(affinity, taints/tolerations 등)을 고려하여 가장 적합한 노드를 선택하고, 선택된 노드의 이름을 파드의 nodeName필드에 설정- 그러나 스케줄러가 없으면 파드는 Pending 상태로 남아있으며 실행되지 않습니다. 3) 수동스케줄링 방법(1) nodeName 필드를 설정하여 파..
##deployment 생성kubectl create -f deployment-definition.yaml##deployment 목록 확인 kubectl get deployments##출력 예시NAME READY UP-TO-DATE AVAILABLE AGEmyapp-deployment 3 3 3 1m1. Pod 1) 정의- 쿠버네티스에서 배포 가능한 가장 작은 단위로, 어플리케이션의 단일 인스턴스를 나타냄. - Pod는 하나 이상의 컨테이너를 캡슐화하며, 네트워크와 스토리지 리소스를 공유 2) Pod와 컨테이너(1) Pod와 컨테이너의 관계- 일반적으로 Pod는 하나의 컨테이너를 포함하지만, 필요에 따라 여러 컨테..
1. 쿠버네티스 아키텍처쿠버네티스의 주요 아키텍처는 컨트롤 플레인과 워크노드로 나뉜다.1) 컨트롤 플레인(Control Plane)- 클러스터의 상태를 관리, 워크로드 조정, 클러스터가 원하는 상태를 유지하도록 보장 (1) kube-apiserver- 쿠버네티스 API를 제공하는 중심 관리 컴포넌트- 외부 사용자, 관리자, 내부 구성요스가 클러스터와 상호작용- 모든 요청은 이 API 서버를 통해 처리(2) etcd: - 클러스터 데이터를 저장하는 일관적, 고가용성의 키- 값 저장소 - 노드, 포드, 설정 정보 등 클러스터 상태와 관련된 모든 데이터 저장 (3) kube-scheduler:- 새로 생성된 pod를 적절한 워커노드에 할당- 리소스 요구사항, 제약조건(taints/tolerations, 노드 ..