CFM Operator 3.x 배포 시 ZooKeeper 구성 여부가 불명확한 증상이 나타난다.
기존 배포 방식의 ZooKeeper 구성을 그대로 추가하지 않도록 안내된 설치 구성 사례다.
공식 문서에서도 버전별 기본값 설명이 다르므로 “3.x는 항상 자동으로 ZooKeeper가 필요 없다”로 단정하지 않고 CR 설정을 확인한다.
CFM Operator가 지원하는 Kubernetes 상태 관리·리더 선출을 CR에 명시해 ZooKeeper 의존성을 제거한다.
명령 예시는 문서 작성 시 보강한 것이며 대상 시스템에서 실행 검증하지 않았다.
kubectl get crd, kubectl get deployments -A.kubectl api-resources에서 실제 NiFi 리소스 이름을 찾고 kubectl -n <namespace> get <nifi-resource> <name> -o yaml로 조회한다.spec에 Kubernetes 상태 저장과 리더 선출을 명시한다.spec:
stateManagement:
clusterProvider:
id: kubernetes-provider
class: org.apache.nifi.kubernetes.state.provider.KubernetesConfigMapStateProvider
configOverride:
nifiProperties:
upsert:
nifi.cluster.leader.election.implementation: KubernetesLeaderElectionManager
kubectl apply --dry-run=server -f nifi.yaml로 검증한 뒤 kubectl apply -f nifi.yaml을 적용한다. 기존 ZooKeeper에 저장된 processor 상태가 있으면 먼저 이관 계획을 세운다.모든 NiFi 노드가 클러스터에 가입하고 리더 선출·state 조회가 정상인지 확인한다.