본문 바로가기
CSP (Cloud Service Provider)/GCP

Cloud Composer 환경 업그레이드

by BTC_yljo 2022. 8. 19.

안녕하세요~ Hallo 팀입니다. 오늘은 Cloud Composer 환경 업그레이드에 대해 알아보겠습니다.

Airflow 또는 Cloud Composer 버전을 변경하면 환경이 업그레이드됩니다.

업그레이드해도 환경 버킷의 URL 또는 Airflow 웹 서버와 같은 사용자 환경의 리소스에 연결하는 방법은 변경되지 않습니다.

업그레이드 시 Cloud Composer는 다음을 수행합니다.

  1. Cloud Composer 이미지의 새 버전을 사용하여 환경 성요소를 다시 배포합니다.
  2. 업그레이드 전에 환경에 커스텀 PyPI 패키지 또는 Airflow 구성 옵션 재정의와 같은 Airflow 구성이 있었던 경우 변경사항을 적용합니다.
  3. Airflow airflow_db 연결이 새 Cloud SQL 데이터베이스를 가리키도록 업데이트합니다.

 

주의사항! 

호환되지 않는 변경사항으로 인해 DAG가 더 이상 작동하지 않을 수 있으므로, 업그레이드하기 전에 Airflow와 Cloud Composer의 현재 버전과 업그레이드할 버전의 차이점을 알고 있어야 합니다.

 

  • 업그레이드는 현재 미리보기 상태입니다. 프로덕션 환경에서는 이 기능을 주의해서 사용해야 합니다.
  • 이전 버전의 Cloud Composer 또는 Airflow로 다운그레이드할 수는 없습니다.
  • Cloud Composer 버전, Airflow 버전 또는 둘 다를 동시에 업그레이드할 수 있습니다.
  • 동일한 주 버전 내 최신 Cloud Composer 버전으로만 업그레이드할 수 있습니다.
  • 다른 주 버전의 Cloud Composer 또는 Airflow로 업그레이드할 수 없습니다. 환경 간에 DAG 및 구성을 수동으로 전송할 수 있습니다.
  • 환경 업그레이드 작업을 트리거할 수 있는 역할이 필요합니다. 또한 해당 환경의 서비스 계정에 업그레이드 작업을 수행하는 데 충분한 권한이 있는 역할이 있어야 합니다. 
  • 업그레이드하려는 버전의 PyPI 패키지 목록은 Cloud Composer 버전 목록을 참조하세요.
  • Airflow 데이터베이스에 16GB가 넘는 데이터가 포함된 경우 환경을 업그레이드할 수 없습니다. Airflow 데이터베이스 크기가 16GB를 초과하면 업그레이드 중 경고가 표시됩니다. 이 경우 데이터베이스 유지보수를 수행하여 데이터베이스 크기를 줄입니다.
  • 업그레이드 대상 이미지 버전은 사용자 환경의 현재 Python 버전을 지원해야 합니다.

환경이 최신 상태인지 확인

Cloud Composer는 환경 이미지의 지원 종료 날짜가 다가올 때 경고를 표시합니다. 이러한 경고를 사용하여 해당 환경을 항상 전체 지원 기간으로 유지할 수 있습니다.

환경 세부정보 페이지에 지원 중단 메시지 표시

Cloud Composer는 해당 환경의 기초가 되는 Cloud Composer 이미지 버전을 추적합니다. 이미지의 지원 종료 날짜가 다가오면 환경 목록 및 환경 세부정보 페이지에 경고가 표시될 수 있습니다.

 

이미지 버전은 아래와 같이 구분됩니다.

  • 사용 가능한 최신 버전. 환경 이미지가 완전히 지원됩니다.
  • 새 버전 사용 가능. 해당 환경 이미지가 완전히 지원되며, 이후 버전으로 업그레이드할 수 있습니다.
  • 이 버전의 지원이 ...에 만료됨 환경 이미지의 지원 기간이 곧 만료됩니다.
  • 이 버전은 ...부터 지원되지 않음 환경의 전체 지원 기간이 지났습니다. 전체 지원 기간이 지난 후에도 항상 이후 버전으로 환경을 업그레이드할 수 있습니다.

 

그러면 이제 본격적으로 Compoer 업그레이드하는 방법을 알아보도록 하겠습니다.

1. 사용 가능한 업그레이드 보기

업그레이드할 수 있는 Cloud Composer 버전을 보려면 다음 안내를 따르세요.

gcloud beta composer environments list-upgrades example-environment \
  --location us-central1

 

2. 업그레이드 전 PyPI 패키지 충돌 확인

환경에 설치된 PyPI 패키지가 새 Cloud Composer 이미지의 사전 설치된 패키지와 충돌하는지 확인할 수 있습니다.

검사가 성공하면 현재 및 지정된 버전 간에 PyPI 패키지 종속 항목 충돌이 없는 것입니다. 하지만 다른 이유로 인해 업그레이드 작업이 실패할 수도 있습니다.

환경에 대한 업그레이드 확인을 실행하려면 업그레이드하려는 Cloud Composer 이미지 버전으로 environments check-upgrade 명령어를 실행합니다.

 
gcloud beta composer environments check-upgrade example-environment \
  --location us-central1 \
  --image-version composer-1.18.12-airflow-1.10.15

 

 

 --async 인수를 사용하여 비동기 호출을 수행하고 gcloud composer operations describe 명령어로 결과를 확인할 수도 있습니다.

 

3. 환경 업그레이드

업그레이드하기 전에 모든 DAG를 일시중지하고 진행 중인 태스크가 완료될 때까지 기다려야 합니다.
gcloud beta composer environments update
  example-environment \
  --location us-central1 \
  --image-version composer-1.18.12-airflow-1.10.15

 

지금까지 Cloud Composer 환경 업그레이드에 대해 알아보았습니다.

 

 

출처

https://cloud.google.com/composer/docs/how-to/managing/upgrading?hl=ko 

 

환경 업그레이드  |  Cloud Composer  |  Google Cloud

의견 보내기 환경 업그레이드 Cloud Composer 1 | Cloud Composer 2 미리보기 :Upgrading environments 이 기능에는 Google Cloud 서비스 약관의 GA 출시 전 제공 서비스 약관이 적용됩니다. GA 이전 기능은 지원이

cloud.google.com

 

댓글