데브코스 43일차(2) - 과제1) airflow.cfg

Pori·2023년 12월 13일
0

데엔

목록 보기
35/47

airflow.cfg

  • 질문에 앞서 airflow.cfg의 위치 및 찾는 방법
    • CLI : airflow-webserver에 위치하기 때문에 shell로 접근해야한다.
      • docker psdocker exec -it -u root <container_id> sh
    • GUI
      • docker-desktop으로 접근
      • airflow-webserver 컨테이너를 클릭 후 Files 탭을 클릭한다.
      • opt>airflow>airflow.cfg를 클릭해 수정한다.
  1. DAGS 폴더의 저장 위치
    - airflow.cfg에 들어가 확인하면 dags_folder = /opt/airflow/dags 를 확인 가능하다.
  2. 새로운 DAG 생성시 Airflow 시스템에서 스캔하는 주기 및 키의 이름
    • 기본 값 : 300초(5분)
    • 키 : dag_dir_list_interval
  3. airflow.cfg에서 API 형태로 외부에서 조작하고 싶은 경우 변경해야하는 부분 : api섹션
    • [api]
      • enable_experimental_api : 실험적 API의 활성변수이다. 2.0 이후에는 Stable REST API로 대체되었다고 한다.
      • auth_backends : API 사용자 인증에 사용할 백엔드를 지정한다.
        airflow.api.auth.backend.basic_auth로 변경하면 ID/PW로 인증하는 형태로 변경되어 API형태로 외부에서 조작이 가능하다. (기본은 session)
      • maximum_page_limit : API 요청에 대한 최대 페이지 제한을 설정한다. (기본 100)
      • access_control_allow_headers, methods, origins : HTTP 헤더를 알려준다.
        해당 변수의 헤더만 사용하고 싶게 하면 “Context-Type,Authorization”으로 설정한다고 한다.
  4. Variable에서 변수의 값을 encrypted로 만들기위해 변수 이름에 들어가야할 단어들
    • value가 *로 암호화되려면 secret, password, passwd, authorization, api_key, apikey, access_token이라는 키워드가 들어가면 된다.
  5. 환경 설정 파일이 수정되고, 실제 반영을 위해서 해야할 일은?
    • restart : sudo systemctl restart airflow-webserver & sudo systemctl restart airflow-scheduler
    • Docker 컨테이너 재실행
  6. Metadata DB의 내용을 암호화하는데 사용되는 키
    • fernet_key를 사용하여 암호화 가능하다.
    • 해당 키는 암호화와 복호화에 같이 쓰이는 대칭키이다.

참고 블로그 글)

[Docker, Airflow] Windows Docker 기반 Airflow에서 airflow.cfg 접근+수정

[Airflow] Airflow.cfg 일부 살펴보기

0개의 댓글