동적 환경

동적 환경 (Dynamic Environment)

Pinot 구성에서 환경 변수 치환(environment-variable substitution)을 다루는 레퍼런스 문서예요. 환경 변수 치환 개요와 예시 구성을 한 페이지에 모아두고 있어요.

출처: 문서

본문

구성에 환경 변수를 로드하려면 dynamic.env.config 속성 키를 사용해서 런타임에 템플릿팅할 모든 속성 이름을 나열하면 돼요. Pinot는 값으로 지정된 환경 변수를 환경에서 찾아서 그 내용을 구성에 삽입해요.

dynamic.env.config는 자신이 정의된 구성을 가리키는 속성이에요. 구성 파일이 여러 개라면 각 파일마다 그 파일에서 템플릿팅해야 할 모든 속성을 나열해서 정의해야 해요.

예시 (Example)

먼저 몇 개 변수를 ENV에 로드한 뒤, 구성에 무엇을 어떤 변수로 템플릿팅할지 지정하는 예시예요.

export PINOT_CONTROLLER_HOST=host
export PINOT_SERVER_PROPERTY=property
export ANOTHER_VARIABLE=random

CLI 또는 구성 경로에서의 구성 (Config from CLI or Config Path)

dynamic.env.config=pinot.controller.host,pinot.server.property,other.var
pinot.controller.host=PINOT_CONTROLLER_HOST
pinot.server.property=PINOT_SERVER_PROPERTY
other.var=ANOTHER_VARIABLE

최종 결과 (메모리 내) (Final result (in memory))

dynamic.env.config=pinot.controller.host,pinot.server.property,other.var
pinot.controller.host=host
pinot.server.property=property
other.var=random

더 알아보기 (Learn more)