View a markdown version of this page

appcmd.exe를 사용하여 IIS 호스팅 애플리케이션을 Amazon EC2로 마이그레이션 - 권장 가이드

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

appcmd.exe를 사용하여 IIS 호스팅 애플리케이션을 Amazon EC2로 마이그레이션

Deepak Kumar, Amazon Web Services

요약

IIS(인터넷 정보 서비스) 호스팅 애플리케이션을 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스로 마이그레이션할 때는 몇 가지 인증 문제를 해결해야 합니다. 이러한 문제에는 애플리케이션 풀 ID에 대한 도메인 자격 증명을 다시 입력하고 적절한 웹 사이트 기능을 위해 잠재적으로 머신 키를 다시 생성하는 것이 포함됩니다. 이 패턴은 Amazon EC2 인스턴스에서 IIS의 백업 및 복원 기능을 사용하는 클린 마이그레이션 접근 방식을 설명합니다. 이 접근 방식은 appcmd.exe를 사용하여 대상 Amazon EC2 인스턴스에서 IIS를 제거했다가 다시 설치하므로 IIS 호스팅 웹 사이트, 애플리케이션 풀 ID 및 시스템 키를 성공적으로 마이그레이션할 수 있습니다.

사전 조건 및 제한 사항

사전 조건 

  • 대상 서버에 AWS 계정 대해 활성 상태입니다.

  • 웹 사이트가 호스팅되는 기능 소스 IIS 서버입니다.

  • 관리 및 구성과 같은 IIS 작업 원칙에 대한 이해.

  • 소스 서버와 대상 서버 모두에서 시스템 관리자 액세스.

  • 소스 IIS 서버를 대상으로 마이그레이션을 완료했습니다 AWS 계정. AWS Transform MGN Amazon Machine Image(AMI) 스냅샷 기반 접근 방식 또는 기타 마이그레이션 도구와 같은 마이그레이션 도구를 사용할 수 있습니다.

  • 소스 서버와 대상 서버 모두에서 Windows Server 2012 R2 이상.

  • Microsoft .NET Framework 4.5 이상이 두 서버 모두에 설치됨(aspnet_regiis.exe 키 컨테이너 작업에 필요)

  • Amazon Simple Storage Service(Amazon S3), 공유 네트워크 드라이브 또는 보안 사본과 같이 소스에서 대상 서버로 백업 파일 및 내보낸 키 XML 파일을 전송하는 방법입니다.

  • 소스 및 대상 IIS 인스턴스는 동일한 IIS 버전(8.5 또는 10.0)을 실행해야 합니다.

제한 사항

제품 버전

  • IIS 8.5 또는 IIS 10.0

아키텍처

소스 기술 스택  

  • IIS 8.5 또는 IIS 10.0이 설치된 Windows Server

대상 기술 스택  

  • IIS 8.5 또는 IIS 10.0이 설치된 Windows Server

  • AWS Transform MGN

대상 아키텍처 

다음 다이어그램은 이 패턴의 워크플로 및 구성 요소를 보여 줍니다.

IIS 호스팅 애플리케이션을 Amazon EC2로 마이그레이션하는 워크플로입니다.

이 솔루션에는 다음 단계가 포함됩니다.

  1. 회사 데이터 센터의 소스 IIS 서버에 AWS 복제 에이전트를 설치하고 구성합니다. 이 에이전트는 복제 프로세스를 시작하고 로의 데이터 전송을 관리합니다 AWS.

  2. AWS Replication Agent는 MGN에 대한 보안 연결을 설정하고 IIS 구성, 웹 사이트 및 애플리케이션 파일을 포함한 소스 서버 데이터 복제를 시작합니다.

  3. MGN은 복제된 데이터를 사용하여 애플리케이션 서브넷에서 Amazon EC2 인스턴스를 시작합니다. 대상 Amazon EC2 인스턴스는 IIS를 실행하며 연결된 Amazon Elastic Block Store(Amazon EBS) 볼륨과 함께 마이그레이션된 애플리케이션을 포함합니다. 초기 복제 후 MGN은 새 환경으로 전환할 준비가 될 때까지 변경 사항을 계속 동기화합니다.

도구

AWS 서비스

  • AWS Transform MGN를 사용하면 변경 AWS 클라우드 없이 가동 중지 시간을 최소화하면서 애플리케이션을 로 리호스팅(리프트 앤 시프트)할 수 있습니다.

  • Amazon Elastic Block Store(Amazon EBS)는 Amazon EC2 인스턴스에 사용할 수 있는 블록 스토리지 볼륨을 제공합니다.

  • Amazon Elastic Compute Cloud(Amazon EC2)는 AWS 클라우드에서 확장 가능한 컴퓨팅 용량을 제공합니다. 필요한 만큼 가상 서버를 시작하고 빠르게 스케일 업하거나 스케일 다운할 수 있습니다.

기타 도구

  • Windows Server용 IIS(인터넷 정보 서비스)는 웹에서 모든 것을 호스팅하기 위한 확장 가능한 개방형 아키텍처를 갖춘 웹 서버입니다. IIS는 관리 및 명령줄 도구(예: appcmd.exe), 관리형 코드 및 스크립팅 API, Windows PowerShell 지원을 포함한 관리 도구 세트를 제공합니다.

모범 사례

  • 내보낸 보안 키 파일 - 내보낸 프라이빗 키가 포함된 XML 파일은 마이그레이션 성공 후 소스 및 대상 서버 모두에서 안전하게 전송(전송 중 암호화)되고 삭제되어야 합니다.

  • 비프로덕션 환경에서 테스트 - 프로덕션 환경에서 실행하기 전에 테스트 서버에서 백업 및 복원 절차를 수행합니다.

  • 문서 애플리케이션 풀 자격 증명 - 복원 후 암호를 다시 입력해야 하므로 마이그레이션하기 전에 모든 애플리케이션 풀 자격 증명을 기록합니다.

  • SSL 인증서 별도 백업 - appcmd.exe 백업에는 SSL 또는 TLS 인증서가 포함되지 않습니다. 인증서 MMC 스냅인 또는 PowerShell을 사용하여 별도로 내보내기

  • 웹 콘텐츠 파일 확인 - IIS 구성 백업에는 웹 애플리케이션 파일(wwwroot 콘텐츠)이 포함되지 않습니다. 서버 이미지를 통해 마이그레이션해야 합니다 AWS Transform MGN.

에픽

작업설명필요한 기술

IIS 호스팅 웹 사이트, 구성 키 및 WAS 키의 백업을 생성합니다.

IIS 호스팅 웹 사이트, 구성 키(iisConfigurationKey) 및 WAS 키(iisWasKey)에 대한 백업을 생성하려면 소스 서버에서 appcmd.exe를 사용합니다. 다음 단계를 사용합니다.

  1. 관리자 권한으로 명령 프롬프트를 엽니다.

  2. cd c:\windows\system32\inetsrv 명령을 실행합니다.

  3. <backupname>를 자신의 값로 바꿔서 다음 명령을 실행합니다. appcmd.exe add backup "<backupname>

구성 키와 WAS 키를 내보내려면 다음을 수행합니다.

  1. 내보내기 디렉터리를 생성합니다. mkdir C:\temp

  2. cd c:\windows\Microsoft.NET\Framework64\v4.0.30319 명령을 실행합니다.

  3. aspnet_regiis.exe -px "iisConfigurationKey" C:\temp\iisConfKey.xml -pri 명령을 실행합니다.

  4. aspnet_regiis.exe -px "iisWasKey" C:\temp\iisWasKey.xml -pri 명령을 실행합니다.

IIS 관리자
작업설명필요한 기술

대상 서버에서 IIS를 제거합니다.

대상 서버에서 IIS를 제거하려면 다음 단계를 사용합니다.

  1. 관리자 권한으로 서버에 로그인합니다.

  2. 서버 관리자로 이동합니다.

  3. 관리, 역할 및 기능 제거, 다음다음을 선택합니다.

  4. 웹 서버(IIS) 확인란의 선택을 취소한 후 다음을 선택하고 다음을 선택합니다.

  5. 대상 서버 자동 재시작 확인란을 선택합니다. 제거 프로세스가 완료되면 시스템이 재부팅됩니다.

  6. 로 이동하여이 폴더가 비어 있는지 C:\Windows\System32\inetsrv 확인하여 IIS가 성공적으로 제거되었는지 확인합니다.

IIS 관리자

대상 서버에 IIS를 설치합니다.

대상 서버에 IIS를 설치하려면 다음 단계를 사용합니다.

  1. 관리자 권한으로 서버에 로그인합니다.

  2. 서버 관리자로 이동합니다.

  3. 역할 및 기능 추가, 다음, 다음, 다음다음을 선택합니다.

  4. Webserver IIS 확인란을 선택합니다. 메시지가 표시되면 기능 추가를 선택합니다.

  5. 앱 개발, 기능 추가모든 기능 선택에 표시된 모든 확인란을 선택합니다. 확인 직전에 세분화된 수준에서 기능을 선택할 수 있습니다.

  6. 설치를 선택합니다.

IIS 관리자
작업설명필요한 기술

IIS 웹 사이트 및 구성을 복원합니다.

대상 서버의 소스 서버에서 생성한 IIS 백업을 복원하려면 다음 단계를 사용합니다.

  1. 폴더에 라는 backup C:\windows\system32\inetsrv 폴더를 생성한 다음 그 안에 소스 백업 폴더를 배치합니다.

  2. 관리자 권한으로 명령 프롬프트를 열고 실행합니다.

  3. cd C:\windows\system32\inetsrv 명령을 실행합니다.

  4. C:\windows\system32\inetsrv\appcmd.exe list backup 명령을 실행합니다.

  5. C:\windows\system32\inetsrv\appcmd.exe restore backup <sourcebackup> 명령을 실행합니다.

  6. cd c:\windows\Microsoft.NET\Framework64\v4.0.30319 명령을 실행합니다.

  7. aspnet_regiis.exe -pi "iisConfigurationKey" C:\temp\iisConfKey.xml -exp 명령을 실행합니다.

  8. aspnet_regiis.exe -pi "iisWasKey" C:\temp\iisWasKey.xml -exp 명령을 실행합니다.

  9. IIS를 재설정하고 애플리케이션 풀 자격 증명 및 웹 사이트 고급 설정으로 이동하여 암호를 다시 입력합니다.

  10. IIS Manager를 열고 모든 웹 사이트, 애플리케이션 풀 및 가상 디렉터리가 복원되었는지 확인합니다.

  11. 각 웹 사이트로 이동하여 콘텐츠가 올바르게 제공되고 있는지 확인합니다.

  12. 복원이 성공했는지 확인한 후에서 내보낸 키 파일을 삭제합니다C:\temp.

    del C:\temp\iisConfKey.xml

    del C:\temp\iisWasKey.xml

IIS 관리자

관련 리소스

AWS 설명서

AWS 권장 가이드

Microsoft 리소스

추가 정보

  • appcmd.exe 백업에는 애플리케이션 풀, 사이트, 글로벌 구성 및 IIS 스키마가 포함됩니다. 웹 콘텐츠 파일, SSL 인증서 또는 공유 구성 파일은 포함되지 않습니다.

  • 대규모 IIS 팜 마이그레이션의 경우 스크립팅된 백업 및 복원 작업에 PowerShell 웹 관리 모듈을 사용하는 것이 좋습니다.