3장. Custom Metrics Autoscaler Operator를 사용하여 Pod 자동 스케일링


3.1. 사용자 정의 Metrics Autoscaler Operator 개요

개발자는 Red Hat OpenShift에 Custom Metrics Autoscaler Operator를 사용하여 OpenShift Container Platform에서 CPU 또는 메모리를 기반으로 하지 않는 사용자 정의 메트릭을 기반으로 배포, 상태 저장 세트, 사용자 정의 리소스 또는 작업의 Pod 수를 자동으로 늘리거나 줄이는 방법을 지정할 수 있습니다.

Custom Metrics Autoscaler Operator는 쿠버네티스 이벤트 기반 자동 스케일러(KEDA)를 기반으로 하는 선택적 Operator로, Pod 메트릭 이외의 추가 메트릭 소스를 사용하여 워크로드를 확장할 수 있습니다.

사용자 정의 메트릭 자동 스케일러는 현재 Prometheus, CPU, 메모리 및 Apache Kafka 메트릭만 지원합니다.

Custom Metrics Autoscaler Operator는 특정 애플리케이션의 사용자 정의 외부 지표를 기반으로 Pod를 확장 및 축소합니다. 다른 애플리케이션에서는 다른 확장 방법을 계속 사용합니다. 사용자 정의 메트릭 자동 스케일러가 스케일링하는 방법을 결정하는 데 사용하는 이벤트 및 메트릭의 소스인 scalers라고도 하는 트리거 를 구성합니다. 사용자 정의 메트릭 자동 스케일러는 메트릭 API를 사용하여 외부 메트릭을 OpenShift Container Platform에서 사용할 수 있는 양식으로 변환합니다. 사용자 정의 메트릭 자동 스케일러는 실제 스케일링을 수행하는 HPA(수평 Pod 자동 스케일러)를 생성합니다.

사용자 정의 메트릭 자동 스케일러를 사용하려면 스케일링 메타데이터를 정의하는 사용자 정의 리소스(CR)인 ScaledObject 또는 ScaledJob 오브젝트를 생성합니다. 확장할 배포 또는 작업, 스케일링할 지표의 소스(trigger) 및 허용된 최소 및 최대 복제본 수와 같은 기타 매개변수를 지정합니다.

참고

스케일링할 각 워크로드에 대해 확장된 오브젝트 또는 스케일링된 작업을 하나만 생성할 수 있습니다. 또한 동일한 워크로드에서 확장된 오브젝트 또는 스케일링된 작업 및 HPA(수평 Pod 자동 스케일러)를 사용할 수 없습니다.

HPA와 달리 사용자 정의 메트릭 자동 스케일러는 0으로 확장할 수 있습니다. 사용자 정의 메트릭 자동 스케일러 CR에서 minReplicaCount 값을 0 으로 설정하면 사용자 정의 메트릭 자동 스케일러는 워크로드를 복제본이 0개에서 복제본 수로 또는 최대 0개의 복제본으로 축소합니다. 이를 활성화 단계라고 합니다. 최대 1개의 복제본으로 확장한 후 HPA는 스케일링을 제어합니다. 이를 스케일링 단계라고 합니다.

일부 트리거를 사용하면 클러스터 지표 자동 스케일러에서 스케일링하는 복제본 수를 변경할 수 있습니다. 모든 경우, 활성화 단계를 구성하는 매개 변수는 항상 활성화 접두사가 지정된 동일한 문구를 사용합니다. 예를 들어 threshold 매개변수가 스케일링을 구성하는 경우 activationThreshold 가 활성화를 구성합니다. 활성화 및 확장 단계를 구성하면 확장 정책에 따라 유연성을 높일 수 있습니다. 예를 들어 메트릭이 특히 낮은 경우 확장 또는 축소되지 않도록 더 높은 활성화 단계를 구성할 수 있습니다.

활성화 값은 서로 다른 결정에 따라 스케일링 값보다 우선 순위가 높습니다. 예를 들어 임계값10 으로 설정되고 활성화Threshold50 개이면 메트릭에서 40 개를 보고하면 scaler가 활성 상태가 아니며 HPA에 4개의 인스턴스가 필요한 경우에도 Pod가 0으로 확장됩니다.

사용자 정의 리소스의 Pod 수를 검토하거나 Custom Metrics Autoscaler Operator 로그에서 다음과 유사한 메시지가 있는지 확인하여 자동 스케일링이 수행되었는지 확인할 수 있습니다.

Successfully set ScaleTarget replica count
Successfully updated ScaleTarget

필요한 경우 워크로드 오브젝트의 자동 스케일링을 일시적으로 일시 정지할 수 있습니다. 예를 들어 클러스터 유지 관리를 수행하기 전에 자동 스케일링을 일시 중지할 수 있습니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.