다음을 통해 공유


Azure Functions에서 언어 스택 버전 업데이트

Azure Functions에서 언어 스택에 대한 지원은 특정 버전으로 제한됩니다. 새 버전을 사용할 수 있게 되면 새로운 기능을 활용하도록 함수 앱을 업데이트할 수 있습니다. Functions의 지원은 이전 버전에 대해서도 종료될 수 있으며 일반적으로 커뮤니티 지원 종료 타임라인에 맞춰집니다. 자세한 내용은 언어 런타임 지원 정책을 참조하세요. 지원되는 다양한 언어 버전은 런타임 버전별 언어를 참조하세요.

함수 앱이 계속 지원을 받을 수 있도록 하려면 이 문서의 지침에 따라 사용 가능한 최신 버전으로 업데이트합니다. 함수 앱을 업데이트하는 방법은 다음과 같은 몇 가지 요인에 따라 달라집니다.

  • 함수 앱을 개발하는 데 사용하는 언어입니다. 이 문서의 맨 위에 있는 프로그래밍 언어를 선택해야 합니다.
  • 함수 앱이 Azure에서 실행되는 운영 체제: Windows 또는 Linux.
  • 호스팅 계획.

참고

이 문서에서는 격리된 작업자 모델을 사용하는 함수 앱의 .NET 버전을 업데이트하는 방법을 보여줍니다. 함수 앱이 이전 버전의 .NET에서 실행되고 In Process 모델을 사용하는 경우 다음 옵션을 고려합니다.

필수 조건

  • 활성 구독이 있는 Azure 계정. 체험 계정 만들기
  • 다음 Functions 계획 중 하나에서 호스트되는 함수 앱입니다.
    • Premium
    • Dedicated
    • Consumption

함수 앱 준비

Azure에서 함수 앱에 대한 스택 구성을 업데이트하기 전에 다음 섹션의 작업을 완료합니다.

함수 앱을 로컬로 확인

새 대상 버전에서 함수 앱 코드를 로컬로 테스트하고 확인합니다.

다음 단계를 사용하여 로컬 컴퓨터에서 프로젝트를 업데이트합니다.

  1. .NET SDK의 대상 버전이 설치되어 있는지 확인합니다.

    미리 보기 버전을 대상으로 하는 경우 버전이 지원되는지 확인하려면 미리 보기 .NET 버전에 대한 Functions 지침을 참조하세요. .NET 미리 보기를 사용하려면 더 많은 단계가 필요할 수 있습니다.

  2. 최신 버전의 Microsoft.Azure.Functions.WorkerMicrosoft.Azure.Functions.Worker.Sdk에 대한 참조를 업데이트합니다.

  3. 프로젝트의 대상 프레임워크를 새 버전으로 업데이트합니다. C# 프로젝트의 경우 <TargetFramework> 파일의 요소를 업데이트해야 합니다. 버전에 대한 자세한 내용은 대상 프레임워크를 참조하세요.

    프로젝트의 대상 프레임워크를 변경하려면 프로젝트 코드 외부의 툴체인 부분을 변경해야 할 수도 있습니다. 예를 들어 Visual Studio Code에서 사용자 설정 또는 프로젝트의 azureFunctions.deploySubpath 파일에서 확장 설정을 업데이트해야 할 수도 있습니다. 빌드 단계 또는 CI/CD(연속 통합 및 지속적인 업데이트) 파이프라인의 일부로 프로젝트 코드 외부에 있는 프레임워크 버전에 대한 종속성을 확인합니다.

  4. 새 .NET 버전에 필요한 프로젝트 코드를 업데이트합니다. 특정 정보는 버전의 릴리스 정보를 확인합니다. .NET 업그레이드 도우미를 사용하여 주 버전의 변경 내용에 대한 응답으로 코드를 업데이트할 수도 있습니다.

변경한 후 프로젝트를 다시 빌드하고 테스트하여 함수 앱이 예상대로 실행되는지 확인합니다.

최신 Functions 런타임으로 이동

함수 앱이 최신 버전의 Functions 런타임(버전 4.x)에서 실행되는지 확인합니다. Azure Portal에서 또는 Azure CLI를 사용하여 런타임 버전을 확인할 수 있습니다.

다음 단계를 사용하여 Functions 런타임 버전을 확인합니다.

  1. Azure Portal에서 함수 앱을 찾아 선택합니다. 측면 메뉴에서 설정>구성을 선택합니다.

  2. 함수 런타임 설정 탭으로 이동하여 런타임 버전 값을 확인합니다. 함수 앱은 Functions 런타임(~4)의 버전 4.x에서 실행되어야 합니다.

함수 앱을 버전 4.x로 업데이트해야 하는 경우 Azure Functions 버전 1.x에서 버전 4.x(으)로 앱 마이그레이션 또는 Azure Functions 버전 3.x에서 버전 4.x(으)로 앱 마이그레이션을 참조하세요. FUNCTIONS_EXTENSION_VERSION 설정을 직접 변경하지 말고 해당 문서의 지침을 따르십시오.

함수 앱 업데이트 게시

새 버전에서 올바르게 실행되도록 함수 앱을 업데이트한 경우 함수 앱에 대한 스택 구성을 업데이트하기 전에 함수 앱 업데이트를 게시합니다.

업데이트 프로세스를 간소화하고, 함수 앱의 가동 중지 시간을 최소화하고, 롤백을 위한 잠재적 버전을 제공하려면 업데이트된 함수 앱을 스테이징 슬롯에 게시해야 합니다. 자세한 내용은 Azure Functions 배포 슬롯을 참조하세요.

업데이트된 함수 앱을 스테이징 슬롯에 게시하는 경우 이 문서의 나머지 부분에 있는 슬롯별 업데이트 지침을 따라야 합니다. 나중에 업데이트된 스테이징 슬롯을 프로덕션으로 교환합니다.

스택 구성 업데이트

스택 구성을 업데이트하는 방법은 Azure에서 함수 앱이 Windows에서 실행되는지 아니면 Linux에서 실행되는지에 따라 달라집니다.

스테이징 슬롯을 사용하는 경우 업데이트를 올바른 슬롯으로 대상으로 지정해야 합니다.

다음 단계를 사용하여 Java 버전을 업데이트합니다.

  1. Azure Portal에서 함수 앱을 찾아 선택합니다. 측면 메뉴에서 설정>구성을 선택합니다. 스테이징 슬롯이 있는 경우 특정 슬롯을 선택합니다.

  2. 일반 설정 탭에서 Java 버전을 원하는 버전으로 업데이트합니다.

  3. 저장을 선택합니다. 다시 시작에 대한 알림이 표시되면 계속을 선택합니다.

다음 단계를 사용하여 .NET 버전을 업데이트합니다.

  1. Azure Portal에서 함수 앱을 찾아 선택합니다. 측면 메뉴에서 설정>구성을 선택합니다. 스테이징 슬롯이 있는 경우 특정 슬롯을 선택합니다.

  2. 일반 설정 탭에서 .NET 버전을 원하는 버전으로 업데이트합니다.

  3. 저장을 선택합니다. 다시 시작에 대한 알림이 표시되면 계속을 선택합니다.

다음 단계를 사용하여 Node.js 버전을 업데이트합니다.

  1. Azure Portal에서 함수 앱을 찾아 선택합니다. 측면 메뉴에서 설정>구성을 선택합니다. 스테이징 슬롯이 있는 경우 특정 슬롯을 선택합니다.

  2. 일반 설정 탭에서 Node.js 버전을 원하는 버전으로 업데이트합니다.

  3. 저장을 선택합니다. 다시 시작에 대한 알림이 표시되면 계속을 선택합니다. 이 변경은 WEBSITE_NODE_DEFAULT_VERSION 애플리케이션 설정을 업데이트합니다.

다음 단계를 사용하여 PowerShell 버전을 업데이트합니다.

  1. Azure Portal에서 함수 앱을 찾아 선택합니다. 측면 메뉴에서 설정>구성을 선택합니다. 스테이징 슬롯이 있는 경우 특정 슬롯을 선택합니다.

  2. 일반 설정 탭에서 PowerShell Core 버전을 원하는 버전으로 업데이트합니다.

  3. 저장을 선택합니다. 다시 시작에 대한 알림이 표시되면 계속을 선택합니다.

Python 앱은 Windows에서 지원되지 않습니다. 대신 Linux 탭으로 이동합니다.

버전을 업데이트한 후 함수 앱이 다시 시작됩니다.

슬롯 교환

스테이징 슬롯을 사용하여 코드 프로젝트를 배포하고 설정을 업데이트하는 경우 스테이징 슬롯을 프로덕션으로 전환합니다. 자세한 내용은 슬롯 교체를 참조하세요.