Lambda 런타임 버전 롤백
드물지만 새 런타임 버전이 기존 함수와 호환되지 않는 경우 해당 런타임 버전을 이전 버전으로 롤백할 수 있습니다. 이렇게 하면 애플리케이션이 계속 작동하고 중단을 최소화하여 최신 런타임 버전으로 돌아가기 전에 비호환성을 해결할 시간을 확보할 수 있습니다.
Lambda는 특정 런타임 버전을 사용할 수 있는 기간에 대한 시간 제한을 두지 않습니다. 하지만 최신 보안 패치, 성능 개선 사항 및 기능을 활용하려면 가능한 한 빨리 최신 런타임 버전으로 업데이트하는 것이 좋습니다. Lambda는 드물지만 런타임 업데이트 호환성 문제가 발생하는 경우를 대비하여 일시적인 문제 해결 수단으로만 이전 런타임 버전으로 롤백하는 옵션을 제공합니다. 이전 런타임 버전을 장기간 사용하는 함수는 결국 성능이 저하되거나 인증서 만료와 같은 문제가 발생하여 제대로 작동하지 않을 수 있습니다.
런타임 버전을 롤백하는 방법은 다음과 같습니다.
자세한 내용은 AWS 컴퓨팅 블로그에서 Introducing AWS Lambda runtime management controls(런타임 관리 제어 소개)
수동 런타임 업데이트 모드를 사용하여 런타임 버전 롤백
자동 런타임 버전 업데이트 모드를 사용하거나 $LATEST
런타임 버전을 사용하는 경우 수동 모드를 사용하여 런타임 버전을 롤백할 수 있습니다. 롤백하려는 함수 버전에 대해 런타임 버전 업데이트 모드를 수동으로 변경하고 이전 런타임 버전의 ARN을 지정합니다. 이전 런타임 버전의 ARN 찾는 방법에 대한 자세한 내용은 Lambda 런타임 버전 변경 확인 섹션을 참조하세요.
참고
함수의 $LATEST
버전이 수동 모드를 사용하도록 구성된 경우 함수가 사용하는 CPU 아키텍처 또는 런타임 버전을 변경할 수 없습니다. 이러한 변경 작업을 수행하려면 자동 또는 함수 업데이트 모드로 변경해야 합니다.
게시된 함수 버전을 사용하여 런타임 버전 롤백
게시된 함수 버전은 생성한 시점의 $LATEST
함수 코드 및 구성을 보여주는 변경 불가능한 스냅샷입니다. 자동 모드에서는 Lambda가 런타임 버전 롤아웃의 2단계에서 게시된 함수 버전의 런타임 버전을 자동으로 업데이트합니다. 함수 업데이트 모드에서는 Lambda가 게시된 함수 버전의 런타임 버전을 업데이트하지 않습니다.
따라서 함수 업데이트 모드를 사용하여 게시된 함수 버전은 함수 코드, 구성 및 런타임 버전의 정적 스냅샷을 생성합니다. 함수 버전과 함께 함수 업데이트 모드를 사용하면 런타임 업데이트를 배포와 동기화할 수 있습니다. 트래픽을 이전에 게시된 함수 버전으로 리디렉션하여 코드, 구성 및 런타임 버전의 롤백을 조정할 수도 있습니다. 이 접근 방식을 지속적 통합 및 지속적 전달(CI/CD)에 통합하여 런타임 업데이트가 호환되지 않는 드문 경우에 완전 자동 롤백을 실행할 수 있습니다. 이 방법을 사용할 때는 정기적으로 함수를 업데이트하고 새 함수 버전을 게시하여 최신 런타임 업데이트를 적용해야 합니다. 자세한 내용은 Lambda 런타임 관리를 위한 공동 책임 모델의 이해 단원을 참조하십시오.