-
[Airflow] Airflow-s3 remote logging 설정 방법Airflow 2023. 3. 31. 22:35
Airlfow DAG 실행 시 발생하는 로그들을 S3에 원격으로 적재하는 방법이 있는데,
이번 글에서는 그 설정 방법에 대해서 얘기해보려고 합니다.
1️⃣ 먼저 아래와 같이 aws-cli 명령어로 s3 connection Id를 생성하여 Airflow에 등록해야 합니다.
- aws-cli
airflow connections add 's3_conn' \ --conn-type 's3' \ --conn-extra '{"region": "ap-northeast-2"}' \
2️⃣ 이후에 airflow.cfg 파일에도 remote_logging 섹션에 위에서 생성한 connection id와 s3 버킷 정보를 입력합니다.
- airflow.cfg
remote_logging = True remote_log_conn_id = s3_conn remote_base_log_folder = s3://my-log-bucket
3️⃣ Airflow UI 접속 후 connection id가 잘 생성이 되었는지 확인할 수 있습니다.
- Admin > Connections
4️⃣ Airflow 서버에서 S3에 접근하기 위해 권한 에러가 발생할 수 있는데, 아래와 같이 s3 관련 policy들을 추가해주면 됩니다.
- access denied/ permission error 해결 => S3 policy 추가하기(ecsTaskExecutionRole)
- List-ListBucket
- Read-GetObject
- Write-PutObject, ReplicateObject, RestoreObject, DeleteObject
5️⃣ 마지막으로 remote logging 로그가 정상적으로 작동하는지 확인합니다.
- remote logging
- 기존 local logging과의 비교
당신이 어떤 것을
할머니에게 설명해주지 못한다면,
그것은 진정으로 이해한 것이 아니다.
- A.Einstein
'Airflow' 카테고리의 다른 글
[Airflow] Airflow dag 추가 에러 현상 (0) 2024.02.24 [Airflow] Airflow DAG runs 개수 주기적으로 삭제하기 (0) 2023.08.01 [Airflow] Airflow ExternalTaskSensor 활용법(feat. DAG Dependency) (0) 2023.02.07 [Airflow] DAG skipped 상태에서 멈춰있을 때(feat. queue 지정) (0) 2022.10.21 [Airflow] airflow health status check 자동화 설정 (0) 2022.08.28