컨트롤러 구성 참조

컨트롤러 구성 참조 (Configuration Reference - Controller)

Apache Pinot 컨트롤러의 구성 키를 정리한 참조 문서예요.

출처: 문서

본문

개요 (Overview)

컨트롤러는 클러스터 관리를 담당하는 컴포넌트예요. 이 참조는 컨트롤러 구성 파일(controller.conf)에서 설정할 수 있는 키들을 범주별로 정리해요. 각 키는 이름, 설명, 기본값을 가져요.

주요 구성 범주 (Configuration categories)

기본/공통 (Core/common)

  • controller.host / controller.port — 컨트롤러가 바인딩할 호스트와 포트(기본 9000).
  • controller.helix.cluster.name — Pinot 클러스터 이름.
  • controller.zk.str — 연결할 ZooKeeper 주소.
  • controller.data.dir — 컨트롤러가 상태·세그먼트를 저장할 데이터 디렉토리.
  • pinot.set.instance.id.to.hostname — 인스턴스 ID에 호스트 이름을 쓸지 여부.

접근 제어 (Access control)

  • controller.admin.access.control.factory.class — 관리 API 인증을 위한 접근 제어 팩토리 클래스.
  • controller.admin.access.control.principals — 관리 보안 주체(사용자) 및 자격 증명·권한 설정.

클러스터 / ZooKeeper

  • 클러스터 상태 관리, 세그먼트·리밸런스 관련 주기적 작업 설정.

메트릭 (Metrics)

  • 컨트롤러 메트릭 레지스트리와 내보내기(JMX, Prometheus 등) 구성.

실시간 / 세그먼트 (Realtime / segment)

  • 실시간 세그먼트 완료·푸시 관련 구성(예: 피어 다운로드, 딥 스토어 업로드 재시도).
  • 세그먼트 유지보수·작업 스케줄링 관련 구성.

애플리케이션 (Web/UI)

  • 컨트롤러 웹 UI와 REST 엔드포인트 관련 구성.

구성 키 구조 (Config key format)

  • 접두사 controller.로 시작하는 키가 대부분이에요.
  • 각 키는 기본값이 있으며, 필요 시 properties 파일이나 동적 환경 구성(환경 변수)으로 오버라이드할 수 있어요.

참고 (Notes)

  • 구성 키를 적용한 뒤에는 컨트롤러를 재시작해야 반영돼요(런타임에 동적으로 반영되는 일부 구성 제외).
  • 실제 배포 예시와 절차는 Advanced Pinot Setup을 참고하세요.

더 알아보기 (Learn more)