반응형 Airflow7 Airflow PostgreSQL 최대 커넥션 개수 docker-compose.yaml 파일 설정 에어플로우(Airflow)를 도커 컴포즈(Docker Compose)로 설정할 때 PostgreSQL 데이터베이스의 커넥션 최대 개수을 적절히 설정하는 것은 시스템의 안정성과 성능을 유지하는 데 매우 중요하다. 이번 포스트에서는 PostgreSQL 컨테이너의 커넥션 최대 개수 설정 방법, 유휴(idle) 커넥션 조회 쿼리, 최대 커넥션 개수 조회 쿼리 그리고 커넥션 최대 개수를 설정하지 않았을 때 발생할 수 있는 문제점에 대해 알아본다. 1. Docker Compose에서 PostgreSQL 컨테이너의 커넥션 최대 개수 설정airflow의 메타데이터를 저장하는 PostgreSQL의 max_connections 설정을 적절히 하지 않으면 다양한 문제가 발생할 수 있다. 1. 커넥션 수 초과로 인한 서비스 .. 2024. 11. 17. Airflow에서 실행 중인 DAG의 코드 수정과 서버 재 시작 시 DAG 영향 Airflow를 사용할 때 DAG(Directed Acyclic Graph)를 수정하는 과정에서 현재 실행 중인 작업에 어떤 영향이 있는지 그리고 코드 변경 시 발생할 수 있는 잠재적인 문제들을 어떻게 방지할 수 있는지에 대해 알아본다. 1. 현재 실행 중인 DAG를 수정하면 영향이 있을까?현재 DAG Run에 영향 미치지 않음현재 실행 중인 DAG Run: 이미 시작된 DAG Run은 그 시점에 파싱된 DAG 정의를 기반으로 Instance가 생성되어 실행된다. 따라서 DAG 파일을 수정해도 수정 전의 DAG를 기반으로 Inscance가 생성되었기 때문에 현재 실행 중인 DAG Run에는 전혀 영향을 주지 않는다. 그러므로 다음 작업 스케줄에만 영향 있고 현재 스케줄은 영향 없다. 수정된 내용의 적용 .. 2024. 11. 16. Docker에서 Airflow를 설정하고 서버 간 로그 공유하기 이 글에서는 Airflow를 Docker에서 설정하고, 여러 서버 간 로그를 공유하는 방법에 대해 다뤄본다. 특히, 1번 서버(마스터 + 워커)가 2번 서버(워커)의 로그를 참조할 수 있도록 NFS(네트워크 파일 시스템)를 사용하여 로그를 공유하는 설정 방법을 설명한다.Airflow를 1번 서버(마스터 + 워커)와 2번 서버(워커)로 구성할 때의 작업 흐름 1. 구성 요소 설명1번 서버 (마스터 + 워커):마스터: Airflow 웹 서버와 스케줄러를 포함한다. 웹 서버는 UI를 제공하며, 스케줄러는 DAG(Directed Acyclic Graph)를 관리하고 태스크를 트리거한다.워커: Celery 워커가 포함되어 태스크를 실행한다.데이터베이스: Airflow 메타데이터 데이터베이스(PostgreSQL)를.. 2024. 8. 1. Airflow 로그와 DAG 설정: 환경 변수 사용 예시 Airflow 설정 시, 로그 파일과 DAG 파일의 디렉토리를 설정하는 것은 매우 중요하다. 이를 위해 Docker Compose 파일에서 환경 변수를 설정하여 쉽게 관리할 수 있다. 아래는 Airflow의 로그와 DAG 파일 디렉토리를 설정하는 방법을 알아본다. 환경 변수 설정 AIRFLOW__CORE__BASE_LOG_FOLDER: Airflow의 모든 로그 파일이 저장되는 기본 디렉토리를 지정한다.AIRFLOW__CORE__DAG_PROCESSOR_MANAGER_LOG_LOCATION: DAG DAG Processor Manager는 로그 파일 경로를 지정한다. DAG Processor Manager는 주기적으로 DAG 파일들을 스캔하고 파싱하여 DAG 객체를 Airflow가 인식 가능한 형태로 변.. 2024. 7. 13. 이전 1 2 다음 반응형