체크포인트 시간이 초과되었습니다. - Managed Service for Apache Flink

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

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

체크포인트 시간이 초과되었습니다.

애플리케이션이 최적화되지 않았거나 제대로 프로비저닝되지 않은 경우 체크포인트가 실패할 수 있습니다. 이 섹션에서는 이러한 상태에 대한 증상과 문제 해결 조치들을 설명합니다.

증상

애플리케이션의 체크포인트에 장애가 발생하는 경우 numberOfFailedCheckpoints 값은 0보다 커집니다.

애플리케이션 오류와 같은 직접적인 장애나 애플리케이션 리소스 부족과 같은 일시적인 장애로 인해 체크포인트가 실패할 수 있습니다. 애플리케이션 로그와 지표에서 다음과 같은 증상이 있는지 확인하십시오.

  • 코드에 오류가 있습니다.

  • 애플리케이션의 종속 서비스에 액세스하는 중 오류가 발생했습니다.

  • 데이터를 직렬화하는 중 오류가 발생했습니다. 기본 시리얼라이저가 애플리케이션 데이터를 직렬화할 수 없는 경우 애플리케이션이 실패합니다. 애플리케이션에서 사용자 지정 직렬 변환기를 사용하는 방법에 대한 자세한 내용은 Apache Flink 설명서의 데이터 유형 및 직렬화를 참조하십시오.

  • 메모리 부족 오류

  • 다음 지표의 스큐 또는 꾸준한 증가

    • heapMemoryUtilization

    • oldGenerationGCTime

    • oldGenerationGCCount

    • lastCheckpointSize

    • lastCheckpointDuration

체크포인트 모니터링에 대한 자세한 내용은 Apache Flink 설명서의 체크포인트 모니터링을 참조하십시오.

원인 및 해결 방법

애플리케이션 로그 오류 메시지에는 직접 실패의 원인이 표시됩니다. 일시적 오류에는 다음과 같은 원인이 있을 수 있습니다:

  • 애플리케이션의 KPU 프로비저닝이 충분하지 않습니다. 애플리케이션 프로비저닝 향상에 대한 자세한 설명은 Apache Flink용 매니지드 서비스에서 애플리케이션 스케일링을 구현하십시오.을 참조하십시오.

  • 애플리케이션 상태 크기가 너무 큼. lastCheckpointSize지표를 사용하여 애플리케이션 상태 크기를 모니터링할 수 있습니다.

  • 애플리케이션의 상태 데이터는 여러 키 간에 불균등하게 분산됩니다. 애플리케이션에서 KeyBy 연산자를 사용하는 경우 들어오는 데이터가 여러 키 간에 균등하게 분배되는지 확인하십시오. 대부분의 데이터가 단일 키에 할당되면 병목 현상이 발생하여 오류가 발생합니다.

  • 애플리케이션에서 메모리 또는 가비지 컬렉션 역압을 경험하고 있음. 애플리케이션의 값이 급증하거나 꾸준히 증가하는 값이 있는지 애플리케이션의 heapMemoryUtilization, oldGenerationGCTimeoldGenerationGCCount을 모니터링하세요.