.NET Core 및 .NET 5의 릴리스와 지원Releases and support for .NET Core and .NET 5

Microsoft는 .NET 5.0(.NET Core 포함) 이상 버전의 주 버전, 부 버전, 서비스 업데이트(패치)를 제공합니다.Microsoft ships major releases, minor releases, and servicing updates (patches) for .NET 5.0 (and .NET Core) and later versions. 이 문서에서는 릴리스 종류, 서비스 업데이트, SDK 기능 밴드, 지원 기간, 지원 옵션 등을 설명합니다.This article explains release types, servicing updates, SDK feature bands, support periods, and support options.

릴리스 종류Release types

각 릴리스 종류에 관한 정보는 버전 번호에 major.minor.patch 형식으로 인코딩됩니다.Information about the type of each release is encoded in the version number in the form major.minor.patch.

예를 들면 다음과 같습니다.For example:

  • .NET Core 3.0 및 NET 5.0은 주 버전입니다..NET Core 3.0 and NET 5.0 are major releases.
  • .NET Core 3.1은 .NET Core 3.0 주 버전 이후의 첫 번째 부 버전입니다..NET Core 3.1 is the first minor release after the .NET Core 3.0 major release.
  • .NET Core 3.1.7은 .NET Core 3.1의 7번째 패치입니다..NET Core 3.1.7 is the seventh patch for .NET Core 3.1.

주 버전Major releases

주 버전에는 새로운 기능, 새 공용 API 노출 영역, 버그 수정이 포함됩니다.Major releases include new features, new public API surface area, and bug fixes. .NET Core 3.0, .NET 5.0 등을 예로 들 수 있습니다.Examples include .NET Core 3.0 and .NET 5.0. 변경 내용의 특성으로 인해 해당 릴리스에는 호환성이 손상되는 변경이 포함될 것으로 예상됩니다.Due to the nature of the changes, these releases are expected to have breaking changes. 주 버전은 이전 주 버전과 나란히 설치됩니다.Major releases install side by side with previous major releases.

부 버전Minor releases

부 버전에도 새로운 기능, 공용 API 노출 영역, 버그 픽스가 포함되며 호환성이 손상되는 변경도 포함될 수 있습니다.Minor releases also include new features, public API surface area, and bug fixes, and may also have breaking changes. .NET Core 2.1, .NET Core 3.1 등을 예로 들 수 있습니다.Examples include .NET Core 2.1 and .NET Core 3.1. 주 버전과 차이점은 변경의 크기가 더 작다는 것입니다.The difference between these and major releases is that the magnitude of the changes is smaller. 애플리케이션을 .NET Core 3.0에서 3.1로 업그레이드하면 조금 개선됩니다.An application upgrading from .NET Core 3.0 to 3.1 has a smaller jump to move forward. 부 버전은 이전 부 버전과 나란히 설치됩니다.Minor releases install side by side with previous minor releases.

서비스 업데이트Servicing updates

서비스 업데이트(패치)는 거의 매월 제공되며 해당 업데이트에는 보안 및 비보안 버그 수정이 모두 포함됩니다.Servicing updates (patches) ship almost every month, and these updates carry both security and non-security bug fixes. 예를 들어 .NET Core 3.1.8은 .NET Core 3.1의 8번째 업데이트입니다.For example, .NET Core 3.1.8 is the eighth update for .NET Core 3.1. 해당 업데이트는 보안 수정을 포함하는 경우 항상 매월 두 번째 화요일인 “화요일 패치(Patch Tuesday)”에 릴리스됩니다.When these updates include security fixes, they're released on "patch Tuesday", which is always the second Tuesday of the month. 서비스 업데이트는 호환성을 유지해야 합니다.Servicing updates are expected to maintain compatibility. .NET Core 3.1부터 서비스 업데이트는 이전 업데이트를 제거하는 업그레이드입니다.Starting with .NET Core 3.1, servicing updates are upgrades that remove the preceding update. 예를 들어 3.1의 최신 서비스 업데이트를 설치하면 이전 3.1 업데이트가 제거됩니다.For example, the latest servicing update for 3.1 removes the previous 3.1 update upon successful installation.

기능 밴드(SDK만 해당)Feature bands (SDK only)

.NET SDK의 버전 관리는 .NET 런타임과 약간 다릅니다.Versioning for the .NET SDK works slightly differently from the .NET runtime. 새 Visual Studio 릴리스에 맞추기 위해 .NET SDK 업데이트에는 새로운 기능이나 MSBuild, NuGet 등과 같은 구성 요소의 새 버전이 포함되어 있을 수 있습니다.To align with new Visual Studio releases, .NET SDK updates sometimes include new features or new versions of components like MSBuild and NuGet. 이러한 새 기능이나 구성 요소는 동일한 주 또는 부 버전용 이전 SDK 업데이트에서 제공된 버전과 호환되지 않을 수 있습니다.These new features or components may be incompatible with the versions that shipped in previous SDK updates for the same major or minor version.

관련 업데이트를 구분하기 위해 .NET SDK에서는 기능 밴드라는 개념을 사용합니다.To differentiate such updates, the .NET SDK uses the concept of feature bands. 예를 들어 첫 번째 .NET Core 3.1 SDK는 3.1.100입니다.For example, the first .NET Core 3.1 SDK was 3.1.100. 해당 릴리스는 3.1.1xx ‘기능 밴드’에 해당합니다.This release corresponds to the 3.1.1xx feature band. 기능 밴드는 버전 번호의 세 번째 섹션에 100~999 사이의 그룹으로 정의됩니다.Feature bands are defined in the hundreds groups in the third section of the version number. 예를 들어 3.1.101과 3.1.201은 두 가지 기능 밴드의 버전이며, 3.1.101과 3.1.199는 기능 밴드가 같습니다.For example, 3.1.101 and 3.1.201 are versions in two different feature bands while 3.1.101 and 3.1.199 are in the same feature band. 그리고 .NET Core SDK 3.1.101을 설치하면 머신에 있는 .NET Core SDK 3.1.100은 제거됩니다.When .NET Core SDK 3.1.101 is installed, .NET Core SDK 3.1.100 is removed from the machine if it exists. 같은 머신에 .NET Core SDK 3.1.200을 설치하는 경우 .NET Core SDK 3.1.101은 제거되지 않습니다.When .NET Core SDK 3.1.200 is installed on the same machine, .NET Core SDK 3.1.101 isn't removed.

런타임 롤포워드 및 호환성Runtime roll-forward and compatibility

주 및 부 업데이트는 이전 버전과 나란히 설치됩니다.Major and minor updates install side by side with previous versions. 특정 major.minor 버전을 대상으로 빌드된 애플리케이션은 최신 버전을 설치하더라도 해당하는 대상 런타임을 계속 사용합니다.An application built to target a specific major.minor version continues to use that targeted runtime even if a newer version is installed. 해당 동작을 옵트인하는 경우 외에는 앱이 최신 major.minor 버전의 런타임을 사용하도록 자동으로 롤포워드되지 않습니다.The app doesn't automatically roll forward to use a newer major.minor version of the runtime unless you opt in for this behavior. .NET Core 3.0을 대상으로 빌드된 애플리케이션은 .NET Core 3.1에서 자동으로 실행이 시작되지 않습니다.An application that was built to target .NET Core 3.0 doesn't automatically start running on .NET Core 3.1. 앱을 다시 빌드하고 최신 주 또는 부 런타임 버전에 대해 테스트한 후 프로덕션으로 배포하는 것이 좋습니다.We recommend rebuilding the app and testing against a newer major or minor runtime version before deploying to production. 자세한 내용은 프레임워크 종속 앱 롤포워드자체 포함 배포 런타임 롤포워드를 참조하세요.For more information, see Framework-dependent apps roll forward and Self-contained deployment runtime roll forward.

서비스 업데이트는 주 및 부 버전과 다르게 처리됩니다.Servicing updates are treated differently from major and minor releases. .NET Core 3.1을 대상으로 빌드된 애플리케이션은 기본적으로 3.1.0 런타임에서 실행됩니다.An application built to target .NET Core 3.1 runs on the 3.1.0 runtime by default. 해당 서비스 업데이트를 설치하면 최신 3.1.1 런타임을 사용하도록 자동으로 롤포워드됩니다.It automatically rolls forward to use a newer 3.1.1 runtime when that servicing update is installed. 이 동작이 기본값인 이유는 보안 수정이 설치되는 즉시 별도의 작업 없이 사용되도록 하기 위해서입니다.This behavior is the default because we want security fixes to be used as soon as they're installed without any other action needed. 해당 기본 롤포워드 동작을 옵트아웃할 수도 있습니다.You can opt out from this default roll forward behavior.

.NET Core 및 .NET 5 버전 수명 주기.NET Core and .NET 5 version lifecycles

.NET Core, .NET 5 이상 버전에서는 .NET Framework 릴리스에 사용된 고정 수명 주기가 아니라 최신 수명 주기를 채택합니다..NET Core, .NET 5, and later versions adopt the modern lifecycle rather than the fixed lifecycle that has been used for .NET Framework releases. 고정 수명 주기를 사용하는 제품은 지원 기간이 길고 고정되어 있습니다. 예를 들어 5년의 일반 지원과 이후 5년의 추가 지원을 제공합니다.Products with fixed lifecycles provide a long fixed period of support, for example, 5 years of mainstream support and another 5 years of extended support. 일반 지원은 보안 및 비보안 수정을 포함하지만 추가 지원은 보안 수정만 제공합니다.Mainstream support includes security and non-security fixes, while extended support provides security fixes only. 최신 수명 주기를 채택하는 제품은 서비스와 더 유사한 지원 모델을 사용하여 지원 기간은 더 짧지만 릴리스는 빈번합니다.Products that adopt a modern lifecycle have a more service-like support model, with shorter support periods and more frequent releases.

릴리스 트랙Release tracks

릴리스의 지원 트랙은 두 가지입니다.There are two support tracks for releases:

  • ‘현재’ 릴리스Current releases

    해당 버전은 다음 주 또는 부 버전이 제공된 후 3개월까지 지원됩니다.These versions are supported until 3 months after the next major or minor release ships.

    예제:Example:

    • .NET Core 3.0이 2019년 9월에 제공되고 이어서 2019년 12월에 .NET Core 3.1이 제공되었습니다..NET Core 3.0 shipped in September 2019 and was followed by .NET Core 3.1 in December 2019.
    • .NET Core 3.0 지원은 3.1이 출시되고 3개월 후인 2020년 3월에 종료됩니다..NET Core 3.0 support ended in March 2020, 3 months after 3.1 shipped.
  • ‘LTS(장기 지원)’ 릴리스Long Term Support (LTS) releases

    해당 버전은 최소 3년간 또는 다음 LTS 릴리스가 제공되고 1년 후까지 중 나중 시점까지 지원됩니다.These versions are supported for a minimum of 3 years, or 1 year after the next LTS release ships if that date is later.

    예제:Example:

    • .NET Core 2.1은 2018년 5월에 릴리스되었고 2018년 8월에 LTS 릴리스로 간주되었습니다..NET Core 2.1 was released in May 2018 and was deemed an LTS release in August 2018.
    • .NET Core 3.1은 다음 LTS 릴리스이며 2019년 12월에 릴리스되었습니다..NET Core 3.1 was the next LTS release and was released in December 2019.
    • 2021년 8월(3년)이 2020년 12월(3.1 릴리스 후 1년)보다 나중이므로 .NET Core 2.1은 2021년 8월까지 지원됩니다.Because August 2021 (3 years) is later than December 2020 (one year after the 3.1 release), .NET Core 2.1 is supported through August 2021.

LTS와 현재 릴리스가 번갈아 제공되므로 이전 릴리스가 이후 릴리스보다 더 오래 지원될 수 있습니다.Releases alternate between LTS and Current, so it's possible for an earlier release to be supported longer than a later release. 예를 들어 .NET Core 2.1은 2021년 8월까지 지원되는 LTS 릴리스입니다.For example, .NET Core 2.1 is an LTS release with support through August 2021. 3.0 릴리스는 1년 이상 나중에 제공되었지만 더 일찍 2019년 12월에 지원이 중지되었습니다.The 3.0 release shipped more than a year later but went out of support earlier, in December 2019.

서비스 업데이트는 매달 제공되며 보안 및 비보안(신뢰성, 호환성, 안정성) 수정을 모두 포함합니다.Servicing updates ship monthly and include both security and non-security (reliability, compatibility, and stability) fixes. 서비스 업데이트는 다음 서비스 업데이트가 릴리스될 때까지 지원됩니다.Servicing updates are supported until the next servicing update is released. 서비스 업데이트에는 런타임 롤포워드 동작이 제공됩니다.Servicing updates have runtime roll forward behavior. 즉, 애플리케이션은 기본적으로 설치된 최신 런타임 서비스 업데이트에서 실행되도록 설정됩니다.That means that applications default to running on the latest installed runtime servicing update.

릴리스를 선택하는 방법How to choose a release

서비스를 빌드하고 정기적으로 계속 업데이트할 계획인 경우 .NET에서 제공할 최신 기능을 활용하기 위해서는 .NET 5.0과 같은 현재 릴리스를 선택하는 것이 가장 좋은 방법일 수 있습니다.If you're building a service and expect to continue updating it on a regular basis, then a Current release like .NET 5.0 may be your best option to stay up to date with the latest features .NET has to offer.

소비자에게 배포되는 클라이언트 애플리케이션을 빌드하는 경우에는 최신 기능 액세스보다 안정성이 더 중요할 수 있습니다.If you're building a client application that will be distributed to consumers, stability may be more important than access to the latest features. 소비자가 애플리케이션의 다음 버전으로 업그레이드하기 전까지 일정 기간 애플리케이션을 지원해야 할 수 있습니다.Your application might need to be supported for a certain period before the consumer can upgrade to the next version of the application. 이 경우 .NET Core 3.1과 같은 LTS 릴리스가 적절한 옵션일 수 있습니다.In that case, an LTS release like .NET Core 3.1 might be the right option.

서비스 업데이트Servicing updates

.NET 서비스 업데이트는 다음 서비스 업데이트가 릴리스될 때까지 지원됩니다..NET servicing updates are supported until the next servicing update is released. 릴리스 주기는 매월입니다.The release cadence is monthly.

앱을 안전하고 지원되는 상태로 유지하기 위해 정기적으로 서비스 업데이트를 설치해야 합니다.You need to regularly install servicing updates to ensure that your apps are in a secure and supported state. 예를 들어 .NET Core 3.1의 최신 서비스 업데이트가 3.1.8인데 3.1.9가 제공되는 경우 3.1.8은 더 이상 최신이 아닙니다.For example, if the latest servicing update for .NET Core 3.1 is 3.1.8 and we ship 3.1.9, then 3.1.8 is no longer the latest. 그러면 3.1에 대해 지원되는 서비스 수준은 3.1.9입니다.The supported servicing level for 3.1 is then 3.1.9.

각 주 및 부 버전의 최신 서비스 업데이트에 대한 자세한 내용은 .NET 다운로드 페이지를 참조하세요.For information about the latest servicing updates for each major and minor version, see the .NET downloads page.

지원 종료End of support

지원 종료일이란 해당 날짜 이후에 Microsoft에서 제품 버전을 위한 수정, 업데이트, 기술 지원을 더 이상 제공하지 않는 날짜를 나타냅니다.End of support refers to the date after which Microsoft no longer provides fixes, updates, or technical assistance for a product version. 해당 날짜 이전에 지원되는 버전을 사용하도록 이동해야 합니다.Before this date, make sure you have moved to using a supported version. 지원되지 않는 버전은 애플리케이션과 데이터를 보호하는 보안 업데이트를 더 이상 받을 수 없습니다.Versions that are out of support no longer receive security updates that protect your applications and data.

지원되는 운영 체제Supported operating systems

.NET 5(.NET Core 포함) 이상 버전은 다양한 운영 체제에서 실행할 수 있습니다..NET 5 (and .NET Core) and later versions can be run on a range of operating systems. 각 관련 운영 체제의 수명 주기는 스폰서 조직(Microsoft, Red Hat, Apple 등)에서 정의합니다.Each of these operating systems has a lifecycle defined by its sponsor organization (for example, Microsoft, Red Hat, or Apple). Microsoft는 운영 체제 버전의 지원을 추가하거나 제거할 때 해당 수명 주기 일정을 고려합니다.We take these lifecycle schedules into account when adding and removing support for operating system versions.

운영 체제 버전의 지원이 중단되면 해당 버전의 테스트와 해당 버전의 지원 제공이 중지됩니다.When an operating system version goes out of support, we stop testing that version and providing support for that version. 지원을 받으려면 사용자가 지원되는 운영 체제 버전으로 이동해야 합니다.Users need to move forward to a supported operating system version to get support.

자세한 내용은 .NET OS Lifecycle Policy(.NET OS 수명 주기 정책)를 참조하세요.For more information, see the .NET OS Lifecycle Policy.

지원 받기Get support

Microsoft 보조 지원과 커뮤니티 지원 중에서 선택할 수 있습니다.You have a choice between Microsoft assisted support and Community support.

Microsoft 지원Microsoft support

보조 지원을 받으려면 Microsoft 지원 전문가에게 문의하세요.For assisted support, contact a Microsoft Support Professional.

지원을 받으려면 지원되는 서비스 수준(사용 가능한 최신 서비스 업데이트)에 있어야 합니다.You need to be on a supported servicing level (the latest available servicing update) to be eligible for support. 시스템에서 3.1을 실행 중이고 3.1.8 서비스 업데이트가 릴리스된 경우 첫 번째 단계로 3.1.8을 설치해야 합니다.If a system is running 3.1 and the 3.1.8 servicing update has been released, then 3.1.8 needs to be installed as a first step.

커뮤니티 지원Community support

커뮤니티 지원을 받으려면 커뮤니티 페이지를 참조하세요.For community support, see the Community page.

참조See also

각 .NET Core 버전 및 .NET 5의 지원되는 날짜 범위를 비롯한 자세한 내용은 Support Policy(지원 정책)를 참조하세요.For more information, including supported date ranges for each version of .NET Core and for .NET 5, see the Support Policy.