Solutions · Open Source

Argus Flow

Apache NiFi 2.10.0을 실제 운영 환경에 올리는 데 필요한 것을 한곳에 모은 오픈소스 데이터 파이프라인 배포판입니다. 커스텀 확장 번들(NAR), 배포 패키지(tar.gz·RPM·컨테이너 이미지), Kubernetes 오퍼레이터, 설정·인증서·사용자 관리 도구까지 — 흩어진 저장소를 모노레포로 통합해 하나의 빌드 파이프라인에서 버전이 맞춰진 채로 산출됩니다.

Apache License 2.0 · 오픈소스Apache NiFi 2.10.0 · Java 21GitHub 저장소

특징 및 강점

01

확장·배포·오퍼레이터를 한 파이프라인에서

NiFi 확장, 오퍼레이터, 인증서 생성 스크립트가 저장소마다 흩어져 버전이 어긋나던 문제를 모노레포로 통합했습니다. make 타깃 하나로 NAR·tar.gz·RPM·컨테이너 이미지가 서로 맞춰진 버전으로 만들어집니다.

02

12개 번들 · 18개 NAR로 의존성 격리

확장을 도메인별 번들로 나누고 번들마다 독립 NAR로 패키징해, 서드파티 의존성이 번들 경계를 넘어 충돌하지 않습니다. CDC·레이크하우스·Hive·Parquet·DB·리포팅·플로우 분석 중 필요한 것만 올릴 수 있습니다.

03

ZooKeeper 없는 NiFi 2.x 쿠버네티스 오퍼레이터

NiFi 2.x 자체 Raft 코디네이션을 그대로 써 ZooKeeper 없이 클러스터를 운영합니다. NiFiCluster·NiFiFlow CR로 선언적 관리, Scale Down 시 Offload → Disconnect → Remove 순서의 안전한 오프보딩, cert-manager 연동 TLS 자동 발급을 제공합니다.

04

설정·인증서·계정을 도구로 안전하게

200줄이 넘는 nifi.properties와 XML을 손으로 고치는 대신 대화형 마법사로 설정하고, 저장 전에 diff를 확인합니다. --check 진단이 인증서 SAN 불일치·만료 임박·주석 상태 로그인 프로바이더를 잡아내 Invalid SNI 같은 사고를 예방합니다.

배포판 구성

확장 번들 · 배포 패키지 · 쿠버네티스 오퍼레이터 · 운영 도구가 하나의 저장소에서 함께 빌드되며, 각 디렉터리는 독립적으로도 빌드할 수 있습니다.

NiFi Extensions
Maven · Java 21
12개 번들 → 18개 NAR (번들별 의존성 격리)
프로세서 22종 · 컨트롤러 서비스 7종
리포팅 태스크 5종 · Flow Analysis Rule 6종
DB 기반 인증·인가 프로바이더
services-api 번들로 서비스 계약 분리
패키지 io.datadynamics.nifi.*
Distribution
tar.gz · RPM · 컨테이너
공식 NiFi 바이너리 재패키징
nfpm 기반 RPM · systemd 유닛
NAR 포함 컨테이너 이미지(apache/nifi 베이스)
bin/ 운영 스크립트 동봉
업스트림 벤더링 없이 빌드 시점 버전 고정
make dist · make rpm · make docker-image
Kubernetes Operator
Python · kopf
NiFiCluster · NiFiFlow 커스텀 리소스
StatefulSet · Headless Service · ConfigMap 조정
안전한 Scale Up/Down 오프보딩
cert-manager TLS 자동 발급·갱신
헬스체크 기반 노드 자동 재연결
Prometheus 메트릭 · Helm 차트
Ops Tooling
argus-config · argus-ssl · argus-user
conf/ 대화형 설정 TUI (zipapp으로 배포본 동봉)
처음 설정하기 마법사 — 주소 → TLS → 로그인
--check 설정 진단 (종료 코드로 CI 연동)
비대화형 --set · --recipe 자동화
TLS 인증서 생성 스크립트
DB 인증 사용자 관리 CLI
기술 스택
Apache NiFi 2.10.0Java 21Maven 3.9.16+ (wrapper)Python 3.12+kopfHelmnfpmDocker / Podmancert-managerDebezium 3.2.2Apache IcebergDelta KernelApache KuduHive3 · ORCParquet · AvroPostgreSQL

핵심 기능

CDC·레이크하우스·Hive·파일 포맷 확장부터 운영 거버넌스 규칙, DB 인증·인가, 배포 패키징, 쿠버네티스 오퍼레이터, 설정·TLS 자동화까지 — NiFi 운영에 필요한 12대 축을 하나의 배포판으로 제공합니다.

CDC 소스 4종

Debezium Embedded Engine 3.2.2 기반으로 주요 RDB의 변경 이벤트를 JSON FlowFile로 방출합니다.

CaptureChangeMySQL — binlog CDC
CaptureChangePostgreSQL — 논리 복제(pgoutput/decoderbufs)
CaptureChangeOracle — LogMiner(CDB/PDB)
CaptureChangeSQLServer — SQL Server CDC
PrimaryNodeOnly · at-least-once

레이크하우스 싱크

레코드를 오픈 테이블 포맷과 컬럼 스토어에 그대로 적재합니다.

PutIceberg — Apache Iceberg 테이블 적재
PutDeltaLake — Delta Kernel 기반 경로형 싱크
PutKudu — Apache Kudu 테이블 적재
HiveCatalogService · HadoopCatalogService

데이터베이스 프로세서

조회부터 대량 적재까지 RDB 연동 경로를 넓혔습니다.

ExecuteSQL · ExecuteSQLRecord
ExecuteFastSQL — 대용량 결과셋 고속 스트리밍
PutDatabaseRecord — INSERT/UPSERT
BulkOracleInsertProcessor — Oracle 배열 바인딩 대량 insert

Hive / ORC

Hive3 연동과 ORC 기록을 전용 번들로 제공합니다.

SelectHive3QL · PutHive3QL · PutHive3Streaming
UpdateHive3Table — 컬럼·파티션 스키마 동기화
TriggerHiveMetaStoreEvent
PutORC · Hive3ConnectionPool · VendorHive3ConnectionPool

파일 포맷 & 레코드 직렬화

타임스탬프 포맷까지 제어할 수 있는 리더·라이터를 제공합니다.

PutParquet · MergeParquet
CSVReader — 타임스탬프 포맷 지정
TimestampFormatAvroRecordSetWriter
TimestampFormatParquetRecordSetWriter

범용 프로세서

현장에서 반복적으로 필요했던 처리를 표준 번들에 담았습니다.

PrePostExecuteStreamCommand — 전/후처리 커맨드 동반 실행
MultilineCsvParser — 멀티라인 필드 CSV 파싱
번들 단위 배포로 필요한 것만 설치

모니터링 리포팅 태스크 5종

노드 자원 상태를 임계값 기준으로 감시하고 외부로 알립니다.

MonitorDiskUsageReportingTask — 리포지토리 디스크
MonitorMemoryUsageReportingTask — JVM 힙
MonitorMemoryPoolReportingTask — 개별 메모리 풀
MonitorThreadReportingTask — 데드락 등 스레드 상태
HttpNotificationReportingTask — 웹훅 HTTP POST 알림

Flow Analysis Rule 6종

플로우 구성의 안티패턴을 정적 검사로 잡아내는 운영 거버넌스 규칙입니다.

TimerThreadPoolCeilingRule — 전역 스레드 수 상한
ProcessorThreadShareLimitRule — 단일 프로세서 점유율
ProcessorConcurrencyCapRule — 타입별 동시 태스크 상한
ListingScheduleGuardRule — List 계열 0초 스케줄
DeadEndFunnelRule — 막다른 Funnel 정체·백프레셔
IcebergSinkMergeRule — Merge 부재로 인한 small-file

DB 기반 인증·인가

LDAP도 외부 IdP도 도입할 수 없는 환경에서 users.xml을 손으로 고치지 않도록 만든 프로바이더입니다.

DbLoginIdentityProvider — RDB 사용자·비밀번호 인증
DbUserGroupProvider — RDB 기반 인가
argus-user.sh 사용자 관리 CLI
기본 비활성(주석) — 필요할 때만 활성화
PostgreSQL 드라이버 번들 · MariaDB는 별도 반입

배포 패키징

공식 바이너리를 재패키징해 운영 환경에 바로 올릴 수 있는 산출물을 만듭니다.

tar.gz — 확장 NAR·운영 스크립트 포함
RPM(nfpm) — systemd 유닛·sysconfig 동봉
컨테이너 이미지 — 공식 apache/nifi 베이스
업스트림은 벤더링 없이 빌드 시점 고정

쿠버네티스 오퍼레이터

NiFi 2.x 클러스터를 선언적으로 정의하고 스케일·업데이트를 자동화합니다.

NiFiCluster CR — 노드 수·리소스·스토리지·JVM 힙
NiFiFlow CR — Registry Flow GitOps 배포
Headless Service DNS 자동 노드 디스커버리
롤링 재시작으로 무중단 설정 반영
cert-manager Issuer 연동 TLS
Helm 차트 — CRD · RBAC · Deployment

설정 · TLS 자동화

설치 직후에 가장 사고가 잦은 설정 영역을 도구로 표준화했습니다.

처음 설정하기 — 접속 주소를 인증서 SAN에 그대로 반영
--check — SAN 불일치·만료·프로바이더 주석 진단
레시피 tls:generate · login:db · login:ldap · state:zookeeper
원본 주석·순서 보존 + 저장 전 diff 확인
비대화형에서는 인증서 재발급 명령을 출력만(CI 안전)

에디션

오픈소스 배포판 전체를 Community로 자유롭게, 운영 SLA와 전담 기술지원이 필요하면 Enterprise로 — 두 가지 에디션으로 제공합니다.

Community

Apache License 2.0 · 무료

확장 번들·배포 패키지·오퍼레이터·운영 도구 전체를 제약 없이 사용하고 직접 운영합니다.

추천

Enterprise

엔터프라이즈 고객 지원

Community 전체에 SLA 기반 전담 기술지원과 구축·마이그레이션·커스텀 확장 개발을 더합니다.

기능 비교
Community
Enterprise
코어 기능
NiFi 확장 12개 번들 · 18개 NAR
CDC레이크하우스Hive / ORCParquetDatabase리포팅Flow Analysis
배포 패키지 (tar.gz · RPM · 컨테이너 이미지)
쿠버네티스 오퍼레이터 · Helm 차트
설정 TUI · 진단 · TLS 인증서 도구
DB 기반 인증·인가 프로바이더
기술지원 & 서비스 (Enterprise)
SLA 기반 전담 기술지원
핫픽스 · 보안 패치 우선 제공
설치 · 구축 · NiFi 1.x → 2.x 마이그레이션 지원
교육 · 온보딩 · 파이프라인 아키텍처 컨설팅
커스텀 프로세서 개발 · 로드맵 우선 반영
폐쇄망 배포 · 벤더 JDBC 드라이버 연동 지원
Cloudera Hive JDBCMariaDB Connector/J
지원 채널
지원 채널
GitHub Issues
전담 지원 채널
Apache License 2.0 · 오픈소스

오픈소스로 공개된 NiFi 운영 배포판

Argus Flow는 Apache License 2.0으로 GitHub에 공개됩니다. 확장 번들 소스부터 배포 패키징, Kubernetes 오퍼레이터, 운영 도구까지 전부 공개해 기업이 코드를 직접 검증하고 자사 환경에 맞게 확장하며 폐쇄망에서도 자체 운영할 수 있습니다.

  • 상용 활용 제약 없는 Apache 2.0
  • 업스트림 귀속·라이선스 헤더 자동 검증
  • 온프레미스·폐쇄망 자체 운영