24.2.3. 제거 임계값 이해
제거 임계값을 지정하도록 노드를 구성할 수 있습니다. 임계값에 도달하면 노드가 트리거되어 리소스를 회수합니다. 노드 구성 파일에 임계값을 구성할 수 있습니다.
제거 임계값이 충족되면 관련 유예 기간과 관계없이 노드에서 노드가 메모리 또는 디스크 부족 상태에 있음을 나타내는 조건을 보고합니다. 오류를 보고하면 리소스 회수를 시도하는 동안 스케줄러에서 노드에서 추가 Pod를 예약하지 못합니다.
노드는 node -status-update-frequency 인수로 지정된 빈도로 노드
상태 업데이트를 계속 보고합니다. 기본 빈도는 10s(10
초)입니다.
리소스를 회수하기 전에 유예 기간을 허용하는 경우 노드에서 임계값이 충족될 때 즉시 조치를 취하거나 소프트 가 필요한 경우 제거 임계값이 어려울 수 있습니다.
소프트 제거 사용은 특정 수준의 사용률을 대상으로 할 때 더 일반적이지만 일시적인 스파이크를 허용할 수 있습니다. 하드 제거 임계값보다 낮은 소프트 제거 임계값을 설정하는 것이 좋지만 시간은 운영자에 따라 다를 수 있습니다. 시스템 예약은 소프트 제거 임계값도 포함해야 합니다.
소프트 제거 임계값은 고급 기능입니다. 소프트 제거 임계값을 사용하기 전에 하드 제거 임계값을 구성해야 합니다.
임계값은 다음 형식으로 구성됩니다.
<eviction_signal><operator><quantity>
-
eviction-signal
값은 지원되는 제거 신호 일 수 있습니다. -
Operator
값은<
입니다. -
quantity
값은 Kubernetes에서 사용하는 수량 표시와 일치해야 하며%
토큰으로 끝나는 경우 백분율로 표시할 수 있습니다.
예를 들어 Operator에 메모리가 10Gi인 노드가 있고 사용 가능한 메모리가 1Gi 미만으로 떨어지면 해당 Operator에서 제거를 축소하려는 경우 메모리의 제거 임계값을 다음 중 하나로 지정할 수 있습니다.
memory.available<1Gi memory.available<10%
노드는 10초마다 제거 임계값을 평가하고 모니터링하며 값을 수정할 수 없습니다. 하우스키핑 간격입니다.
24.2.3.1. 하드 제거 임계값 이해
하드 제거 임계값에는 유예 기간이 없습니다. 하드 제거 임계값이 충족되면 노드는 즉각적인 조치를 취하여 관련 리소스를 회수합니다. 예를 들어 노드는 정상 종료 없이 하나 이상의 Pod를 즉시 종료할 수 있습니다.
하드 제거 임계값을 구성하려면 노드 구성 사용과 정책 생성에 표시된 대로 eviction-hard
아래의 노드 구성 파일에 제거 임계값을 추가합니다.
하드 제거 임계값이 있는 샘플 노드 구성 파일
kubeletArguments: eviction-hard: - memory.available<500Mi - nodefs.available<500Mi - nodefs.inodesFree<5% - imagefs.available<100Mi - imagefs.inodesFree<10%
이 예제는 일반적인 지침이며 권장 설정은 아닙니다.
24.2.3.1.1. 기본 하드 제거 임계값
OpenShift Container Platform은 eviction-hard
에 다음과 같은 기본 구성을 사용합니다.
... kubeletArguments: eviction-hard: - memory.available<100Mi - nodefs.available<10% - nodefs.inodesFree<5% - imagefs.available<15% ...