피드로 돌아가기
Deploying Apache DolphinScheduler 3.1.9 Cluster with MySQL Instead of PostgreSQL? A Practical Docker Compose Guide
Dev.toDev.to
Infrastructure

MySQL JDBC Driver 커스텀 이미지 빌드를 통한 DolphinScheduler 3.1.9 메타데이터 스토리지 전환

Deploying Apache DolphinScheduler 3.1.9 Cluster with MySQL Instead of PostgreSQL? A Practical Docker Compose Guide

Chen Debra2026년 6월 18일4intermediate

Context

Apache DolphinScheduler 공식 Docker Compose는 라이선스 호환성 문제로 PostgreSQL을 기본 메타데이터 저장소로 채택한 구조임. 기업 환경의 MySQL 표준화 요구사항과 운영 숙련도 차이로 인해 MySQL 기반의 메타데이터 저장소 전환 필요성이 제기됨.

Technical Solution

  • MySQL JDBC Driver 부재 해결을 위한 커스텀 Dockerfile 설계 및 이미지 레이어 추가
  • Master, Worker, API, Alert Server 전 서비스의 /opt/dolphinscheduler/libs/ 경로에 드라이버 주입
  • PostgreSQL 컨테이너 제거 및 MySQL 8.0 서비스 도입을 통한 메타데이터 계층 교체
  • service_healthy 조건을 활용한 Schema Initializer와 MySQL 간의 의존성 관계 정의
  • JVM Heap Memory 최적화를 위해 Master와 Worker에 Xms8g, Xmx8g, Xmn4g 설정 적용
  • .env 설정을 통한 JDBC URL 및 데이터베이스 접속 파라미터의 동적 매핑 구조 구현

- 오픈소스 프로젝트의 기본 DB 외 타 DB 도입 시 라이선스 제약 및 Driver 포함 여부 확인 - DB 컨테이너 기동 후 스키마 초기화 순서 보장을 위한 Healthcheck 기반 의존성 설정 적용 - 대규모 스케줄링 환경을 고려한 JVM Heap 및 Young Generation 영역의 명시적 할당 검토

원문 읽기