Part 20/26: 클러스터 업그레이드와 백업
Kubernetes 클러스터 운영에서 노드 유지보수, 클러스터 업그레이드, etcd 백업/복원은 필수적인 작업이다. 이 장에서는 클러스터를 안정적으로 유지하기 위한 핵심 운영 작업들을 다룬다. 노드 유지보수 노드 상태 확인 # 노드 목록 및 상태 kubectl get nodes kubectl get nodes -o wide # 노드 상세 정보 ...
Kubernetes 클러스터 운영에서 노드 유지보수, 클러스터 업그레이드, etcd 백업/복원은 필수적인 작업이다. 이 장에서는 클러스터를 안정적으로 유지하기 위한 핵심 운영 작업들을 다룬다. 노드 유지보수 노드 상태 확인 # 노드 목록 및 상태 kubectl get nodes kubectl get nodes -o wide # 노드 상세 정보 ...
원문 (kubernetes.io - Admission Controllers): An admission controller is a piece of code that intercepts requests to the Kubernetes API server prior to persistence of the object, but after the reques...
Kubernetes에서 Pod와 컨테이너의 보안 설정은 SecurityContext와 Pod Security Admission(PSA)을 통해 제어한다. 이 기능들은 컨테이너가 호스트 시스템에 미치는 영향을 제한하고, 최소 권한 원칙을 적용하는 데 핵심적이다. SecurityContext 개념 원문 (kubernetes.io - Securi...
Kubernetes의 RBAC(Role-Based Access Control)은 “누가” “무엇을” “어디서” 할 수 있는지를 제어한다. API 요청의 인증(Authentication) 이후 인가(Authorization) 단계에서 RBAC 규칙이 적용된다. RBAC 기본 개념 원문 (kubernetes.io - Using RBAC Autho...
Kubernetes에서 리소스 관리는 클러스터 안정성과 애플리케이션 성능의 핵심이다. requests는 스케줄링의 기준이 되고, limits는 런타임 제한을 설정한다. 이 두 값이 Pod의 QoS(Quality of Service) 클래스를 결정하며, 리소스 부족 시 어떤 Pod가 먼저 축출되는지에 영향을 미친다. 리소스 요청(Requests)과 제...
Kubernetes 스케줄러는 Pod가 실행될 노드를 결정한다. 기본적으로 리소스 가용성과 균형을 고려하지만, nodeSelector, Affinity/Anti-Affinity, Taints/Tolerations 등을 통해 세밀한 제어가 가능하다. 스케줄링 과정 kube-scheduler의 동작 flowchart TB detect["1. ...
컨테이너의 파일시스템은 일시적(ephemeral)이다. 컨테이너가 재시작되면 모든 데이터가 사라진다. Kubernetes는 Volume을 통해 데이터 지속성을 제공하고, PersistentVolume(PV)과 PersistentVolumeClaim(PVC)을 통해 스토리지를 추상화한다. Volume의 필요성 컨테이너 스토리지의 한계 컨테이너 재시...
애플리케이션 설정을 컨테이너 이미지에 하드코딩하면 환경별로 다른 이미지를 만들어야 한다. Kubernetes는 ConfigMap과 Secret을 통해 설정을 컨테이너와 분리하여 이식성과 보안성을 높인다. 원문 (kubernetes.io - ConfigMaps): A ConfigMap is an API object used to store non...
기본적으로 Kubernetes 클러스터 내의 모든 Pod는 서로 자유롭게 통신할 수 있다. 이는 마이크로서비스 간 통신에 편리하지만, 보안 관점에서는 위험할 수 있다. NetworkPolicy는 Pod 수준에서 네트워크 트래픽을 제어하는 방화벽 역할을 한다. 원문 (kubernetes.io - Network Policies): NetworkPo...
Service의 NodePort나 LoadBalancer는 L4(TCP/UDP) 수준에서 동작한다. 웹 애플리케이션에서 URL 경로나 호스트 기반 라우팅, TLS 종료 등 L7(HTTP/HTTPS) 기능이 필요할 때 Ingress를 사용한다. 원문 (kubernetes.io - Ingress): Ingress exposes HTTP and HT...