2007~2011/IIS2011. 1. 18. 10:24

IIS 7 에서 Appcmd.exe 커맨드라인 명령을 통해 IIS 7 설정 파일을 백업할 수 있지만 포함된 사이트에 대한 Web.config 파일이나 해당 사이트의 콘텐츠에 대해서는 백업을 받지 못해 조금 아쉽다는 생각이 듭니다. 하지만 방법이 없는 것이 아닙니다. 웹 배포 도구(Web Deployment Tool) 서버에서 마이그레이션, 배포, 동기화 등으로 주로 사용됩니다만 쉬운 패키지 기능을 활용하여 백업과 복원 용도로 사용해 볼 수도 있습니다. 이번 포스팅에서는 웹 배포 도구(Web Deployment Tool) 2.0 을 사용하여 IIS 7 웹 서버 정보와 콘텐츠를 패키징 하여 내보내기/가져오기 하는 방법을 소개해 드립니다. 


1. 웹 배포 도구(Web Deployment Tool) 개요
 가. 웹 배포 도구는 IIS 웹 서버, 웹 응용 프로그램 및 웹 사이트의 마이그레이션, 관리, 배포를 간편하게 할 수 있도록 지원하는 확장 기능으로 인터넷 정보 서비스 관리자에서 사용할 수 있는 GUI 환경 그리고 커맨드라인 명령 도구를 모두 지원합니다. 주요 기능은 아래와 같습니다. 

출처 : 웹 배포 도구(x64) - http://www.microsoft.com/downloads/ko-kr/details.aspx?FamilyID=c7ca4240-5427-42ba-bd46-29a755549e37 


IIS 6.0 및 IIS 7.0 간에 쉽게 웹 응용 프로그램 마이그레이션
마이그레이션 프로세스를 시작하기 전에 비호환성을 확인하고 제안된 변경을 미리 보는 방법으로 IIS 6.0에서 IIS 7.0으로의 마이그레이션에 대한 계획을 단순화합니다.미리 잠재적인 문제에 대해 파악하는 것은 잘못된 것을 미리 수정할 수 있으며,마이그레이션을 단순화할 수 있습니다. 

효율적으로 서버 팜 동기화
웹 배포 도구를 사용하면 원본 및 대상 콘텐츠 간의 차이를 검색하고 동기화가 필요한 이러한 변경 내용만 전송하여 IIS 7.0 서버 팜 전반에서 사이트, 응용 프로그램 또는 서버를 효율적으로 동기화할 수 있습니다.이 도구는 특정 사이트에 대해 동기화할 구성, 콘텐츠, 데이터베이스 및 인증서를 자동으로 확인하여 동기화 프로세스를 단순화합니다.기본 동작 외에도 COM, GAC, 레지스트리 설정 등, 동기화에 대한 추가 공급자를 지정하는 옵션이 있습니다. 

더욱 쉽게 웹 응용 프로그램 패키징, 보관 및 배포
웹 배포 도구를 사용하면 SQL 데이터베이스 등의 설치된 웹 응용 프로그램의 구성 및 콘텐츠를 패키징하고 이 패키지를 저장하거나 다시 배포하는 데 사용할 수 있습니다.관리 권한이 없어도 IIS 관리자를 사용하여 이 패키지를 배포할 수 있습니다.또한 웹 배포 도구는 Visual Studio 2010과 통합되어 개발자가 웹 응용 프로그램을 웹 서버에 배포하는 작업을 간소화할 수 있도록 도와줍니다. 



2. Web Deployment Tool 2.0 설치
 가. 다운로드 및 설치
 64-bit version: http://download.microsoft.com/download/8/9/B/89B754A5-56F7-45BD-B074-8974FD2039AF/WebDeploy_amd64_en-US.msi 

32-bit version: http://download.microsoft.com/download/8/9/B/89B754A5-56F7-45BD-B074-8974FD2039AF/WebDeploy_x86_en-US.msi 

http://download.microsoft.com 또는 http://www.iis.net/download/webdeploy 또는 웹 플랫폼 설치 관리자를 통해서도 다운로드 및 설치하실 수 있습니다. 별다른 설정 없이 기본 설정 대로 설치하시면 됩니다. 



3. 패키지 내보내기
 
웹 배포 도구를 설치하면 아래와 같이 '배포' 메뉴에 생성됩니다. 현재 IIS 7 웹 서버에 구성된 전체 설정과 콘텐츠를 내보내기 한 뒤 가져오는 절차입니다. 

 
가. 배포 - 서버 패키지 내보내기


 나. 패키지 콘텐츠 선택 및 고급 설정


 다. 고급 설정에 포함된 ACL(Access Control List) 설정을 True 로 변경할 경우 웹 사이트 콘텐츠에 포함된 폴더 및 파일들의 ACL 권한 정보를 포함하여 패키징하게 됩니다. 기본값은 False 로 ACL 정보를 포함하지 않습니다. 현재 설정과 동일한 ACL 권한을 유지하기 위해서는 True 로 변경하시면 됩니다.


 라. 매개 변수 추가
서로 다른 설정으로 여러 서버에 패키지를 배포할 때, 매개 변수 추가 옵션을 사용하게 되며, 패키지 내 parameters.xml 파일로 정보가 저장됩니다. 배포 대상 서버의 설정에 맞게 해당 파일을 수정하면 되며 추후 패키지를 가져오기 할 때, 대화형으로 해당 매개 변수 값을 지정할 수 있습니다.


 마. 기본값으로 ZIP 확장자로 패키지를 저장합니다.

 
 바. 패키지 내보내기 세부 정보 및 요약 결과




4. 패키지 가져오기
 IIS 정보 서비스 관리자에서 Default Web Site, XE 2개의 사이트를 삭제하고 XE 사이트의 실제 경로인 C:\XE 폴더를 모두 삭제한 뒤 패키지를 가져와서 복원해 보도록 합니다. 

 
가. 사이트가 모두 삭제된 상태에서 ;서버 또는 사이트 패키지 가져오기' 메뉴를 클릭합니다.
 


 
나. 패키지 선택


 다. 가져올 콘텐츠 선택 (모두)


 라. 현재 IIS 7 구성 정보와 패키지 데이터 간 차이점이 있는 콘텐츠 정보를 모두 덮어씁니다.


 마. 변경 사항이 없는 Default Web Site 의 콘텐츠 폴더와 파일을 제외하고 이 외 XE 폴더와 콘텐츠, 그리고 IIS 7 구성정보 파일에 대한 정보를 패키지 자료로부터 가져와서 업데이트 되었습니다.


 바. 삭제했던 사이트와 XE 실제 경로 C:\XE 폴더의 콘텐츠가 모두 복원되었습니다.


처음에도
소개 드렸듯이 배포 도구의 주요 기능은 마이그레이션, 동기화, 배포 등의 용도로 사용하게 됩니다만 이렇게 백업과 복원의 용도로도 사용할 있기에 이번 포스팅을 통해 소개 드렸습니다. 지금까지 소개 드린 여러 가지 방법으로 데이터를 안전하게 백업하실 있습니다. 적절한 백업 정책을 계획하여 소중한 데이터를 안전하게 백업하시기 바랍니다


작성자 : Lai Go / 작성일자 : 2010.01.18

Posted by Lai Go