오늘 AWS는 다음에 대한 현재 위치 버전 업그레이드의 가용성을 발표합니다. Apache Airflow용 Amazon 관리형 워크플로 (아마존 MWAA). 이 향상된 기능을 통해 워크플로 실행 기록 및 환경 구성을 유지하면서 기존 Apache Airflow 버전 2.x 환경을 사용 가능한 최신 버전으로 원활하게 업그레이드할 수 있습니다. 이제 완전히 새로운 Amazon MWAA 환경을 생성하지 않고도 Apache Airflow 플랫폼의 최신 기능을 활용할 수 있습니다.
지금까지 Amazon MWAA 환경을 다른 Apache Airflow 버전으로 업그레이드하려면 다음을 따라야 했습니다. Amazon MWAA 환경 마이그레이션 지침. 여기에는 새로운 Amazon MWAA 환경을 생성한 다음 모든 구성 및 방향성 비순환 그래프 (DAG)로 이동합니다. DAG 실행 기록도 보존해야 하는 경우 메타데이터 데이터베이스를 백업한 다음 새로 만든 환경에서 해당 백업을 복원해야 했습니다. 이 프로세스는 오류가 발생하기 쉽고 수동적이며 새 환경을 확인하고 이전 환경을 폐기할 수 있을 때까지 두 개의 별도 Amazon MWAA 환경을 유지 관리하는 데 추가 비용이 발생했습니다.
이 게시물에서는 인플레이스 버전 업그레이드 기능에 대한 개요를 제공하고, 적용 가능한 사용 사례를 살펴보고, 사용 단계를 자세히 설명하고, 기능에 대한 추가 지침을 제공합니다.
솔루션 개요
Amazon MWAA에서 새로 도입한 인플레이스 버전 업그레이드는 기존 Apache Airflow 버전 2.x 기반 환경에서 사용 가능한 최신 Apache Airflow 버전으로의 간소화된 전환을 제공합니다. Amazon MWAA는 새 Apache Airflow 버전 프로비저닝에서 메타데이터 데이터베이스 업그레이드에 이르는 전체 업그레이드 프로세스를 관리합니다. 업그레이드 실패 시 Amazon MWAA는 연결된 메타데이터 데이터베이스 스냅샷을 사용하여 안정적인 이전 버전으로 롤백하도록 설계되었습니다.
Amazon MWAA에서 기존 환경을 업그레이드하는 것은 간단한 프로세스입니다. Amazon MWAA API를 사용하여 Amazon MWAA 콘솔에서 몇 번의 클릭만으로 Amazon MWAA의 기존 Apache Airflow 2.0 이상 환경을 업그레이드할 수 있습니다 AWS 명령 줄 인터페이스 (AWS CLI) 또는 다음과 같은 도구를 사용하여 AWS 클라우드 포메이션Walk Through California 프로그램, AWS 클라우드 개발 키트 (AWS CDK) 또는 테라 폼. 이 기능은 현재 지원되는 모든 Amazon MWAA 리전에서 사용할 수 있습니다.
Amazon MWAA 콘솔에서 환경을 편집하고 기존 환경의 현재 버전보다 높은 사용 가능한 Apache Airflow 버전을 선택하기만 하면 됩니다. 당신은 또한 사용할 수 있습니다 업데이트 환경 API를 사용하고 새 Apache Airflow 버전을 지정하여 업그레이드 프로세스를 트리거합니다. 전체 버전 업그레이드에 대한 자세한 내용은 다음을 참조하십시오. Apache Airflow 버전 업그레이드 Amazon MWAA 설명서에서.
업그레이드 중에 Amazon MWAA는 먼저 기존 환경의 메타데이터 데이터베이스의 스냅샷을 생성한 다음 새 데이터베이스의 기반으로 사용합니다. 그 후 모든 Apache Airflow 구성 요소(웹 서버, 스케줄러 및 작업자)가 업그레이드됩니다. 마지막으로 새로 생성된 메타데이터 데이터베이스가 업그레이드되어 새 환경으로의 전환이 효과적으로 완료됩니다.
적용 가능한 사용 사례
기존 워크플로가 변경 사항을 수용할 수 있고 사용 사례에 맞는 기능 또는 개선 사항이 포함된 새 버전을 사용할 수 있는 경우 Amazon MWAA에서 Apache Airflow 버전 업그레이드를 고려해야 합니다. 업그레이드하면 Apache Airflow 플랫폼의 최신 기능을 활용하고 데이터 기반 일정 및 새로운 Amazon 공급자 패키지와 같은 새로운 기능 및 모범 사례와의 호환성을 유지할 수 있습니다. Apache Airflow 2.4.3에서 릴리스됨. 업그레이드 프로세스에는 환경 크기에 따라 완료하는 데 최대 2시간이 걸릴 수 있는 환경 다운타임이 포함되며 가장 적합한 시간에 요청 시 수행할 수 있습니다. 가동 중지 시간을 감당할 수 없을 정도로 기존 환경이 많이 사용되는 경우 대신 새 환경을 만드는 것이 좋습니다.
사전 조건
업그레이드를 준비할 때 다음 전제 조건 단계를 완료했는지 확인하십시오.
- 환경의 기존 버전과 새 버전 간에 Apache Airflow 변경 사항을 확인합니다. Apache Airflow 검토 릴리즈 노트 소스 버전과 대상 버전 간에 생성된 모든 중간 Apache Airflow 릴리스의 새로운 기능, 중요한 변경 사항 및 버그 수정의 영향을 이해합니다.
- 기존 검토
requirements.txt
파일을 사용하여 대상 환경에 필요한 올바른 종속성 세트를 확인하십시오. 또한 다음을 확인하십시오.requirements.txt
파일에는 대상 환경과 일치하도록 파일 맨 위에 추가된 올바른 제약 조건 파일이 있습니다. Apache Airflow 제약 조건 파일은 Apache Airflow 릴리스 시 사용 가능한 종속 모듈 및 공급자 버전을 지정합니다. 제약 조건 파일을 추가하면 호환되지 않는 라이브러리가 환경에 설치되는 것을 방지할 수 있습니다. 다음 예에서{Airflow-version}
대상 환경의 버전 번호와{Python-version}
환경과 호환되는 Python 버전:--constraint "https://raw.githubusercontent.com/apache/airflow/constraints-{Airflow-version}/constraints-{Python-version}.txt"
- 귀하의 문서에 언급된 추가 Python 라이브러리의 호환성을 검토하십시오.
requirements.txt
대상 환경과 일치하는 파일. Apache Airflow v2.4.3 이상은 Python v3.10을 사용하고 이전 Apache Airflow 버전은 Python v3.7을 사용합니다. 따라서 기존 Apache Airflow v2.0.2/2.2.2 기반 환경을 Apache Airflow v2.4.3 이상으로 업그레이드하려는 경우 Python v3.10과 일치하도록 추가 Python 라이브러리를 업데이트해야 합니다. - Apache Airflow v2.4.3 이상에서는 Amazon MWAA가 환경에 대해 기본적으로 설치하는 공급자 패키지 목록이 변경되었습니다. 공급자 패키지 전체에서 명명 규칙을 표준화하기 위해 Apache Airflow의 새 공급자 패키지에서 일부 가져오기 및 연산자 이름이 변경되었습니다. 비교 기본적으로 설치된 공급자 패키지 목록 Apache Airflow v2.2.2 또는 v2.0.2에서 새 Apache Airflow v2.4.3 이상 환경에 필요할 수 있는 추가 패키지를 구성합니다.
- DAG 및 기타 워크플로 리소스가 업그레이드하려는 새 Apache Airflow 버전과 호환되는지 확인하십시오.
- 사용 aws-mwaa-로컬 러너 Amazon MWAA에 배포하기 전에 로컬에서 기존 DAG, 요구 사항, 플러그인 및 종속성을 테스트하는 유틸리티입니다. 다음을 사용하여 로컬에서 Amazon MWAA 프로덕션 이미지와 유사한 대상 Apache Airflow 환경을 생성할 수 있습니다.
aws-mwaa-local-runner
Amazon MWAA 환경 업그레이드를 시도하기 전에 모든 구성 요소가 작동하는지 확인하십시오. 또한 프로덕션 환경에서 업그레이드를 롤아웃하기 전에 개발 또는 스테이징과 같은 낮은 Amazon MWAA 환경에서 새로운 환경 업그레이드 프로세스를 테스트하십시오.
업그레이드 프로세스
업그레이드가 시작되면 Amazon MWAA는 기존의 기본 Apache Airflow 구성 요소(웹 서버, 스케줄러 및 작업자)를 중지합니다. 이 프로세스는 현재 실행 중인 모든 작업자 작업을 중지합니다. 이 단계에서 환경의 상태는 다음과 같이 표시됩니다. UPDATING
. 그런 다음 업그레이드 프로세스는 상태로 표시된 메타데이터 데이터베이스의 데이터베이스 스냅샷을 생성합니다. CREATING_SNAPSHOT
. 스냅샷이 완료되면 환경 상태가 UPDATING
Amazon MWAA는 버전 선택과 일치하는 새로운 Apache Airflow 환경 생성을 트리거하고 필요한 스키마 변경 사항을 기존 메타데이터 데이터베이스에 적용하여 대상 Apache Airflow 환경에 맞춥니다. 이 단계에서는 지정된 요구 사항, 플러그인 및 기타 종속성이 설치됩니다.
완료되면 새 환경이 다음과 같이 표시됩니다. AVAILABLE
, 업그레이드 프로세스가 성공적으로 완료되었으며 환경을 테스트할 준비가 되었음을 나타냅니다. 이제 Apache Airflow UI에 로그인하여 기존 DAG, 기록 실행, 구성된 연결 등의 존재 여부를 확인할 수 있습니다.
그러나 지정된 요구 사항, 플러그인 및 종속성 파일을 설치하는 데 실패하면 환경에서 이전 안정 버전으로 롤백을 시작합니다. 이 과정에서 환경 상태는 다음과 같이 표시됩니다. ROLLING_BACK
. 롤백에 성공하면 이전의 안정적인 환경을 사용할 수 있으며 상태는 다음과 같이 표시됩니다. UPDATE_FAILED
새로운 업데이트가 시도되고 성공할 때까지. 롤백이 실패하면 상태가 다음과 같이 표시됩니다. UNAVAILABLE
, 환경이 작동하지 않음을 나타냅니다.
환경 업그레이드 프로세스가 실패하면 기본 Amazon 탄력적 컨테이너 서비스 (아마존 ECS) AWS 파게이트 클러스터에는 Apache Airflow 구성 요소 업그레이드 후 충돌하는 요구 사항 및 플러그인, 네트워킹 문제 또는 DB 마이그레이션 문제로 인해 안정화 문제가 발생했습니다. 이러한 문제를 완화하려면 다음을 사용하여 DAG 및 요구 사항이 문제 없이 작동하는지 확인하십시오. aws-mwaa-local-runner
유용하고 이상적으로는 스테이징 Amazon MWAA 환경에서 테스트합니다.
추가 고려 사항
이 기능에 대한 다음 추가 정보에 유의하십시오.
- 업그레이드 프로세스는 요청 시 제공되며 최신 버전으로의 이동으로 제한됩니다. Amazon MWAA의 인플레이스 버전 업그레이드는 버전 1.10.z에 대해 지원되지 않습니다. 메이저 버전 업그레이드(예: 버전 1.yz에서 2.yz로)를 수행하려면 새 환경을 생성하고 리소스를 마이그레이션해야 합니다.
- 업그레이드할 수 있는 해당 상위 버전만 선택할 수 있습니다. 하위 버전으로의 다운그레이드는 불가능합니다.
- 롤백 프로세스는 추가 시간이 걸릴 수 있으며, 아마존 단순 스토리지 서비스 (Amazon S3) 버킷 버전 관리가 활성화되면 Amazon MWAA는 플러그인 및 요구 사항을 포함하여 환경을 이전 작업 구성으로 되돌리도록 설계되었습니다. 그러나 DAG에 대한 수동 변경 사항은 이 프로세스 중에 되돌려지지 않습니다.
- 업그레이드 프로세스가 성공적으로 완료되고 환경을 사용할 수 있게 되면 DAG에 대한 재시도 구성 방식에 따라 업그레이드 중에 중단된 실행 중인 DAG가 재시도되도록 예약됩니다. 수동으로 트리거하거나 다음 예약 실행을 기다릴 수도 있습니다.
- 가장 덜 중요한 환경부터 시작하여 환경을 반복적으로 업그레이드해야 합니다.
결론
이 게시물에서는 기존 Amazon MWAA 환경을 상위 Apache Airflow 버전으로 업그레이드할 수 있는 Amazon MWAA의 새로운 기능에 대해 이야기했습니다. 이 기능은 Apache Airflow 2.x 이상을 실행하는 신규 및 기존 Amazon MWAA 환경에서 지원됩니다. 이 기능을 사용하여 기존 워크플로 실행 기록 및 환경 구성을 유지하면서 Apache Airflow 버전을 업그레이드합니다. 업그레이드하면 Apache Airflow 플랫폼의 최신 기능을 활용하고 새로운 기능과의 호환성을 유지하고 모범 사례를 준수할 수 있습니다.
Amazon MWAA에 대한 추가 세부 정보 및 코드 예제는 다음을 방문하십시오. Amazon MWAA 사용 설명서 그리고 Amazon MWAA 예제 GitHub 리포지토리.
Apache, Apache Airflow 및 Airflow는 다음의 등록 상표 또는 상표입니다. Apache Software Foundation 미국 및 / 또는 기타 국가에서.
저자에 관하여
파르납 바삭 솔루션 아키텍트이자 AWS의 서버리스 전문가입니다. 그는 서버리스, DevOps 및 분석과 같은 최신 소프트웨어 개발 관행을 사용하여 클라우드 네이티브인 새로운 솔루션을 만드는 것을 전문으로 합니다. Parnab은 분석 및 통합 서비스 공간에서 긴밀히 협력하여 고객이 워크플로 오케스트레이션 요구 사항에 맞게 AWS 서비스를 채택할 수 있도록 지원합니다.
페르난도 가메로 통신, 은행, 신생 기업에 이르기까지 기술 산업에서 25년 이상의 경력을 쌓은 AWS의 선임 솔루션 아키텍트 엔지니어입니다. 그는 현재 고객이 이벤트 기반 아키텍처를 구축하고, Edge에서 IoT 솔루션을 채택하고, 데이터 및 기계 학습 파이프라인을 대규모로 변환하도록 돕고 있습니다.
수박 메타 XNUMX년 이상의 경험과 성공적인 제품 제공에 대한 입증된 실적을 보유한 숙련된 제품 관리자입니다. 현재 AWS의 선임 제품 관리자로서 그는 Amazon MWAA(Amazon Managed Workflows for Apache Airflow)를 감독하고 Apache Airflow 오픈 소스 기여를 주도하여 제품의 기능을 더욱 향상시킵니다.
- SEO 기반 콘텐츠 및 PR 배포. 오늘 증폭하십시오.
- PlatoAiStream. Web3 데이터 인텔리전스. 지식 증폭. 여기에서 액세스하십시오.
- 미래 만들기 w Adryenn Ashley. 여기에서 액세스하십시오.
- PREIPO®로 PRE-IPO 회사의 주식을 사고 팔 수 있습니다. 여기에서 액세스하십시오.
- 출처: https://aws.amazon.com/blogs/big-data/introducing-in-place-version-upgrades-with-amazon-mwaa/
- :있다
- :이다
- :아니
- $UP
- 1
- 10
- 100
- 110
- 7
- a
- 소개
- 위의
- 수용하다
- 가로질러
- 비 환식
- 추가
- 첨가
- 추가
- 추가 정보
- 또한
- 가입 한
- 채택
- 채택
- 이점
- 후
- 일직선으로하다
- All
- 수
- 또한
- 아마존
- Apache Airflow용 Amazon 관리형 워크플로(Amazon MWAA)
- Amazon Web Services
- an
- 분석
- 및
- 발표
- 어떤
- 아파치
- API를
- 응용할 수 있는
- 있군요
- AS
- 관련
- At
- 시도하다
- 시도 중
- 유효성
- 가능
- AWS
- 뒤로
- 백업
- 은행
- 기초
- BE
- 된
- 전에
- 존재
- BEST
- 모범 사례
- 사이에
- 곤충
- 건물
- by
- CAN
- 기능
- 케이스
- 가지 경우
- 발생
- 이전 단계로 돌아가기
- 변경
- 변경
- 면밀히
- 클라우드
- 클라우드 네이티브
- 암호
- 비교
- 호환성
- 호환
- 완전한
- 진행완료
- 완료
- 완성
- 구성 요소
- 구성 요소들
- 구성
- 서로 싸우는
- 연결
- 고려
- 콘솔에서
- 제약
- 컨테이너
- 기부금
- 컨벤션
- 수정
- 비용
- 수
- 국가
- 만들
- 만든
- 생성
- 만들기
- 창조
- 임계
- Current
- 현재
- 고객
- DAG
- 데이터
- 데이터 중심
- 데이터베이스
- 태만
- 배달
- 수요
- 의존하는
- 의존
- 배치
- 설계
- 목적지
- 세부 묘사
- 세부설명
- 데브
- 개발
- 개발자
- 다른
- 디스플레이
- 선적 서류 비치
- 중단 시간
- 구동
- ...동안
- Edge
- 효과적으로
- 중
- 사용 가능
- 기사
- 강화
- 상승
- 확인
- 전체의
- 전적으로
- 환경
- 환경
- 오류
- 에테르 (ETH)
- 이벤트
- 예
- 예
- 현존하는
- 경험
- 경험
- 탐험
- 실패
- 고장
- 특색
- 특징
- 를
- 입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에
- 파일
- 최종적으로
- 먼저,
- 따라
- 수행원
- 럭셔리
- 에
- 기능의
- 기능
- 추가
- GitHub의
- 지도
- 했다
- 있다
- 데
- he
- 무겁게
- 도움이
- 더 높은
- 그의
- 역사적인
- history
- 진료 시간
- 그러나
- HTML
- HTTP
- HTTPS
- if
- 영상
- 영향
- 수입
- 개량
- in
- 포함
- 양립 할 수없는
- 표시
- 산업
- 정보
- 시작
- 설치
- 를 받아야 하는 미국 여행자
- 명령
- 완성
- 중간의
- 중단 된
- 소개
- 소개
- 참여
- IOT
- 문제
- IT
- 그
- JPG
- 다만
- 후에
- 최근
- 배우다
- 배우기
- 가장 작은
- 도서관
- 처럼
- 아마도
- 제한된
- 라인
- 명부
- 장소 상에서
- 기록
- 기계
- 기계 학습
- 만든
- 유지하다
- 주요한
- 확인
- 관리
- 매니저
- 관리하다
- 조작
- 수동으로
- 두드러진
- 경기
- 말하는
- 메타 데이터
- 수도
- 이전
- 이주하는
- 이주
- 신경
- 완화
- 현대
- 모듈
- 배우기
- 움직이는
- 절대로 필요한 것
- 이름
- 명명
- 출신
- 필요한
- 필요
- 필요
- 요구
- 네트워킹
- 신제품
- 새로운 기능
- 새로운 기능
- 새로운 솔루션
- 새로운
- 다음 것
- 지금
- 번호
- of
- 낡은
- on
- 사람
- 만
- 오픈 소스
- 연산자
- or
- 오케스트레이션
- 주문
- 기타
- 아웃
- 위에
- 개요
- 꾸러미
- 패키지
- 수행
- 수행
- 상
- 플랫폼
- 플라톤
- 플라톤 데이터 인텔리전스
- 플라토데이터
- 플러그인
- 게시하다
- 사례
- 준비
- 존재
- 방지
- 너무 이른
- 방법
- 프로덕트
- 제품 관리자
- 생산
- 제품
- 증명 된
- 제공
- 공급자
- Python
- 준비
- 기록
- 지역
- 등록된
- 공개
- 보도 자료
- 교체
- 필수
- 요구조건 니즈
- 제품 자료
- 복원
- 유지
- 반품
- 돌아가는 것
- 리뷰
- 직위별
- 롤
- 구르는
- 달리기
- 달리는
- 규모
- 예약
- 일정
- 완벽하게
- 선택
- 연장자
- 별도의
- 서버리스
- 봉사하다
- 서비스
- 세트
- 영상을
- 표시
- 상당한
- 비슷한
- 단순, 간단, 편리
- 간단히
- 크기
- 스냅 사진
- 소프트웨어
- 소프트웨어 개발
- 솔루션
- 일부
- 출처
- 스페이스 버튼
- 전문가
- 전문적으로
- 지정
- 안정된
- 단계
- 각색
- 시작 중
- 신생
- 미국
- Status
- 단계
- 중지
- 저장
- 똑 바른
- 간소화 된
- 그후
- 성공한
- 성공적으로
- 이러한
- 지원
- 받아
- 목표
- 작업
- Technology
- 통신
- 테라 폼
- test
- 지원
- 보다
- 그
- XNUMXD덴탈의
- 그들의
- 그들
- 그때
- 그곳에.
- 따라서
- Bowman의
- 이
- 시간
- 에
- 검색을
- 상단
- 선로
- 상표권
- 변화
- 전이
- 트리거
- 두
- ui
- 밑에 있는
- 이해
- 미국
- United States
- 까지
- 업데이트
- 업그레이드
- 업그레이드
- 업그레이드
- 사용
- 유스 케이스
- 익숙한
- 사용자
- 사용
- 유틸리티
- 확인
- 버전
- 방문
- 기다리다
- 원
- 였다
- 방법..
- we
- 웹
- 웹 서버
- 웹 서비스
- 했다
- 언제
- 어느
- 동안
- 의지
- 과
- 없이
- 작업
- 노동자
- 근로자
- 워크플로우
- 워크 플로우
- 일하는
- 일
- X
- 년
- 당신
- 너의
- 제퍼 넷