애플리케이션을 새 Apache Flink 버전으로 업그레이드하세요. - Managed Service for Apache Flink

Amazon Managed Service for Apache Flink는 이전에 Amazon Kinesis Data Analytics for Apache Flink로 알려졌습니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

애플리케이션을 새 Apache Flink 버전으로 업그레이드하세요.

액션을 사용하여 Flink 애플리케이션을 업그레이드할 수 있습니다. UpdateApplication

여러 가지 UpdateApplication API 방법으로 를 호출할 수 있습니다.

  • 에서 기존 구성 워크플로를 사용하십시오 AWS Management Console.

    • 의 앱 페이지로 이동합니다 AWS Management Console.

    • 구성을 선택합니다.

    • 새 런타임과 시작하려는 스냅샷 (구성 복원이라고도 함) 을 선택합니다. 최신 설정을 복원 구성으로 사용하여 최신 스냅샷에서 앱을 시작합니다. Amazon S3에서 새로 업그레이드된 애플리케이션 JAR /zip을 가리키십시오.

  • 애플리케이션 AWS CLI 업데이트 작업을 사용하십시오.

  • () 를 사용하십시오 AWS CloudFormation . CFN

    • RuntimeEnvironment필드를 업데이트하세요. 이전에는 애플리케이션을 AWS CloudFormation 삭제하고 새 애플리케이션을 생성하여 스냅샷과 기타 앱 기록이 손실되었습니다. 이제 애플리케이션이 삭제되지 않고 현재 RuntimeEnvironment 위치에서 AWS CloudFormation 업데이트됩니다.

  • 를 사용하십시오 AWS SDK.

    • 선택한 프로그래밍 언어는 SDK 설명서를 참조하십시오. 을 참조하십시오 UpdateApplication.

애플리케이션이 RUNNING 상태에 있거나 애플리케이션이 중지된 상태에서 업그레이드를 수행할 수 있습니다. READY Apache Flink용 Amazon 관리형 서비스는 원본 런타임 버전과 대상 런타임 버전 간의 호환성을 검증하여 확인합니다. 이 호환성 검사는 RUNNING 주 내에서 수행할 때 실행되고, 해당 주에 UpdateApplication있을 때 업그레이드하는 StartApplication경우 다음 번에 실행됩니다. READY

다음 예제는 를 사용하여 미국 동부 (버지니아 북부) 에서 Flink 1.18이라는 RUNNING UpgradeTest 주의 앱을 AWS CLI 업그레이드하고 최신 스냅샷에서 업그레이드된 앱을 시작하는 방법을 보여줍니다.

aws --region us-east-1 kinesisanalyticsv2 update-application \ --application-name UpgradeTest --runtime-environment-update "FLINK-1_18" \ --application-configuration-update '{"ApplicationCodeConfigurationUpdate": '\ '{"CodeContentUpdate": {"S3ContentLocationUpdate": '\ '{"FileKeyUpdate": "flink_1_18_app.jar"}}}}' \ --run-configuration-update '{"ApplicationRestoreConfiguration": '\ '{"ApplicationRestoreType": "RESTORE_FROM_LATEST_SNAPSHOT"}}' \ --current-application-version-id ${current_application_version}
  • 서비스 스냅샷을 활성화하고 최신 스냅샷에서 애플리케이션을 계속 진행하려는 경우, Amazon Managed Service for Apache Flink는 현재 RUNNING 애플리케이션의 런타임이 선택한 대상 런타임과 호환되는지 확인합니다.

  • 대상 런타임을 계속할 스냅샷을 지정한 경우 Apache Flink용 Amazon Managed Service는 대상 런타임이 지정된 스냅샷과 호환되는지 확인합니다. 호환성 검사에 실패하면 업데이트 요청이 거부되고 애플리케이션은 변경되지 않은 상태로 유지됩니다. RUNNING

  • 스냅샷 없이 애플리케이션을 시작하기로 선택한 경우 Apache Flink용 Amazon Managed Service는 호환성 검사를 실행하지 않습니다.

  • 업그레이드된 애플리케이션이 실패하거나 전이 상태에서 멈추는 경우 애플리케이션 업그레이드 롤백 섹션의 지침에 따라 정상 UPDATING 상태로 돌아가십시오.

실행 중인 상태 응용 프로그램의 프로세스 흐름

다음 다이어그램은 실행 중에 애플리케이션을 업그레이드하기 위한 권장 워크플로를 나타냅니다. 애플리케이션이 스테이트풀 상태이고 스냅샷을 활성화했다고 가정합니다. 이 워크플로의 경우 업데이트 시 Amazon Managed Service for Apache Flink에서 업데이트하기 전에 자동으로 촬영한 최신 스냅샷에서 애플리케이션을 복원합니다.

다음 예제는 를 사용하여 미국 동부 (버지니아 북부) 에서 Flink 1.18이라는 READY 주의 앱을 UpgradeTest 업그레이드하는 방법을 보여줍니다. AWS CLI애플리케이션이 실행되고 있지 않기 때문에 앱을 시작하기 위한 스냅샷이 지정되어 있지 않습니다. 애플리케이션 시작 요청을 실행할 때 스냅샷을 지정할 수 있습니다.

aws --region us-east-1 kinesisanalyticsv2 update-application \ --application-name UpgradeTest --runtime-environment-update "FLINK-1_18" \ --application-configuration-update '{"ApplicationCodeConfigurationUpdate": '\ '{"CodeContentUpdate": {"S3ContentLocationUpdate": '\ '{"FileKeyUpdate": "flink_1_18_app.jar"}}}}' \ --current-application-version-id ${current_application_version}
  • READY상태에 있는 애플리케이션의 런타임을 모든 Flink 버전으로 업데이트할 수 있습니다. Apache Flink용 Amazon 관리형 서비스는 애플리케이션을 시작할 때까지 검사를 실행하지 않습니다.

  • Apache Flink용 Amazon 관리형 서비스는 앱을 시작하기 위해 선택한 스냅샷에 대해서만 호환성 검사를 실행합니다. 이는 Flink 호환성 표에 따른 기본 호환성 검사입니다. 스냅샷을 촬영하는 데 사용한 Flink 버전과 대상 Flink 버전만 확인합니다. 선택한 스냅샷의 Flink 런타임이 앱의 새 런타임과 호환되지 않는 경우 시작 요청이 거부될 수 있습니다.

준비 상태 애플리케이션의 프로세스 흐름

다음 다이어그램은 준비 상태에서 애플리케이션을 업그레이드하기 위한 권장 워크플로를 나타냅니다. 애플리케이션이 스테이트풀 상태이고 스냅샷을 활성화했다고 가정합니다. 이 워크플로의 경우 업데이트 시 애플리케이션이 중지되었을 때 Amazon Managed Service for Apache Flink에서 자동으로 촬영한 최신 스냅샷에서 애플리케이션을 복원합니다.