올바른 Azure 호스팅 옵션 선택

이 문서에서는 기존 .NET Framework 애플리케이션을 온-프레미스에서 Azure로 마이그레이션할 때 Azure에서 선택할 수 있는 여러 항목 간의 고려 사항과 비교를 제공합니다.

기존 .NET 애플리케이션을 Azure로 마이그레이션할 때 고려해야 할 기본 영역은 다음과 같습니다.

  1. 컴퓨팅 옵션
  2. 데이터베이스 선택
  3. 네트워킹 및 보안 고려 사항
  4. 인증 및 권한 부여 고려 사항

컴퓨팅 옵션

기존 .NET Framework 애플리케이션을 Azure로 마이그레이션할 때는 여러 가지 옵션이 있습니다. 그러나 .NET Framework는 Windows에 따라 달라지므로 다음 선택은 Windows 기반 컴퓨팅 서비스로 제한됩니다.

다음 표에서는 기존 .NET 애플리케이션에 적합한 컴퓨팅 마이그레이션 경로를 선택하는 데 도움이 되는 몇 가지 비교 및 권장 사항을 보여 줍니다.

Azure 가상 머신들 Azure App Service Windows 컨테이너
사용 시기
  • 애플리케이션에는 서버 및 로컬 .msi 설치에 대한 강력한 종속성이 있습니다.
  • 가장 쉬운 애플리케이션 마이그레이션 경로를 원합니다.
앱에는 서버에 대한 종속성이 없으며, 데이터베이스 서버에 액세스하는 단순한 ASP.NET 웹앱(MVC, WebForm) 또는 N 계층 앱(Web API, WCf)입니다.
  • 애플리케이션은 원래 서버에 종속되어 있지만 이러한 종속성은 Docker Windows 이미지에 포함될 수 있습니다.
장점 및 혜택
  • 가장 쉬운 마이그레이션 경로
  • 친숙한 환경. 배포 환경은 VM이므로 온-프레미스 서버와 비슷합니다.
지속적인 PaaS 유지 관리, Azure에서 앱을 관리하고 크기를 조정하는 가장 간단한 방법입니다.
  • 미래를 위해 준비된 클라우드 DevOps-Ready는 앱의 컨테이너에 포함된 종속성을 포함하고 있습니다.
  • .NET /C# 코드를 리팩터링할 필요가 거의 없습니다.
단점 IaaS입니다. 유지 관리는 비용이 많이 듭니다. 네트워킹, 부하 분산 장치, 스케일 아웃, IIS 관리 등에 대한 VM의 인프라를 관리해야 합니다.
  • 모든 앱이 지원되는 것은 아닙니다.
  • 일부 앱은 Azure App Service를 지원할 수 있도록 리팩터링되거나 약간의 구조 수정이 필요할 수도 있습니다.
  • Docker의 기술 학습 곡선
  • 일부 코드 및 앱 구성 설정 변경
요구 사항 온-프레미스용 앱과 동일한 요구 사항이 있는 Windows Server VM 준비 검사에 지정된 Azure App Service 요구 사항입니다.
마이그레이션 방법 Azure Virtual Machines로 마이그레이션 참조 Azure App Service 마이그레이션 참조 Azure 및 Windows Containers eBook을 사용하여 기존 .NET 앱 현대화에 설명된 고려 사항, 시나리오 및 연습을 따릅니다.

다음 순서도 다이어그램은 기존 .NET Framework 애플리케이션에 대한 Azure로의 마이그레이션을 계획할 때의 의사 결정 트리를 보여 줍니다. 실행 가능한 경우 먼저 옵션 A를 시도하지만 옵션 B는 수행할 수 있는 가장 쉬운 경로입니다.

호스팅 의사 결정 트리를 보여 주는 순서도

데이터베이스 선택

관계형 데이터베이스를 Azure로 마이그레이션할 때는 여러 가지 옵션이 있습니다. 기존 .NET 애플리케이션에 적합한 데이터베이스 마이그레이션 경로를 선택하는 데 도움이 되도록 SQL Server 데이터베이스를 Azure 로 마이그레이션을 참조하세요.

네트워킹 및 보안 고려 사항

Microsoft Azure와 같은 퍼블릭 클라우드에 애플리케이션을 배포할 때 Azure와 온-프레미스 간 DMZ 또는 Azure와 인터넷 간의 DMZ와 같은 네트워크 DMZ를 만들어 특정 네트워크를 격리하고 보호하는 것이 좋습니다. DMZ는 Azure Virtual Network를 사용하여 구현할 수 있습니다.

Azure Virtual Network를 사용하면 다음을 수행할 수 있습니다.

  • 제어하는 하이브리드 인프라 빌드
  • 사용자 고유의 IP 주소 및 DNS 서버 가져오기
  • IPsec VPN 또는 ExpressRoute를 사용하여 연결 보호
  • 서브넷 간의 트래픽에 대한 세분화된 제어 가져오기
  • 가상 어플라이언스를 사용하여 정교한 네트워크 토폴로지 만들기
  • 애플리케이션에 대한 격리되고 매우 안전한 환경 가져오기

사용자 고유의 가상 네트워크 빌드를 시작하려면 Azure Virtual Network 설명서를 참조하세요.

Azure로 마이그레이션할 때 인증 및 권한 부여 고려 사항

클라우드로 이동하는 모든 조직의 주요 관심사는 보안입니다. 대부분의 기업은 보안 모델 설계 및 개발에 상당한 시간, 비용 및 엔지니어링을 투자했으며 ID 저장소 및 Single Sign-On 솔루션과 같은 기존 투자를 활용할 수 있어야 합니다.

온-프레미스에서 실행되는 많은 기존 엔터프라이즈 B2E .NET 애플리케이션은 인증 및 ID 관리에 Active Directory를 사용합니다. Azure AD Connect를 사용하면 온-프레미스 디렉터리를 Azure Active Directory와 통합할 수 있습니다. 시작하려면 Azure Active Directory와 온-프레미스 디렉터리 통합을 참조하세요.

Azure Active Directory와 관련된 추가 계획은 하이브리드 ID 솔루션에 대한 ID 요구 사항을 참조하세요 .

다른 인증 프로토콜 선택 항목으로는 소비자 지향 애플리케이션에서 흔히 볼 수 있는 OAuthOpenID가 있습니다. OAuth를 사용하여 IdentityServer4로 래핑된 ASP.NET ID SQL 데이터베이스와 같은 자율 ID 데이터베이스를 사용하는 경우 일반적으로 온-프레미스 데이터베이스 또는 디렉터리에 대한 연결이 필요하지 않습니다.

다음 단계