13장. 클러스터 재조정에 Cruise Control 사용


cruise Control은 클러스터 워크로드 모니터링, 사전 정의된 제약 조건에 따라 클러스터 재조정, 예외 감지 및 수정과 같은 Kafka 작업을 자동화하기 위한 오픈 소스 시스템입니다. 로드 모니터, Analyzer, Anomaly Detector 및 Executor-및 클라이언트 상호 작용을 위한 REST API 등 4가지 주요 구성 요소로 구성됩니다.

Cruise Control 을 사용하여 Kafka 클러스터의 균형을 조정할 수 있습니다. Red Hat Enterprise Linux의 Apache Kafka용 cruise Control for Streams는 별도의 압축 배포로 제공됩니다.

Apache Kafka의 스트림은 REST API를 사용하여 다음 Cruise Control 기능을 지원합니다.

  • 최적화 목표에서 최적화 제안을 생성합니다.
  • 최적화 제안을 기반으로 Kafka 클러스터 재조정.

    최적화 목표

    최적화 목표는 리밸런스에서 달성하기위한 특정 목표를 설명합니다. 예를 들어 목표는 브로커 간에 주제 복제본을 보다 균등하게 배포하는 것입니다. 구성을 통해 포함할 목표를 변경할 수 있습니다. 목표는 하드 목표 또는 소프트 목표로 정의됩니다. Cruise Control 배포 구성을 통해 하드 목표를 추가할 수 있습니다. 또한 이러한 각 카테고리에 적합한 기본, 기본값 및 사용자 제공 목표를 가지고 있습니다.

    • 하드 목표는 사전 설정되었으며 성공적인 최적화 제안에 충족해야 합니다.
    • 최적화 제안이 성공하려면 소프트 목표를 충족할 필요가 없습니다. 모든 어려운 목표를 달성하는 경우 별도로 설정할 수 있습니다.
    • 주요 목표는 Cruise Control에서 상속됩니다. 일부는 어려운 목표로 구성되어 있습니다. 주요 목표는 기본적으로 최적화 제안에 사용됩니다.
    • 기본 목표는 기본적으로 기본 목표와 동일합니다. 자체 기본 목표 세트를 지정할 수 있습니다.
    • 사용자 제공 목표는 특정 최적화 제안을 생성하도록 구성된 기본 목표의 하위 집합입니다.
    최적화 제안

    최적화 제안은 재조정에서 달성하려는 목표를 포함합니다. 제안된 변경 사항에 대한 요약과 리밸런스로 가능한 결과를 생성하기 위한 최적화 제안을 생성합니다. 목표는 특정 우선 순위 순서로 평가됩니다. 그런 다음 제안서를 승인하거나 거부하도록 선택할 수 있습니다. 조정된 목표 세트로 다시 실행하려는 제안을 거부할 수 있습니다.

    다음 API 끝점 중 하나에 요청하여 최적화 제안을 생성하고 승인할 수 있습니다.

    • 전체 재조정을 실행하기 위해 /rebalance 엔드포인트입니다.
    • Kafka 클러스터를 확장할 때 브로커를 추가한 후 재조정할 /add_broker 끝점.
    • Kafka 클러스터를 축소할 때 브로커를 제거하기 전에 재조정할 /remove_broker 끝점.

구성 속성 파일을 통해 최적화 목표를 구성합니다. Apache Kafka용 스트림은 Cruise Control에 대한 속성 파일의 예를 제공합니다.

13.1. 크루즈 컨트롤 구성 요소 및 기능

크루즈 컨트롤은 로드 모니터, Analyzer, Anomaly Detector 및 Executor-및 클라이언트 상호 작용을 위한 REST API 등 네 가지 주요 구성 요소로 구성됩니다. Apache Kafka의 스트림은 REST API를 사용하여 다음 Cruise Control 기능을 지원합니다.

  • 최적화 목표에서 최적화 제안을 생성합니다.
  • 최적화 제안을 기반으로 Kafka 클러스터 재조정.
최적화 목표

최적화 목표는 리밸런스에서 달성하기위한 특정 목표를 설명합니다. 예를 들어 목표는 브로커 간에 주제 복제본을 보다 균등하게 배포하는 것입니다. 구성을 통해 포함할 목표를 변경할 수 있습니다. 목표는 하드 목표 또는 소프트 목표로 정의됩니다. Cruise Control 배포 구성을 통해 하드 목표를 추가할 수 있습니다. 또한 이러한 각 카테고리에 적합한 기본, 기본값 및 사용자 제공 목표를 가지고 있습니다.

  • 하드 목표는 사전 설정되었으며 성공적인 최적화 제안에 충족해야 합니다.
  • 최적화 제안이 성공하려면 소프트 목표를 충족할 필요가 없습니다. 모든 어려운 목표를 달성하는 경우 별도로 설정할 수 있습니다.
  • 주요 목표는 Cruise Control에서 상속됩니다. 일부는 어려운 목표로 구성되어 있습니다. 주요 목표는 기본적으로 최적화 제안에 사용됩니다.
  • 기본 목표는 기본적으로 기본 목표와 동일합니다. 자체 기본 목표 세트를 지정할 수 있습니다.
  • 사용자 제공 목표는 특정 최적화 제안을 생성하도록 구성된 기본 목표의 하위 집합입니다.
최적화 제안

최적화 제안은 재조정에서 달성하려는 목표를 포함합니다. 제안된 변경 사항에 대한 요약과 리밸런스로 가능한 결과를 생성하기 위한 최적화 제안을 생성합니다. 목표는 특정 우선 순위 순서로 평가됩니다. 그런 다음 제안서를 승인하거나 거부하도록 선택할 수 있습니다. 조정된 목표 세트로 다시 실행하려는 제안을 거부할 수 있습니다.

세 가지 모드 중 하나로 최적화 제안을 생성할 수 있습니다.

  • full 은 기본 모드이며 전체 리밸런스를 실행합니다.
  • add-brokers 는 Kafka 클러스터를 확장할 때 브로커를 추가한 후 사용하는 모드입니다.
  • remove-brokers 는 Kafka 클러스터를 축소할 때 브로커를 제거하기 전에 사용하는 모드입니다.

다른 Cruise Control 기능은 현재 자체 교복, 알림, 쓰기 사용자 지정 목표, 주제 복제 요인 변경 등 현재 지원되지 않습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

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

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

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

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동