Hadoop 잡을 순서대로 엮어 실행하고 시간 · 데이터 조건으로 주기 실행하는 워크플로 스케줄러다. 워크플로 정의 언어는 XML 기반이며 hPDL(Hadoop Process Definition Language)이라고 한다. 잡은 세 단계로 구성된다.
| 구성 | 역할 |
|---|---|
| Workflow | 액션(MapReduce · Hive · Spark · Shell 등)을 DAG 로 엮은 단위. workflow.xml |
| Coordinator | 워크플로를 시각 · 데이터 도착 조건으로 반복 실행. coordinator.xml |
| Bundle | 코디네이터 여러 개를 묶어 관리 |
정의 파일은 HDFS 에 두고, job.properties 로 경로와 변수를 넘겨 oozie CLI 나 REST(기본 포트 11000)로 제출한다.
Apache Oozie 는 2025년 2월 은퇴해 4월에 Apache Attic 으로 옮겨졌다[1]. 마지막 릴리스는 5.2.1(2021-02-26)[2] 이며 더 이상 패치가 없다. 새 워크플로는 Airflow 로 만든다. Cloudera CDP 7.x 에는 Oozie 가 아직 들어 있어 Hue 워크플로 편집기와 함께 기존 잡을 유지할 수 있다 — 배포판 설정은 Cloudera 를 볼 것.
job.properties 와 Hive 액션 하나짜리 워크플로.<capture-output/> 으로 받아 <decision> 으로 분기한다.oozie CLI 자체가 내부적으로 REST 를 호출한다. 그래서 고르는 기준은 기능이 아니라 누…잡은 properties 파일을 -config 옵션으로 지정해 추가한다. properties 파일의 변수(${변수})를 coordinator · workflow XML 에서 참조한다.
# job 목록 확인
oozie jobs -oozie http://OOZIE_HOSTNAME:11000/oozie -filter name="myworkflow"
# job 타입에 따른 목록 조회 (wf · coord · bundle)
oozie jobs -oozie http://OOZIE_HOSTNAME:11000/oozie -jobtype coord
# job properties 파일에 명시된 디렉터리의 workflow xml 을 실행한다
oozie job -oozie http://OOZIE_HOSTNAME:11000/oozie -config job.properties -run
# job 을 생성만 한다. 별도로 job id 를 확인해 run 해 줘야 한다
oozie job -oozie http://OOZIE_HOSTNAME:11000/oozie -config job.properties -submit
# job 정지 (workflow · coordinator 공통)
oozie job -oozie http://OOZIE_HOSTNAME:11000/oozie -kill JOB_ID
# workflow 로그 확인
oozie job -oozie http://OOZIE_HOSTNAME:11000/oozie -log JOB_ID
# 상태 확인
oozie job -oozie http://OOZIE_HOSTNAME:11000/oozie -info JOB_ID
-oozie 를 매번 쓰기 싫으면 export OOZIE_URL=http://OOZIE_HOSTNAME:11000/oozie 로 둔다.
Apache Oozie — Attic. 2025년 2월 은퇴, 4월 이관 완료 — 2026-09-20 확인. https://attic.apache.org/projects/oozie.html ↩︎
마지막 릴리스 5.2.1 (2021-02-26) — 2026-09-20 확인. https://oozie.apache.org/ ↩︎