Azure Data Factory 워크플로 오케스트레이션 관리자는 어떻게 작동하나요?

적용 대상: Azure Data Factory Azure Synapse Analytics

기업용 올인원 분석 솔루션인 Microsoft Fabric의 Data Factory를 사용해 보세요. Microsoft Fabric은 데이터 이동부터 데이터 과학, 실시간 분석, 비즈니스 인텔리전스 및 보고에 이르기까지 모든 것을 다룹니다. 무료로 새 평가판을 시작하는 방법을 알아봅니다!

참고 항목

워크플로 오케스트레이션 관리자는 Apache Airflow를 통해 구동됩니다.

참고 항목

Azure Data Factory용 워크플로 오케스트레이션 관리자는 오픈 소스 Apache Airflow 애플리케이션을 사용합니다. Airflow에 대한 설명서 및 추가 자습서는 Apache Airflow 설명서 또는 커뮤니티 페이지에서 찾을 수 있습니다.

Azure Data Factory의 워크플로 오케스트레이션 관리자는 Python 기반 DAG(Directed Acyclic Graph)를 사용하여 오케스트레이션 워크플로를 실행합니다. 이 기능을 사용하려면 Azure Blob Storage에 DAG 및 플러그 인을 제공해야 합니다. CLI(명령줄 인터페이스) 또는 SDK(소프트웨어 개발 키트)를 사용하여 ADF에서 Airflow UI를 시작하고 DAG를 관리할 수 있습니다.

워크플로 오케스트레이션 관리자 환경 만들기

다음 단계에서는 워크플로 오케스트레이션 관리자 환경을 설정하고 구성합니다.

필수 조건

Azure 구독: Azure 구독이 아직 없는 경우 시작하기 전에 체험 계정을 만듭니다. 워크플로 오케스트레이션 관리자 미리 보기가 지원되는 지역에서 기존 Data Factory를 만들거나 선택합니다.

환경을 만드는 단계

  1. 새 워크플로 오케스트레이션 관리자 환경을 만듭니다. 관리 허브 ->Airflow(미리 보기) ->+새로 만들기로 이동하여 새 Airflow 환경을 만듭니다.

    새 관리형 Apache Airflow 환경을 만드는 방법을 보여 주는 스크린샷

  2. 세부 정보 제공(Airflow 구성)

    워크플로 오케스트레이션 관리자 환경 세부 정보를 보여 주는 스크린샷.

    Important

    기본 인증을 사용하는 경우 이 화면에 지정된 사용자 이름 및 암호를 기억하세요. 나중에 워크플로 오케스트레이션 관리자 UI에서 로그인해야 합니다. 기본 옵션은 Microsoft Entra ID이며 Airflow 환경에 대한 사용자 이름/암호를 만들 필요가 없고, 대신 Azure Data Factory에 로그인한 사용자의 자격 증명을 사용하여 DAG 로그인/모니터링을 수행합니다.

  3. 환경 변수는 임의의 콘텐츠 또는 설정을 저장하고 검색하기 위한 Airflow 내의 간단한 키 값 저장소입니다.

  4. 요구 사항은 Python 라이브러리를 미리 설치하는 데 사용할 수 있습니다. 나중에 업데이트할 수도 있습니다.

DAG 가져오기

다음 단계에서는 DAG를 워크플로 오케스트레이션 관리자로 가져오는 방법을 설명합니다.

필수 조건

액세스 가능한 스토리지 계정에 샘플 DAG를 업로드해야 합니다(dags 폴더 아래에 있어야 함).

참고 항목

VNet 배후의 Blob Storage는 미리 보기 중에 지원되지 않습니다.
storageLinkedServices의 KeyVault 구성은 dags 가져오기를 지원하지 않습니다.

샘플 Apache Airflow v2.x DAG. 샘플 Apache Airflow v1.10 DAG.

가져오기 단계

  1. 설치한 Airflow 환경에 따라 콘텐츠(v2.x 또는 v1.10)를 tutorial.py라는 새 파일에 복사하여 붙여 넣습니다.

    blob Storage에 tutorial.py를 업로드합니다. (Blob에 파일을 업로드하는 방법)

    참고 항목

    dagsplugins라는 이름의 폴더를 포함한 Blob Storage 계정에서 디렉터리 경로를 선택하여 Airflow 환경으로 가져와야 합니다. Plugins는 필수가 아닙니다. dags라는 컨테이너가 있으면 그 안에 있는 모든 Airflow 파일을 업로드할 수도 있습니다.

  2. 관리 허브에서 Airflow(미리 보기)를 선택합니다. 그런 다음 이전에 만든 Airflow 환경을 마우스로 가리키고 파일 가져오기를 선택하여 모든 DAG 및 종속성을 Airflow 환경으로 가져옵니다.

    스크린샷은 관리 허브의 가져오기 파일을 보여줍니다.

  3. 필수 구성 요소에 언급된 액세스 가능한 스토리지 계정에 새 연결된 서비스를 만듭니다(또는 사용자 고유의 DAG가 이미 있는 경우 기존 서비스를 사용).

    새 연결된 서비스를 만드는 방법을 보여 주는 스크린샷

  4. DAG를 업로드한 스토리지 계정을 사용합니다(필수 구성 요소 확인). 연결을 테스트한 다음, 만들기를 선택합니다.

    스크린샷은 연결된 서비스 세부 정보를 보여줍니다.

  5. 샘플 SAS URL을 사용하는 경우 airflow를 찾아서 선택하거나 DAG 파일이 있는 dags 폴더가 포함된 폴더를 선택합니다.

    참고 항목

    이 인터페이스를 통해 DAG 및 해당 종속성을 가져올 수 있습니다. dagsplugins라는 이름의 폴더를 포함한 Blob Storage 계정에서 디렉터리 경로를 선택하여 Airflow 환경으로 가져와야 합니다. Plugins는 필수가 아닙니다.

    스크린샷은 가져오기 파일의 스토리지 찾아보기를 보여줍니다.

    공기 흐름에서 찾아보기를 보여 주는 스크린샷.

    스크린샷은 가져오기 파일에서 가져오기를 보여줍니다.

    스크린샷은 가져오기 dags를 보여줍니다.

참고 항목

미리 보기 중에는 DAG를 가져오는 데 몇 분 정도 걸릴 수 있습니다. 알림 센터(ADF UI의 종모양 아이콘)를 사용하여 가져오기 상태 업데이트를 추적할 수 있습니다.

DAG 가져오기 문제 해결

  • 문제: DAG 가져오기에 5분 이상 소요됩니다. 완화: 단일 가져오기로 가져오는 DAG의 크기를 줄입니다. 크기를 주리는 한 가지 방법은 여러 컨테이너에 걸쳐 더 적은 DAG를 포함한 여러 DAG 폴더를 만드는 것입니다.

  • 문제: Airflow UI에 로그인할 때 가져온 DAG가 표시되지 않습니다. 완화: Airflow UI에 로그인하고 DAG 구문 분석 오류가 있는지 확인합니다. DAG 파일에 호환되지 않는 코드가 포함된 경우 이 오류가 발생할 수 있습니다. Airflow UI를 통해 문제가 있는 정확한 줄 번호와 파일을 찾을 수 있습니다.

    스크린샷은 가져오기 dag 문제를 보여줍니다.

DAG 실행 모니터링

Airflow DAG를 모니터링하려면 이전에 만든 사용자 이름 및 암호를 사용하여 Airflow UI에 로그인합니다.

  1. 만들었던 Airflow 환경을 선택합니다.

    생성된 Airflow 환경을 보여 주는 스크린샷

  2. Airflow Integration Runtime을 만드는 동안 제공된 사용자 이름 및 암호를 사용하여 로그인합니다. (필요한 경우 Airflow 통합 런타임을 편집하여 사용자 이름 또는 암호를 다시 설정할 수 있음)

    Airflow Integration Runtime을 만드는 동안 제공된 사용자 이름 암호를 사용하여 로그인하는 방법을 보여 주는 스크린샷

Airflow 환경에서 DAG 제거

Airflow 버전 1.x를 사용하는 경우 IR Airflow 환경(IR)에 배포된 DAG를 삭제하려면 두 개의 다른 위치에서 DAG를 삭제해야 합니다.

  1. Airflow UI에서 DAG 삭제
  2. ADF UI에서 DAG 삭제

참고 항목

이는 공개 미리 보기 중의 현재 환경이며 이 환경을 개선할 예정입니다.