편집

다음을 통해 공유


Azure Data Factory 및 Azure Synapse Analytics 파이프라인용 BCDR

Azure Data Factory
Azure Repos
Azure Synapse Analytics
GitHub

재해는 하드웨어 오류, 자연 재해 또는 소프트웨어 오류일 수 있습니다. 재해를 준비하고 복구하는 프로세스를 DR(재해 복구)이라고 합니다. 이 문서에서는 Azure Data Factory 및 Azure Synapse Analytics 파이프라인에 대한 BCDR(비즈니스 연속성 및 재해 복구)을 달성하기 위한 권장 사례를 설명합니다.

BCDR 전략에는 가용성 영역 중복성, Azure 재해 복구에서 제공하는 자동화된 복구 및 CI/CD(연속 통합/지속적인 업데이트)를 사용한 사용자 관리형 복구가 포함됩니다.

아키텍처

Azure Synapse Analytics 및 Data Factory 파이프라인 BCDR의 가용성 영역 및 지역을 보여 주는 다이어그램.

이 아키텍처의 Visio 파일을 다운로드합니다.

워크플로

  1. Data Factory 및 Azure Synapse 파이프라인은 Azure 지역 및 Azure 가용성 영역을 사용하여 복원력을 달성합니다.

    • 각 Azure 지역에는 대기 시간 정의 경계 내에 배포되는 데이터 센터 집합이 있습니다.
    • Azure 가용성 영역은 로컬 오류를 허용하는 각 Azure 지역 내에서 물리적으로 분리된 위치입니다.
    • 모든 Azure 지역 및 가용성 영역은 지역 대기 시간이 짧은 전용 네트워크와 고성능 네트워크를 통해 연결됩니다.
    • 모든 가용성 영역 사용 지역에는 복원력을 보장하기 위해 세 개 이상의 개별 가용성 영역이 있습니다.
  2. 데이터 센터, 데이터 센터의 일부 또는 지역의 가용성 영역이 다운되면 장애 조치(failover)는 영역 복원력이 있는 Data Factory 및 Azure Synapse 파이프라인에 대한 가동 중지 시간이 0으로 발생합니다.

구성 요소

시나리오 정보

Data Factory 및 Azure Synapse 파이프라인은 다음 데이터를 포함하는 아티팩트가 저장됩니다.

메타데이터

  • 파이프라인
  • 데이터 세트
  • 연결된 서비스
  • 통합 런타임
  • 트리거

데이터 모니터링

  • 파이프라인
  • 트리거
  • 작업 실행

재해는 하드웨어 오류, 자연 재해 또는 인적 오류 또는 사이버 공격으로 인한 소프트웨어 오류와 같은 다양한 방식으로 발생할 수 있습니다. 오류 유형에 따라 지리적 영향은 지역 또는 전체일 수 있습니다. 재해 복구 전략을 계획할 때 재해의 특성과 지리적 영향을 모두 고려하세요.

Azure의 BCDR은 공유 책임 모델에서 작동합니다. 많은 Azure 서비스는 고객이 DR 전략을 명시적으로 설정해야 하는 반면, Azure는 필요에 따라 기준 인프라 및 플랫폼 서비스를 제공합니다.

다음 권장 사례를 사용하여 다양한 오류 시나리오에서 Data Factory용 BCDR 및 Azure Synapse 파이프라인을 달성할 수 있습니다. 구현에 대해서는 이 시나리오 배포를 참조하세요.

Azure 재해 복구를 사용한 자동화된 복구

자동화된 복구가 제공되는 Azure Backup 및 재해 복구를 사용하면 쌍을 이루는 지역이 있는 Azure 지역에 대한 전체 지역 중단이 있는 경우 자동화된 복구를 설정할 때 Data Factory 또는 Azure Synapse 파이프라인이 쌍을 이루는 지역으로 자동으로 장애 조치(failover)됩니다. 예외는 동남 아시아 및 브라질 지역이며, 데이터 상주 요구 사항에 따라 해당 지역에 데이터를 유지해야 합니다.

DR 장애 조치(failover)에서 Data Factory는 프로덕션 파이프라인을 복구합니다. 복구된 파이프라인의 유효성을 검사해야 하는 경우 비밀 스토리지의 프로덕션 파이프라인에 대한 Azure 자원 관리 템플릿을 백업하고 복구된 파이프라인을 백업과 비교할 수 있습니다.

Azure 글로벌 팀은 정기적인 BCDR 훈련을 수행하고 Azure Data Factory 및 Azure Synapse Analytics가 이러한 훈련에 참여합니다. BCDR 훈련은 지역 오류를 시뮬레이션하고 고객의 개입 없이 Azure 서비스를 쌍을 이루는 지역으로 장애 조치(failover)합니다. BCDR 훈련에 대한 자세한 내용은 서비스 테스트를 참조하세요.

CI/CD를 사용하는 사용자 관리형 중복성

전체 지역 오류가 발생할 경우 BCDR을 달성하려면 보조 지역에 데이터 팩터리 또는 Azure Synapse 작업 영역이 필요합니다. 실수로 인한 Data Factory 또는 Azure Synapse 파이프라인 삭제, 중단 또는 내부 유지 관리 이벤트가 발생하는 경우 Git 및 CI/CD를 사용하여 파이프라인을 수동으로 복구할 수 있습니다.

필요에 따라 활성/수동 구현을 사용할 수 있습니다. 주 지역은 정상 작업을 처리하고 활성 상태로 유지되지만 보조 DR 지역에는 특정 구현에 따라 미리 계획된 단계가 기본으로 승격되어야 합니다. 이 경우 인프라에 필요한 모든 구성은 보조 지역에서 사용할 수 있지만 프로비전되지는 않습니다.

잠재적인 사용 사례

사용자 관리형 중복성은 다음과 같은 시나리오에서 유용합니다.

  • 사용자 오류를 통해 파이프라인 아티팩트가 실수로 삭제된 경우.
  • 보고된 재해가 없으므로 BCDR을 트리거하지 않는 확장된 중단 또는 유지 관리 이벤트.

프로덕션 워크로드를 다른 지역으로 신속하게 이동할 수 있으며 영향을 받지 않습니다.

고려 사항

이러한 고려 사항은 워크로드의 품질을 향상시키는 데 사용할 수 있는 일단의 지침 원칙인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Microsoft Azure Well-Architected Framework를 참조하세요.

안정성

안정성은 애플리케이션이 고객에 대한 약속을 충족할 수 있도록 합니다. 자세한 내용은 안정성 핵심 요소 개요를 참조하세요.

Data Factory 및 Azure Synapse 파이프라인은 가용성 영역을 지원하는 일반적인 Azure 서비스이며, 매우 짧은 대기 시간과 함께 적절한 수준의 복원력과 유연성을 제공하도록 설계되었습니다.

사용자 관리형 복구 접근 방식을 사용하면 주 지역에 유지 관리 이벤트, 중단 또는 사용자 오류가 있는 경우 계속 작동할 수 있습니다. CI/CD를 사용하면 Data Factory 및 Azure Synapse 파이프라인이 Git 리포지토리에 통합되고 즉시 복구를 위해 보조 지역에 배포할 수 있습니다.

비용 최적화

비용 최적화는 불필요한 비용을 줄이고 운영 효율성을 높이는 방법을 찾는 것입니다. 자세한 내용은 비용 최적화 핵심 요소 개요를 참조하세요.

사용자 관리형 복구는 CI/CD를 사용하여 Data Factory를 Git과 통합하고 필요에 따라 필요한 모든 인프라 구성을 백업으로 포함하는 보조 DR 지역을 사용합니다. 이 시나리오에는 추가 비용이 발생할 수 있습니다. 비용을 예측하려면 Azure 가격 계산기를 사용합니다.

Data Factory 및 Azure Synapse Analytics 가격 책정의 예는 다음을 참조하세요.

운영 우수성

운영 우수성은 애플리케이션을 배포하고 프로덕션에서 계속 실행하는 운영 프로세스를 다룹니다. 자세한 내용은 운영 우수성 핵심 요소 개요를 참조하세요.

사용자 관리형 CI/CD 복구 방법을 사용하여 Azure Repos 또는 GitHub에 통합할 수 있습니다. 최상의 CI/CD 사례에 대한 자세한 내용은 CI/CD에 대한 모범 사례를 참조하세요.

시나리오 배포

다음 작업을 수행하여 Data Factory 및 Azure Synapse 파이프라인에 대한 자동화된 DR 또는 사용자 관리형 DR을 설정합니다.

자동화된 위협 대응 설정

Data Factory에서는 통합 런타임 설정에서 활동 실행 또는 디스패치에 대한 Azure IR(통합 런타임) 지역을 설정할 수 있습니다. 전체 지역 가동 중단 시 자동 장애 조치(failover)를 사용하도록 설정하려면 지역자동 해결로 설정합니다.

통합 런타임 설정에서 자동 장애 조치(failover)를 사용하도록 자동 해결을 선택하는 것을 보여 주는 스크린샷.

통합 런타임의 컨텍스트에서 IR 영역으로 자동 해결을 선택하면 IR이 쌍을 이루는 지역으로 자동으로 장애 조치(fails over)됩니다. 다른 특정 위치 지역의 경우 다른 지역에 보조 데이터 팩터리를 만들고 CI/CD를 사용하여 Git 리포지토리에서 데이터 팩터리를 프로비전할 수 있습니다.

연결된 서비스는 지역의 최신 네트워크에서 보류 중인 프라이빗 엔드포인트로 인해 장애 조치(failover) 후 완전히 사용 설정되지 않습니다. 복구된 지역에서 프라이빗 엔드포인트를 구성해야 합니다. 승인 API를 사용하여 프라이빗 엔드포인트 만들기를 자동화할 수 있습니다.

CI/CD를 통해 사용자 관리형 복구 설정

Git 및 CI/CD를 사용하여 Data Factory 또는 Azure Synapse 파이프라인 삭제 또는 중단 시 파이프라인을 수동으로 복구할 수 있습니다.

CI/CD를 사용하여 사용자 관리형 중복성을 배포하는 경우 다음 작업을 수행합니다.

트리거 비활성화

다시 온라인 상태가 되면 원래 기본 데이터 팩터리에서 트리거를 사용하지 않도록 설정합니다. 트리거를 수동으로 사용하지 않도록 설정하거나 자동화를 구현하여 원래 주 복제본의 가용성을 주기적으로 확인할 수 있습니다. 팩터리가 복구된 직후 원래 기본 데이터 팩터리에서 모든 트리거를 사용하지 않도록 설정합니다.

Azure PowerShell을 사용하여 Data Factory 트리거를 끄거나 켜려면 배포 전 및 배포 후 샘플 스크립트파이프라인 트리거 배포와 관련된 CI/CD 개선 사항을 참조하세요.

중복 쓰기 처리

대부분의 ETL(추출, 변환, 로드) 파이프라인은 백필 및 다시 작성에 필요하므로 중복 쓰기를 처리하도록 설계되었습니다. 투명한 장애 조치(failover)를 지원하는 데이터 싱크는 레코드 병합을 사용하거나 특정 시간 범위의 모든 레코드를 삭제하고 삽입하여 중복 쓰기를 처리할 수 있습니다.

장애 조치(failover) 후 엔드포인트를 변경하는 데이터 싱크의 경우 기본 및 보조 스토리지에 중복 데이터 또는 부분 데이터가 있을 수 있습니다. 데이터를 수동으로 병합해야 합니다.

미러링 모니터 서버 확인 및 파이프라인 흐름 제어(선택 사항)

일반적으로 관심 지점에서 실패한 파이프라인을 다시 시작하기 위해 실패 및 조회 활동과 같은 활동을 포함하도록 파이프라인을 디자인해야 합니다.

  1. 데이터 팩터리에 전역 매개 변수를 추가하여 지역을 나타냅니다(예: 주 데이터 팩터리의 region='EastUS' 및 보조 데이터 팩터리의 region='CentralUS').

  2. 세 번째 지역에 미러링 모니터 서버를 만듭니다. 미러링 모니터 서버는 REST 호출 또는 모든 유형의 스토리지일 수 있습니다. 미러링 모니터 서버는 현재 주 지역(예: 'EastUS')을 기본적으로 반환합니다.

  3. 재해가 발생하면 미러링 모니터 서버를 수동으로 업데이트하여 새 주 지역(예: 'CentralUS')을 반환합니다.

  4. 파이프라인에 활동을 추가하여 미러링 모니터 서버를 조회하고 현재 기본 값을 전역 매개 변수와 비교합니다.

    • 매개 변수가 일치하는 경우 이 파이프라인은 주 지역에서 실행됩니다. 실제 작업을 진행합니다.
    • 매개 변수가 일치하지 않으면 이 파이프라인이 보조 지역에서 실행되고 있는 것입니다. 결과를 반환하기만 하면 합니다.

참고

이 방법은 파이프라인에 대한 미러링 모니터 서버 조회에 종속성을 도입합니다. 미러링 모니터 서버를 읽지 못하면 모든 파이프라인 실행이 중지됩니다.

참가자

Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.

주요 작성자:

기타 기여자:

  • Mario Zimmermann | 주 소프트웨어 엔지니어링 관리자 - Azure Data Factory 팀

  • Wee Hyong Tok | PM의 수석 디렉터 - Azure Data Factory 팀

비공개 LinkedIn 프로필을 보려면 LinkedIn에 로그인합니다.

다음 단계