이 페이지에서는 Cloud Composer 버전 관리를 설명하고 Cloud Composer의 주요 버전 간의 차이점을 나열합니다.
Cloud Composer의 메이저 버전
Cloud Composer에는 다음과 같은 메이저 버전이 있습니다.
- Cloud Composer 1. 수동 환경 확장이 있으며 인프라가 프로젝트 및 네트워크에 배포됩니다.
- Cloud Composer 2. 이 버전에서는 환경의 클러스터가 리소스 수요에 맞게 자동으로 확장됩니다.
- Cloud Composer 3. 이 버전에서는 네트워크 설정을 간소화하고 환경의 클러스터 및 환경의 다른 서비스에 대한 종속 항목을 비롯한 인프라 구성요소를 숨깁니다.
Cloud Composer 버전 비교
다음 표에는 Cloud Composer 1, Cloud Composer 2, Cloud Composer 3의 주요 차이점이 나와 있습니다.
기능 | Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3 |
---|---|---|---|
이미지 버전 | composer-1.b.c-airflow-x.y.z |
composer-2.b.c-airflow-x.y.z |
composer-3-airflow-x.y.z-build.t |
Airflow 버전 | Airflow 1.10.* 및 Airflow 2 | Airflow 2 | Airflow 2 |
Python 버전 | 3.8.12 | 이전 버전의 3.11.5 및 3.8.12 | 3.11.5 |
환경 클러스터 | 표준 모드 VPC 기반 또는 경로 기반 Google Kubernetes Engine 클러스터 | Autopilot 모드 VPC 기반 Google Kubernetes Engine 클러스터 | 환경의 클러스터가 프로젝트에 배포되지 않았습니다. |
수평 확장 | 환경 클러스터의 노드 수를 조정할 수 있습니다. 이렇게 하면 Airflow 작업자 수가 변경됩니다. Airflow 스케줄러 수를 조정할 수 있습니다. |
수요에 따라 Airflow 작업자 수를 자동으로 확장합니다. 작업자 수의 상한과 하한을 설정하고 변경할 수 있습니다. Airflow 스케줄러 및 트리거 수를 조정할 수 있습니다. |
수요에 따라 Airflow 작업자 수를 자동으로 확장합니다. 작업자 수의 상한과 하한을 설정하고 변경할 수 있습니다. Airflow 스케줄러, 트리거, DAG 프로세서의 수를 조정할 수 있습니다. |
수직 확장 | 환경을 만들 때 클러스터 노드, Airflow 웹 서버, 데이터베이스의 머신 유형을 설정할 수 있습니다. Airflow 웹 서버와 데이터베이스의 머신 유형을 변경할 수 있습니다. | 워크로드 구성(Airflow 작업자의 CPU, 메모리, 스토리지 매개변수, 스케줄러, 웹 서버, 환경 크기)을 설정하고 변경할 수 있습니다. | 워크로드 구성(Airflow 작업자의 CPU, 메모리, 스토리지 매개변수, 스케줄러, 웹 서버, DAG 프로세서, 환경 크기)을 설정하고 변경할 수 있습니다. |
가격 책정 모델 | Cloud Composer 1 가격 책정 모델 | Cloud Composer 2 가격 책정 모델 | Cloud Composer 3 가격 책정 모델 |
액세스 제어 | Cloud Composer 1 역할 | Cloud Composer 역할. GKE용 워크로드 아이덴티티 제휴를 사용하고 Cloud Composer 서비스 에이전트 계정에 대한 추가 권한이 필요합니다. | Cloud Composer 역할. GKE용 워크로드 아이덴티티 제휴를 사용합니다. 추가 권한이 필요하지 않습니다. |
직원 ID 제휴를 통한 액세스 | 지원되지 않음 | 지원됨 | 지원됨 |
복원력이 우수한 환경 | 지원되지 않음 | 지원됨 | 공개 미리보기에서 사용할 수 없음 |
비공개 IP 네트워킹 | VPC 피어링 | Private Service Connect | 간소화된 네트워크 설정. 기존 환경에서 공개 IP와 비공개 IP 간에 변경할 수 있습니다. |
VPC 서비스 제어 | 지원됨 | 지원됨 | 공개 미리보기에서 사용할 수 없음 |
Airflow Executor | Celery Executor | Celery Executor | CeleryKubernetes Executor |
Airflow 트리거(지연 가능한 연산자) | 지원되지 않음 | 지원됨 | 지원됨 |
CMEK | 지원됨 | 지원됨 | 공개 미리보기에서 사용할 수 없음 |
웹 서버 액세스 제어 | 지원됨 | 지원됨 | 지원됨 |
웹 서버 다시 시작 | 지원됨 | 지원됨 | 지원됨 |
웹 서버 플러그인 | DAG 직렬화가 사용 중지된 Airflow 1 환경에서 지원됩니다. | 지원됨 | 지원됨. 플러그인은 필요에 따라 사용 중지 및 사용 설정할 수 있습니다. |
커스텀 플러그인 설치 | 지원됨 | 지원됨 | 지원됨 |
유지보수 작업 | 모든 태스크가 영향을 받을 수 있습니다. | 실행 시간이 55분 미만인 태스크는 영향을 받지 않습니다. | 실행 시간이 55분 미만인 태스크는 영향을 받지 않습니다. |
스냅샷 저장 | Airflow 2.x 및 1.10.15 버전에 지원됨 | 지원됨 | 지원됨 |
스냅샷 로드 | 지원되지 않음 | 지원됨 | 지원됨 |
예약된 스냅샷 | 지원되지 않음 | 지원됨 | 지원됨 |
커스텀 환경의 버킷 | 지원되지 않음 | 지원됨 | 지원됨 |
Cloud Logging에만 Airflow 태스크 로그 저장 | 지원되지 않음 | 지원됨 | 지원됨 |
데이터 계보 통합 | 지원되지 않음 | 지원됨 | 지원됨 |
Cloud Composer 이미지
Apache Airflow를 실행하기 위해 Cloud Composer는 Airflow 출시 버전과 다른 일반 바이너리 및 Python 라이브러리를 묶어 놓은 Docker 이미지를 빌드합니다.
Cloud Composer 이미지는 Cloud Composer와 관련된 Airflow 수정사항을 포함하며 업스트림 Airflow 코드베이스에는 부적합합니다. 각 Cloud Composer 이미지에는 Cloud Composer 관련 Airflow 변경사항과 사전 설치된 패키지가 포함되어 있습니다.
Google은 주기적으로 새로운 Cloud Composer 이미지를 출시합니다.
Cloud Composer 3의 이미지에는 지원되는 Airflow 버전의 새 빌드가 포함됩니다. 사용할 Airflow 버전과 빌드를 선택할 수 있습니다. 환경에 Cloud Composer 개선사항이 자동으로 적용됩니다.
Cloud Composer 2 및 Cloud Composer 1의 이미지에는 Cloud Composer 개선사항 및 지원되는 Airflow 버전의 새 빌드가 포함됩니다. Cloud Composer 개선사항을 사용하려면 환경을 Cloud Composer의 최신 버전으로 업그레이드하세요.
버전 지원 중단 및 지원
Composer 3
Google은 최초 출시 후 일정 기간 동안 Airflow 버전을 지원합니다.
Airflow의 마이너 버전이 Cloud Composer 3에서 사용 가능한 최신 버전인 경우 이 마이너 버전이 포함된 모든 Airflow 빌드가 완전히 지원됩니다. 정확한 지원 종료일은 Cloud Composer 3에서 Airflow의 새 마이너 버전이 제공될 때 결정됩니다.
Cloud Composer 3에서 Airflow의 새로운 마이너 버전이 제공되면 해당 날짜부터 이전 마이너 버전의 Airflow가 포함된 모든 빌드는 12개월 동안 지원됩니다. 동일한 마이너 버전의 Airflow가 포함된 빌드가 여러 개인 경우 모두에 동일한 전체 지원 종료일이 적용됩니다.
마이너 버전이 더 이상 완전히 지원되지 않으면 이 버전을 실행하는 환경도 지원되지 않으며 전적으로 사용자가 관리해야 합니다. 이러한 환경은 완전히 지원되는 Airflow 버전으로 업그레이드할 수 있습니다.
완전히 지원되는 모든 Airflow 빌드로 환경을 만들 수 있습니다.
더 이상 지원되지 않는 Airflow 빌드가 포함된 환경을 계속 사용할 수 있습니다. 환경은 계속 작동하며 계속 사용할 수 있으며 완전히 지원되는 버전으로 업그레이드할 수도 있습니다.
Composer 2
Google은 버전 출시 후 일정 기간 동안 Cloud Composer 2 버전을 지원합니다. 이 기간 동안은 이러한 버전을 사용하는 Cloud Composer 2 환경이 완전하게 지원됩니다.
Cloud Composer 2 버전 지원은 다음과 같이 정의됩니다.
출시일로부터 0~12개월: 이러한 버전을 실행하는 Cloud Composer 2 환경이 완전하게 지원됩니다.
출시일로부터 12개월 이상: 이러한 버전을 실행하는 Cloud Composer 2 환경이 지원되지 않습니다.
더 이상 지원되지 않는 날짜 이후에도 Cloud Composer 버전을 계속 사용할 수 있습니다. 예를 들어 지원 기간이 지난 Cloud Composer 버전을 기반으로 하는 환경도 계속 작동하며 이를 계속 사용할 수 있습니다. 이 경우 해당 환경을 지원되는 버전으로 업그레이드하는 것이 좋습니다.
Composer 1
새로운 Cloud Composer 1 버전은 2023년 3월 말에 출시되었습니다. 출시된 모든 Cloud Composer 1 버전은 Cloud Composer 2와 동일한 버전 지원 중단 정책을 따르며 이에 따라 지원됩니다.
2024년 3월 25일에 Cloud Composer 1이 유지보수 후 모드로 전환되었습니다. Google은 Airflow의 새 버전, 버그 수정, 보안 업데이트를 비롯한 Cloud Composer 1 추가 업데이트를 출시하지 않습니다. Cloud Composer 2로 마이그레이션하는 것이 좋습니다.
Airflow 버전 지원
Airflow는 의미론적인 소프트웨어 버전 관리 스키마를 따릅니다. Airflow 버전마다 주, 부, 패치 버전이 있습니다.
Composer 3
Cloud Composer 3에서는 시간이 지남에 따라 새로운 Airflow 버전과 빌드가 제공됩니다.
환경은 이전의 모든 Airflow 버전 및 빌드로 작동할 수 있으며 인프라 구성요소의 업데이트를 자동으로 수신합니다. 각 버전 및 빌드는 버전 지원 중단 및 지원에 설명된 대로 지원되며, Airflow 버전을 이후 버전 또는 빌드로 업그레이드할 수 있습니다.
Composer 2
각 Cloud Composer 버전에서 지원되는 Airflow 버전 목록은 Cloud Composer 버전 목록을 참조하세요.
Cloud Composer 2는 출시 버전마다 Airflow 2의 두 가지 부 버전을 지원합니다.
예를 들어 Cloud Composer 2.4.0은 Airflow 2.4.* 및 Airflow 2.5.*를 지원합니다.
Cloud Composer는 Airflow 2의 각 부 버전에 대해 하나의 패치 버전을 지원합니다.
예를 들어 Airflow 2.4.*의 경우 Cloud Composer는 Airflow 2.4.3를 지원합니다.
Cloud Composer에서 Airflow 2의 새 패치 버전이 제공되면 해당 출시 버전에는 Airflow의 동일한 부 버전에 사용할 수 있는 Airflow 2의 패치 버전 두 가지가 포함됩니다. 이후에 이전 패치 버전이 다음 출시 버전 중 하나에서 삭제됩니다.
예를 들어 Cloud Composer 2.3.4는 Airflow 2.5.1 및 Airflow 2.5.3를 둘 다 지원합니다.
Cloud Composer는 Cloud Composer 출시 버전 간에 일부 Airflow 패치 버전을 건너뛸 수 있습니다. 또한 Airflow의 특정 패치 버전에 함수, 품질 또는 성능 문제가 있으면 Cloud Composer에서도 이 버전을 건너뛸 수 있습니다.
예를 들어 Airflow 2.1.3은 건너뛰고 Airflow 2.1.4가 제공됩니다.
안정적인 Airflow 버전을 실행하는 Cloud Composer 출시 버전에는 이후 Airflow 버전에서 백포트된 Airflow 업데이트가 포함될 수 있습니다.
Composer 1
Cloud Composer 1에서 지원되는 최신 버전의 Airflow는 Airflow 2.4.3입니다.
Cloud Composer 1만 Airflow 1의 최신 출시 버전인 Airflow 1.10.15를 지원합니다.
Cloud Composer 버전 스키마
Composer 3
Cloud Composer 3 버전 관리 스키마는 Airflow 버전 및 빌드를 캡처합니다.
composer-3-airflow-x.y.z-build.t
각 항목의 의미는 다음과 같습니다.
composer-3
은 Cloud Composer의 버전입니다.airflow-x.y.z.build.t
는 Airflow 버전 및 빌드입니다. Cloud Composer 3에서 동일한 Airflow 버전이 출시될 때마다 빌드 번호가 더 높습니다. 빌드 번호는 Airflow 오픈소스 프로젝트가 아닌 Cloud Composer에서 정의합니다.
Composer 2
Cloud Composer 2 이미지 버전 관리 스키마는 Cloud Composer 및 Airflow 버전을 캡처합니다.
composer-2.b.c-airflow-x.y.z
각 항목의 의미는 다음과 같습니다.
composer-2.b.c
는 Cloud Composer 관리형 맞춤설정 버전입니다.airflow-x.y.z
는 Airflow 출시 버전입니다.
Composer 1
Cloud Composer 1 이미지 버전 관리 스키마는 Cloud Composer 및 Airflow 버전을 캡처합니다.
composer-1.b.c-airflow-x.y.z
각 항목의 의미는 다음과 같습니다.
composer-1.b.c
는 Cloud Composer 관리형 맞춤설정 버전입니다.airflow-x.y.z
는 Airflow 출시 버전입니다.
버전 별칭
버전 별칭은 다음과 같이 작동합니다.
Cloud Composer는 환경을 만들 때 버전 별칭을 전체 형식으로 확인합니다.
- Cloud Composer 3에서 모든 버전 별칭은
composer-3-airflow-x.y.z-build.t
가 됩니다. - Cloud Composer 2 및 Cloud Composer 1에서 모든 버전 별칭은
composer-a.b.c-airflow-x.y.z
가 됩니다.
- Cloud Composer 3에서 모든 버전 별칭은
Cloud Composer 3에서
composer-3-airflow-x.y
와 같은 버전 별칭을 사용하면 환경의 Airflow 버전과 빌드가 자동으로 업그레이드되지 않습니다. 환경은 업그레이드할 때까지 동일한 Airflow 빌드 및 버전으로 유지됩니다. 환경은 평소와 같이 자동 인프라 업그레이드를 계속 받습니다.Cloud Composer 2 및 Cloud Composer 1에서
composer-a-airflow-x.y.z
와 같은 버전 별칭을 사용하면 환경에 대한 자동 업그레이드가 제공되지 않습니다. 환경은 업그레이드할 때까지 동일한 Cloud Composer 및 Airflow 버전으로 유지됩니다.
Cloud Composer 3 버전 별칭
Cloud Composer 3에서는 다음과 같은 버전 별칭을 지원합니다.
별칭 | Airflow 버전 |
---|---|
composer-3-airflow-2 |
Airflow 2의 최신 버전 및 빌드 |
composer-3-airflow-x.y |
x.y 메이저 버전과 마이너 버전 내 Airflow의 최신 버전 및 빌드 |
composer-3-airflow-x.y.z |
지정된 Airflow 버전의 최신 빌드 |
Cloud Composer 2 버전 별칭
Cloud Composer 2에서는 다음과 같은 버전 별칭을 지원합니다.
별칭 | Cloud Composer 버전 | Airflow 버전 |
---|---|---|
composer-2-airflow-2 |
Cloud Composer 2 최신 버전 | Airflow 2 최신 버전 |
composer-2-airflow-x.y |
Cloud Composer 2 최신 버전 | x.y 주 버전과 부 버전 내 최신 버전의 Airflow |
composer-2-airflow-x.y.z |
Cloud Composer 2 최신 버전 | 지정된 Airflow 버전 |
composer-2.b.c-airflow-x.y |
Cloud Composer 2의 지정된 버전 | x.y 주 버전과 부 버전 내에서 사용 가능한 최신 버전의 Airflow |
Cloud Composer 1 버전 별칭
Cloud Composer 1에서는 다음과 같은 버전 별칭을 지원합니다.
별칭 | Cloud Composer 버전 | Airflow 버전 |
---|---|---|
composer-1-airflow-2 |
Cloud Composer 1 최신 버전 | Airflow 2 최신 버전 |
composer-1-airflow-1 |
Cloud Composer 1 최신 버전 | Airflow 1 최신 버전 |
composer-1-airflow-x.y |
Cloud Composer 1 최신 버전 | x.y 주 버전과 부 버전 내 최신 버전의 Airflow |
composer-1-airflow-x.y.z |
Cloud Composer 1 최신 버전 | 지정된 Airflow 버전 |
composer-1.b.c-airflow-x.y |
Cloud Composer 1의 지정된 버전 | x.y 주 버전과 부 버전 내에서 사용 가능한 최신 버전의 Airflow |
다음 버전 별칭은 Cloud Composer 2를 가리킵니다. 계속 사용할 수 있지만 Cloud Composer 버전의 별칭으로 전환하는 것이 좋습니다.
composer-latest-airflow-x.y
는composer-2-airflow-x.y
와 같습니다.composer-latest-airflow-x.y.z
는composer-2-airflow-x.y.z
와 같습니다.
Google Cloud CLI의 버전 인수
Google Cloud CLI를 사용하여 Cloud Composer 환경을 만들거나 업그레이드할 때는 Cloud Composer 및 Airflow 버전을 지정할 수 있습니다.
Composer 3
--image-version
인수는composer-3-airflow-x.y.z-build.t
형식으로 Airflow 버전 및 빌드를 지정합니다. Google Cloud CLI에서 전체 형식으로 확인하는 버전 별칭을 사용할 수 있습니다.--airflow-version
은 다음 형식으로 Airflow 버전을 지정합니다.x.y.z
형식은 지정된 버전의 Airflow의 최신 빌드에 사용됩니다. 이 형식은composer-3-airflow-x.y.z
버전 별칭과 동일합니다.x.y
형식은x.y
메이저 버전 및 마이너 버전 내에서 사용 가능한 Airflow의 최신 빌드에 사용됩니다. 이 형식은composer-3-airflow-x.y
버전 별칭과 동일합니다.x.y.z-build.t
는 지정된 Airflow 버전 및 빌드입니다. 이 형식은composer-3-airflow-x.y.z-build.t
와 같습니다.
Composer 2
--image-version
인수는 Cloud Composer 2 및 Airflow 버전을 지정합니다.composer-a.b.c-airflow-x.y.z
형식은 지정된 버전의 Cloud Composer 및 Airflow를 사용하여 환경을 만듭니다.- 버전 별칭은 먼저
composer-a.b.c-airflow-x.y.z
형식으로 확인된 후 지정된 버전의 Cloud Composer 2 및 Airflow를 사용하여 환경을 만듭니다.
--airflow-version
은 다음 형식으로 Airflow 버전을 지정합니다.x.y.z
형식은 Cloud Composer 2 최신 버전과 Airflow 지정 버전에 사용됩니다. 이 형식은composer-2-airflow-x.y.z
버전 별칭과 동일합니다.x.y
형식은 Cloud Composer 2 최신 버전과x.y
주 버전 및 부 버전 내에서 사용 가능한 Airflow 최신 버전에 사용됩니다. 이 형식은composer-2-airflow-x.y
버전 별칭과 동일합니다.
Composer 1
--image-version
인수는 Cloud Composer 1 및 Airflow 버전을 지정합니다.composer-a.b.c-airflow-x.y.z
형식은 지정된 버전의 Cloud Composer 및 Airflow를 사용하여 환경을 만듭니다.- 버전 별칭은 먼저
composer-a.b.c-airflow-x.y.z
형식으로 확인된 후 지정된 버전의 Cloud Composer 1 및 Airflow를 사용하여 환경을 만듭니다.
--airflow-version
은 다음 형식으로 Airflow 버전을 지정합니다.x.y.z
형식은 Cloud Composer 1 최신 버전과 Airflow 지정 버전에 사용됩니다. 이 형식은composer-1-airflow-x.y.z
버전 별칭과 동일합니다.x.y
형식은 최신 버전의 Cloud Composer 1과x.y
주 버전과 부 버전 내에 사용 가능한 최신 버전의 Airflow에 사용됩니다. 이 형식은composer-1-airflow-x.y
버전 별칭과 동일합니다.