노드 상태 문제 감지 및 노드 자동 복구 활성화 - Amazon EKS

이 페이지 개선에 도움 주기

이 사용자 가이드에 기여하려면 모든 페이지의 오른쪽 창에 있는 GitHub에서 이 페이지 편집 링크를 선택합니다.

노드 상태 문제 감지 및 노드 자동 복구 활성화

노드 상태는 워크로드를 효과적으로 실행하기 위한 Kubernetes 노드의 기능 및 운영 상태를 나타냅니다. 정상 노드는 예상 네트워크 연결을 유지하고, 컴퓨팅 및 스토리지 리소스가 충분하며, 중단 없이 워크로드를 성공적으로 실행할 수 있습니다.

Amazon EKS는 정상 노드를 유지하는 데 도움이 되도록 노드 모니터링 에이전트노드 자동 복구를 제공합니다. 이러한 기능은 EKS Auto Mode 컴퓨팅에서 자동으로 활성화됩니다. 또한 EKS 관리형 노드 그룹 및 Karpenter에서 자동 노드 복구를 사용할 수 있으며, AWS Fargate를 제외한 모든 EKS 컴퓨팅 유형에서 EKS 노드 모니터링 에이전트를 사용할 수 있습니다. EKS 노드 모니터링 에이전트와 자동 노드 복구는 함께 사용할 때 가장 효과적이지만, EKS 클러스터에서 개별적으로 사용할 수도 있습니다.

중요

노드 모니터링 에이전트노드 자동 복구는 Linux에서만 사용할 수 있습니다. Windows에서는 이러한 기능을 사용할 수 없습니다.

노드 모니터링 에이전트

EKS 노드 모니터링 에이전트는 노드 로그를 읽어 상태 문제를 감지합니다. 로그를 구문 분석하여 장애를 감지하고 노드의 상태에 대한 상태 정보를 표시합니다. 감지된 각 문제 카테고리에 대해 에이전트는 워커 노드에 전용 NodeCondition을 적용합니다. EKS 노드 모니터링 에이전트에서 감지한 노드 상태 문제에 대한 자세한 내용은 EKS 노드 모니터링 에이전트에서 노드 상태 문제 감지 섹션을 참조하세요.

EKS Auto Mode에는 노드 모니터링 에이전트가 포함되어 있습니다. 다른 EKS 컴퓨팅 유형의 경우 노드 모니터링 에이전트를 EKS 추가 기능으로 추가하거나 헬름과 같은 Kubernetes 도구를 사용하여 관리할 수 있습니다. 자세한 내용은 노드 모니터링 에이전트 구성 섹션을 참조하세요.

EKS 노드 모니터링 에이전트를 사용하면 노드 상태 문제에 대한 다음과 같은 카테고리가 노드 조건으로 표시됩니다. Ready, DiskPressureMemoryPressure는 EKS 노드 모니터링 에이전트 없이도 표시되는 표준 Kubernetes 노드 조건입니다.

노드 조건 설명

AcceleratedHardwareReady

AcceleratedHardwareReady는 노드의 가속 하드웨어(GPU, Neuron)가 올바르게 작동하는지를 나타냅니다.

ContainerRuntimeReady

ContainerRuntimeReady는 컨테이너 런타임(Containered 등)이 올바르게 작동하고 컨테이너를 실행할 수 있는지를 나타냅니다.

DiskPressure

DiskPressure는 노드에서 디스크 압력(디스크 공간 부족 또는 높은 I/O)이 발생하고 있음을 나타내는 표준 Kubernetes 조건입니다.

KernelReady

KernelReady는 커널이 심각한 오류, 패닉 또는 리소스 소진 없이 올바르게 작동하는지를 나타냅니다.

MemoryPressure

MemoryPressure는 노드에서 메모리 압력(사용 가능한 메모리 부족)이 발생하고 있음을 나타내는 표준 Kubernetes 조건입니다.

NetworkingReady

NetworkingReady는 노드의 네트워킹 스택이 올바르게 작동하는지(인터페이스, 라우팅, 연결)를 나타냅니다.

StorageReady

StorageReady는 노드의 스토리지 하위 시스템이 올바르게 작동하는지(디스크, 파일 시스템, I/O)를 나타냅니다.

준비됨

Ready는 노드가 정상이고 포드를 수락할 준비가 되었음을 나타내는 표준 Kubernetes 조건입니다.

자동 노드 복구

EKS 자동 노드 복구는 노드 상태를 지속적으로 모니터링하고 감지된 문제에 대응하며 가능하면 노드를 교체하거나 재부팅합니다. 이를 통해 수동 개입을 최소화하면서 클러스터 신뢰성을 개선하고 애플리케이션 가동 중지 시간을 줄일 수 있습니다.

EKS 자동 노드 복구는 자체적으로 kubelet, 수동으로 삭제된 노드 객체 및 클러스터에 조인하지 못한 EKS 관리형 노드 그룹 인스턴스의 Ready 조건에 대응합니다. 노드 모니터링 에이전트가 설치된 상태에서 EKS 자동 노드 복구가 활성화되면 EKS 자동 노드 복구는 AcceleratedHardwareReady, ContainerRuntimeReady, KernelReady, NetworkingReady, StorageReady와 같은 추가 노드 조건에 대응합니다.

EKS 자동 노드 복구는 표준 Kubernetes DiskPressure, MemoryPressure 또는 PIDPressure 노드 조건에 대응하지 않습니다. 이러한 조건은 종종 노드 수준 장애가 아닌 애플리케이션 동작, 워크로드 구성 또는 리소스 제한 관련 문제를 나타내기 때문에 적절한 기본 복구 작업을 결정하기가 어렵습니다. 이러한 시나리오에서 워크로드는 Kubernetes 노드 압력 제거 동작을 따릅니다.

EKS 자동 노드 복구에 대한 자세한 내용은 EKS 클러스터에서 노드 자동 복구 섹션을 참조하세요.

주제