브로커와 함께 함수 워커 실행하기
브로커와 함께 함수 워커 실행하기
함수 워커(function worker)를 브로커(broker)와 함께 실행하는 배포 방식이에요. 아래 다이어그램은 브로커와 함께 실행되는 함수 워커의 배포 구조를 보여줘요.
설정 순서는 함수 워커 활성화 → 구성 → 시작 순으로 진행돼요. 다이어그램의 Service URL은 Pulsar 클라이언트와 Pulsar admin이 Pulsar 클러스터에 연결할 때 쓰는 Pulsar 서비스 URL을 나타냅니다.
출처: 문서
본문
아래 다이어그램은 브로커와 함께 실행되는 함수 워커의 배포를 보여줘요.
알아두기: 다이어그램의 Service URL은 Pulsar 클라이언트와 Pulsar admin이 Pulsar 클러스터에 연결할 때 사용하는 Pulsar 서비스 URL을 나타내요.
함수 워커를 브로커와 함께 실행하도록 설정하려면 다음 단계를 완료해요.
1단계: 브로커와 함께 실행되도록 함수 워커 활성화 (Enable function workers to run with brokers)
conf/broker.conf 파일(Pulsar standalone에서는 conf/standalone.conf)에서 functionsWorkerEnabled를 true로 설정해요.
functionsWorkerEnabled=true
2단계: 브로커와 함께 실행되도록 함수 워커 구성 (Configure function workers to run with brokers)
브로커와 함께 실행(run-with-brokers) 모드에서는 함수 워커의 대부분 설정이 브로커 구성에서 상속돼요(예: 설정 저장소 설정, 인증 설정 등). 필요에 따라 conf/functions_worker.yml 파일을 구성해 다른 워커 설정을 커스터마이즈할 수 있어요.
팁:
- 프로덕션 배포(브로커가 여러 개인 클러스터)에서 고가용성을 보장하려면
numFunctionPackageReplicas를 bookie 수와 같게 설정해요. 기본값1은 단일 노드 클러스터 배포용이에요.- 런타임에서 분산 로그 메타데이터를 초기화하려면(
initializedDlogMetadata = true)bin/pulsar initialize-cluster-metadata명령으로 먼저 초기화되었는지 확인해요.
BookKeeper 클러스터에 인증이 활성화되어 있으면, 함수 워커에 다음 인증 설정을 구성해야 해요.
bookkeeperClientAuthenticationPlugin— BookKeeper 클라이언트의 인증 플러그인 이름.bookkeeperClientAuthenticationParametersName— BookKeeper 클라이언트의 인증 플러그인 매개변수(이름과 값 포함).bookkeeperClientAuthenticationParameters— BookKeeper 클라이언트의 인증 플러그인 매개변수.
3단계: 브로커와 함께 실행되도록 함수 워커 시작 (Start function workers to run with brokers)
함수 워커가 제대로 구성되면 브로커를 시작할 수 있어요 (함수 워커는 브로커와 함께 실행돼요).
각 워커가 실행 중인지 확인하려면 다음 명령을 사용할 수 있어요.
curl <broker-ip>:8080/admin/v2/worker/cluster
활성 함수 워커 목록이 반환되면 성공적으로 시작된 거예요. 출력은 다음과 비슷해요.
[{"workerId":"<worker-id>","workerHostname":"<worker-hostname>","port":8080}]
더 알아보기 (Learn more)
- 함수 워커를 별도로 실행하는 방법은 함수 워커를 별도로 실행하기 문서를 참고해요.
- 함수 워커 설정 전반은 함수 워커 문서에서 확인할 수 있어요.
- 함수 워커 문제 해결 방법은 트러블슈팅 문서를 살펴보세요.