배포
배포 (Deployment)
이 섹션은 Apache Pinot 클러스터를 배포하는 데 필요한 모든 것을 다뤄요. 첫 ZooKeeper 연결 클러스터 부트스트래핑부터 테이블 구성, 적재 파이프라인, 컴포넌트별 설정까지요. 이 가이드를 사용해 배어메탈, VM, 컨테이너 등 어떤 환경에서든 Pinot을 세우고, 그다음 프로덕션 고도화(hardening)로 넘어가세요.
출처: 문서
본문
이 가이드를 언제 쓸까 (When to use these guides)
- 퀵스타트 밖에서 Pinot을 처음 배포할 때.
- 사용자 정의 구성 파일로 개별 Pinot 컴포넌트(controller, broker, server)를 시작해야 할 때.
- 실행 중인 클러스터에 테이블, 스키마, 적재 작업을 설정할 때.
- 추천 엔진을 사용해 구성을 최적화하거나 컨트롤러를 실시간 데이터 경로에서 분리하고 싶을 때.
사전 요구사항 (Prerequisites)
- Java 25 이상 설치(컨테이너 기반 배포라면 Docker 사용).
- 실행 중인 Apache ZooKeeper 앙상블(프로덕션에는 3노드 권장).
- 딥 스토어(deep store) 접근(개발은 로컬 파일시스템, 프로덕션은 S3, GCS, HDFS 또는 ADLS).
- pinot.apache.org/download에서 받은 Pinot 바이너리 배포판 또는 공식 Docker 이미지.
하위 페이지 (Child pages)
클러스터 설정 (Cluster setup)
Set up a Pinot cluster는 클러스터 네임스페이스를 만들고 controller, broker, server 인스턴스를 시작하는 과정을 안내해요.
고급 Pinot 설정 (Advanced Pinot setup)
Advanced Pinot Setup은 Docker나 런처 스크립트로 각 Pinot 컴포넌트를 개별적으로 시작하고, 사용자 정의 구성 파일로 컴포넌트를 구성하며, 배치·스트리밍 테이블을 만들고 데이터를 적재하는 단계별 지침을 제공해요.
서버 시작 상태 점검기 (Server startup status checkers)
Server Startup Status Checkers는 readiness·liveness 헬스 체크, 정적 소비 대기(static consumption wait), 오프셋 기반·신선도 기반 세그먼트 점검기, 그리고 QA·프로덕션 환경의 권장 구성을 설명해요.
테이블 설정 (Table setup)
Set up a table은 스키마 설계, 테이블 구성, 인덱스 설정을 포함한 테이블 생성 지침으로 연결돼요.
적재 설정 (Ingestion setup)
Set up ingestion은 세그먼트 생성과 배치 데이터 적재 작업을 실행해 테이블에 데이터를 적재하는 방법을 다뤄요.
데이터 경로에서 컨트롤러 분리 (Decoupling controller from the data path)
Decoupling Controller from the Data Path는 완료된 세그먼트를 딥 스토어에 직접 업로드해 실시간 세그먼트 완료 중 컨트롤러를 우회하는 방법과, 장애 복구를 위한 피어 다운로드(peer download) 활성화 방법을 설명해요.
명령줄 인터페이스 (CLI)
CLI Reference는 AddSchema와 AddTable부터 RebalanceTable, LaunchDataIngestionJob, 클러스터 검증 유틸리티까지 모든 pinot-admin.sh 명령을 문서화해요.
구성 추천 엔진 (Configuration recommendation engine)
Configuration Recommendation Engine은 컨트롤러 REST API로 접근하는 규칙 기반 엔진을 설명해요. 스키마, 쿼리 패턴, 워크로드 특성에 따라 최적의 인덱스, 파티셔닝, 세그먼트 크기, 실시간 프로비저닝 설정을 추천해요.
다음 단계 (Next step)
클러스터가 배포되고 데이터를 서빙하면 프로덕션용으로 고도화하세요. 용량 계획, 헬스 체크, 정상 운영, 재해 복구는 Production Guides를 참고하세요.