Flower 웹 UI 보안
Apache Airflow Official Documentation (in-repo snapshot) — Apache Software Foundation security/flower.rst (전체)
이 모듈을 다 읽으면
- Flower가 무엇이고 왜 커뮤니티 배포판에서 기본적으로 비활성화되어 있는지 설명할 수 있다
- Flower의 Basic 인증과 URL prefix 설정 방법을 CLI 옵션과 airflow.cfg 설정 양쪽으로 설명할 수 있다
Flower는 Celery 클러스터를 모니터링·관리하는 웹 기반 도구로, Airflow 커뮤니티 배포판에서는 선택적 컴포넌트로서 기본 비활성화되어 있다. 사용하려면 배포 관리자가 직접 활성화하고 Basic 인증과 URL prefix 같은 보안 설정을 구성해야 한다.
Flower란 무엇인가
Flower는 Celery 클러스터를 모니터링하고 관리하기 위한 웹 기반 도구다. Airflow가 CeleryExecutor를 사용할 때 워커 상태나 태스크 큐 상황을 시각적으로 확인하는 용도로 쓸 수 있다. 이 컴포넌트는 커뮤니티 배포판에서 기본적으로 비활성화되어 있는 선택적(optional) 구성요소이며, 사용하려면 배포 관리자가 직접 설정해 활성화해야 한다.
핵심 포인트
- Flower는 Celery 클러스터 모니터링/관리용 웹 도구다
- 커뮤니티 배포판에서는 기본 비활성화되어 있는 선택적 컴포넌트로, 사용하려면 직접 활성화해야 한다
Basic 인증과 URL prefix 설정
Celery Flower는 Basic 인증을 지원한다. airflow celery flower 명령을 실행할 때 --basic-auth 인자로, 또는 airflow.cfg의 [celery] flower_basic_auth 설정 항목으로 인증 정보를 지정할 수 있으며, 두 경우 모두 user:password 쌍을 콤마로 구분해 여러 개 나열하는 형식을 쓴다.
Flower를 루트가 아닌 URL 경로에 배포하고 싶다면 URL prefix를 설정한다. 예를 들어 http://example.com/flower로 접근하게 하려면 airflow celery flower --url-prefix=flower로 실행하거나, airflow.cfg의 [celery] flower_url_prefix = flower로 설정하면 된다. 과거에는 이런 prefix 배포를 위해 nginx rewrite 규칙이 필요했지만, 이제는 더 이상 필요하지 않다.
핵심 포인트
- Flower Basic 인증은 CLI --basic-auth 옵션이나 airflow.cfg의 [celery] flower_basic_auth에 user:password 쌍(콤마 구분)으로 설정한다
- --url-prefix / flower_url_prefix로 Flower를 non-root 경로에 배포할 수 있으며, 과거 필요했던 nginx rewrite 설정은 더 이상 불필요하다