쿠버네티스 자가 치유

쿠버네티스는 워크로드의 상태와 가용성을 유지할 수 있도록 자가 치유 기능을 제공한다. 실패한 컨테이너를 자동으로 교체하고, 노드가 사용할 수 없게 되면 워크로드를 다시 스케줄하며, 원하는 시스템 상태를 유지하도록 보장한다.

자가 치유 기능

  • 컨테이너 단위 재시작: 파드 내부의 컨테이너가 실패하면, 쿠버네티스는 재시작 정책에 따라 재시작한다.

  • 레플리카 교체: 디플로이먼트(Deployment) 또는 스테이트풀셋(StatefulSet)의 파드가 실패하면, 쿠버네티스는 지정된 레플리카 수를 유지하기 위해 대체 파드를 생성한다. 데몬셋(DaemonSet)의 일부인 파드가 실패한다면, 컨트롤 플레인이 대체 파드를 생성하여 동일한 노드에서 실행되도록 한다.

  • 영구 스토리지 복구: 퍼시스턴트볼륨(PersistentVolume)이 연결된 파드를 실행 중일 떄 노드에 장애가 발생하면, 쿠버네티스는 다른 노드에 있는 새로운 파드에 다시 연결할 수 있다.

  • 서비스 로드 밸런싱: 서비스 뒤에 있는 파드에 장애가 발생하면, 쿠버네티스는 자동으로 서비스의 엔드포인트에서 해당 파드를 제거하여 정상 파드로만 트래픽을 라우팅한다.

쿠버네티스가 자가 치유를 제공하는 주요 컴포넌트는 다음과 같다.

  • kubelet: 컨테이너가 실행 중인지 확인하고, 실패한 컨테이너를 재시작한다.

  • 레플리카셋(ReplicaSet), 스테이트풀셋, 데몬셋 컨트롤러: 파드 레플리카를 원하는 수로 유지한다.

  • 퍼시스턴트볼륨 컨트롤러: 상태 저장 워크로드의 볼륨 연결 및 연결 해제를 관리한다.

고려 사항

  • 스토리지 장애: 퍼시스턴트볼륨을 사용할 수 없게 되면, 복구 절차가 필요할 수 있다.

  • 애플리케이션 오류: 쿠버네티스는 컨테이너를 재시작할 수 있지만, 근본적인 애플리케이션 문제는 별도로 해결해야 한다.

다음 내용

최종 수정 August 12, 2025 at 8:22 PM PST: [ko] Translate /docs/concepts/architecture/self-healing (f6e0c7da28)