다음을 통해 공유


IIS 동기화

믿음에 의해 A

이 빠른 가이드에서는 웹 배포 도구를 사용하여 IIS 원본 컴퓨터의 웹 사이트를 IIS 대상 컴퓨터와 동기화하는 프로세스를 안내합니다. 원격 대상으로 데이터를 "푸시"하거나 원격 원본에서 데이터를 "끌어와서" 이 작업을 수행할 수 있습니다. 이 가이드에서는 웹 배포 에이전트 서비스(MsDepSvc 또는 "원격 에이전트 서비스")를 설치할 필요가 없도록 패키지 파일을 사용하는 옵션뿐만 아니라 두 가지 방법을 모두 보여 줍니다.

웹 배포 도구를 사용하여 동기화할 수 있는 방법은 무엇인가요?

  • 푸시(로컬 원본에서 원격 대상으로 동기화)
  • 끌어오기(원격 원본에서 로컬 대상으로 동기화)
  • 독립 동기화(대상과 원본이 모두 원격인 컴퓨터에서 동기화 시작)
  • 수동 로컬 동기화(원본의 패키지 파일을 만들어 대상에 복사한 다음 로컬로 실행)

필수 조건

이 가이드에는 다음 필수 구성 요소가 필요합니다.

  • .NET Framework 2.0 SP1 이상
  • 웹 배포 도구 1.1

참고: 웹 배포 도구를 아직 설치하지 않은 경우 웹 배포 설치 및 구성을 참조하세요.

1부 - 사이트의 종속성 보기

  1. 다음 명령을 실행하여 웹 사이트의 종속성을 가져옵니다.

    msdeploy -verb:getDependencies -source:apphostconfig="Default Web Site"
    
  2. 종속성의 출력을 검토하고 사이트에서 사용 중인 스크립트 맵 또는 설치된 구성 요소를 찾습니다. 예를 들어 웹 사이트에서 Windows 인증을 사용하는 경우 종속성 이름="WindowsAuthentication" />이 표시됩니다<.

  3. 사이트에서 스크립트 맵을 상속하는 경우 종속성에 나열되지 않으며 사이트에 대한 스크립트 맵도 수동으로 검토해야 합니다.

  4. 대상에 필요한 구성 요소 목록을 컴파일합니다.

getDependencies의 출력을 분석하는 자세한 단계는 웹 사이트 종속성 보기를 참조 하세요.

2부 - 대상 구성(대상)

종속성 목록을 검토하고 대상 서버에 설치합니다. 예를 들어 웹 사이트에 다음을 사용 중이라고 가정해 보겠습니다.

  • ASP.NET
  • Windows 인증
  • 익명 인증

종속성 분석에 따라 동기화를 수행하기 전에 대상 서버에 해당 구성 요소를 설치합니다.

3부 – 대상에 사이트 동기화

  1. 항상 대상 및 원본 서버의 백업을 만듭니다. 테스트만 하는 경우에도 서버의 상태를 쉽게 복원할 수 있습니다. 다음 명령을 실행하여 IIS 7 이상 서버를 백업합니다.

    %windir%\system32\inetsrv\appcmd add backup "PreMsDeploy"
    
  2. 원격 원본에서 데이터를 "끌어오거나" 원격 대상으로 데이터를 "푸시"할 것인지에 따라 원본 또는 대상에 원격 에이전트 서비스를 설치합니다.

  3. 컴퓨터에서 서비스를 시작합니다.

    net start msdepsvc
    
  4. 다음 명령을 실행하여 동기화가 실행될 경우 어떤 일이 발생하는지 확인합니다. -whatif 플래그는 모든 변경 내용을 표시하지 않습니다. 모든 것이 성공하면 변경될 수 있는 사항에 대한 낙관적인 보기를 표시합니다(예: 대상에 쓸 수 없는 오류를 catch하지 않음).

    • 원격 대상으로 푸시하고, 원본 컴퓨터에서 실행합니다(computerName 인수는 원격 대상 컴퓨터를 식별합니다).

      msdeploy -verb:sync -source:apphostconfig="Default Web Site" -dest:apphostconfig="Default Web Site",computername=Server1 -whatif > msdeploysync.log
      
    • 대상 컴퓨터에서 실행되는 원격 원본에서 끌어옵니다(computerName 인수는 원격 원본 컴퓨터를 식별합니다).

      msdeploy -verb:sync -source:apphostconfig="Default Web Site",computername=Server1 -dest:apphostconfig="Default Web Site" -whatif > msdeploysync.log
      
  5. 출력을 확인한 후 -whatif 플래그 없이 동일한 명령을 다시 실행합니다.

    • 원격 대상으로 푸시, 원본 컴퓨터에서 실행

      msdeploy -verb:sync -source:apphostconfig="Default Web Site" -dest:apphostconfig="Default Web Site",computername=Server1 > msdeploysync.log
      
    • 원격 원본에서 끌어와 대상 컴퓨터에서 실행

      msdeploy -verb:sync -source:apphostconfig="Default Web Site",computername=Server1 -dest:apphostconfig="Default Web Site" > msdeploysync.log
      

{선택 사항 - 패키지 파일을 사용하여 사이트와 대상 동기화}

원격 서비스를 사용하지 않으려면 패키지(압축 파일)를 대신 사용할 수 있습니다.

  1. 원본 서버에서 다음 명령을 실행하여 동기화할 웹 사이트의 패키지를 만듭니다.

    msdeploy -verb:sync  -source:apphostconfig="Default Web Site" -dest:package=c:\site1.zip
    
  2. 패키지 파일을 대상 서버에 복사합니다.

  3. 대상 서버에서 다음 명령을 실행하여 동기화가 실행될 경우 어떤 일이 발생할지 확인합니다.

    msdeploy -verb:sync -source:package=c:\site1.zip -dest:apphostconfig="Default Web Site" -whatif > msdeploysync.log
    
  4. 출력을 확인한 후 -whatif 플래그 없이 동일한 명령을 다시 실행합니다.

    msdeploy -verb:sync -source:package=c:\site1.zip -dest:apphostconfig="Default Web Site" > msdeploysync.log
    

이제 사이트 동기화가 완료되었습니다. 확인하려면 대상 서버의 웹 사이트로의 검색을 테스트합니다. 문제 해결 도움말은 웹 배포 문제 해결을 참조하세요.

요약

이제 종속성 보기, 대상 IIS 서버 구성 및 동기화 수행을 포함하여 원본 IIS 서버에서 대상 IIS 서버로 웹 사이트를 동기화했습니다.