콘텐츠 배포 모범 사례(SharePoint Server 2010)

 

적용 대상: SharePoint Server 2010

마지막으로 수정된 항목: 2016-11-30

이 문서는 Microsoft SharePoint Server 2010 모범 사례 문서 시리즈 중 하나로, 콘텐츠 배포 사용을 위한 모범 사례에 대해 설명합니다. 콘텐츠 배포에 대한 자세한 내용과 리소스는 SharePoint Server 2010의 웹 콘텐츠 관리(https://technet.microsoft.com/ko-kr/sharepoint/ff601874.aspx)를 참조하십시오.

이 시리즈의 다른 문서를 보려면 모범 사례(SharePoint Server 2010)를 참조하십시오. SharePoint Server 2010 모범 사례에 대한 자세한 내용과 리소스는 SharePoint Server 2010 모범 사례 리소스 센터(영문일 수 있음)(https://technet.microsoft.com/ko-kr/sharepoint/hh189420.aspx)(영문일 수 있음)를 참조하십시오.

1. 원본 및 대상 서버 팜의 각 서버에 동일한 업데이트가 있는지 확인

원본 서버의 업데이트 수준이 대상 서버의 업데이트 수준과 동일해야 콘텐츠 배포가 지원됩니다. 콘텐츠 배포 작업을 정상적으로 수행하려면 다음 지침을 따르십시오.

  • 팜의 모든 서버에 최신 SharePoint Server 2010, Windows Server 2008 R2 및 Windows Server 2008 SP2 업데이트가 적용되어 있는지 확인합니다.

    핫픽스 릴리스를 적용한 결과 내보내기 패키지의 스키마가 변경되어 원본 서버의 업데이트 수준이 대상 서버보다 높은 경우, 업데이트 수준이 서로 다른 서버 간의 콘텐츠 배포 작업이 실패할 수 있습니다. 중앙 관리 웹 사이트 또는 Windows PowerShell Export-SPWebImport-SPWeb cmdlet을 사용하여 실행하는 콘텐츠 배포 작업의 경우에도 마찬가지입니다.

  • 원본 사이트 모음에 사용되는 언어 팩을 대상 팜에도 설치해야 합니다. 필요한 언어 팩이 대상 팜에 없으면 콘텐츠 배포 작업이 실패할 수 있습니다. 자세한 내용은 언어 팩 배포(SharePoint Server 2010)를 참조하십시오.

  • 원본 서버에 사용자 지정 코드 또는 사용자 지정 SharePoint 솔루션 패키지가 있는 경우에는 대상 서버에도 해당 항목을 배포해야 합니다. 여기에는 대상 서버의 전역 어셈블리 캐시에 설치해야 하는 .wsp 파일에 들어 있지 않은 어셈블리가 포함됩니다.

  • 원본 서버에 기능을 설치하는 경우에는 콘텐츠를 대상 서버로 배포하는 콘텐츠 배포 작업을 실행하기 전에 대상 서버에도 해당 기능을 설치해야 합니다(활성화하지는 않음). 일반적으로 솔루션 패키지를 배포하면 대상 서버에 모든 기능이 설치됩니다. 그러나 .wsp 파일을 사용하지 않는 경우에는 모든 기능이 설치되었으며 활성화되지는 않았는지 확인합니다.

    대상 서버에서 가져오기 프로세스를 수행하는 중에 가져오기에 포함된 항목이 필요로 하는 모든 사이트 모음 기능이 활성화됩니다. 필요한 기능이 대상 서버에 설치되어 있지 않은 경우 콘텐츠 배포 작업은 실패합니다. 자세한 내용은 콘텐츠 배포 - 모범 사례(영문일 수 있음)(https://blogs.technet.com/b/stefan_gossner/archive/2009/01/16/content-deployment-best-practices.aspx)(영문일 수 있음)에서 "문제 9: 사이트 모음에 사용되는 기능이 내보내기 대상 서버에 없음"을 참조하십시오.

2. 대상 서버에서 가져올 CAB 파일의 크기를 수용할 수 있는지 확인

콘텐츠 배포에서는 먼저 모든 콘텐츠를 XML 및 이진 파일로 파일 시스템에 내보낸 다음 이러한 파일을 CAB 파일로 패키지합니다. 이 CAB 파일은 HTTP POST를 사용하여 대상 서버에 업로드되며, 대상 서버에서 파일 추출 및 가져오기가 수행됩니다. 콘텐츠 배포 프로세스에서 생성되는 CAB 파일의 미리 구성된 최대 크기는 10MB이지만, IIS 7.0의 미리 구성된 업로드 한도는 28MB입니다. SharePoint Server 2010에서는 내보낸 파일 하나를 여러 개의 CAB 파일로 분할하지 않으므로, SharePoint Server 2010 사이트에 10MB보다 작게 압축할 수 없는 단일 파일이 포함되어 있고 생성되는 CAB 파일 크기가 IIS 7.0의 기본 업로드 한도인 28MB를 초과하면 콘텐츠 배포 작업이 실패합니다.

서버의 콘텐츠 배포 작업에서 CAB 파일 크기가 28MB를 초과하는 경우 중앙 관리 웹 사이트의 Web.config 파일을 수정하여 대상 서버에서 허용되는 파일 크기를 조정해야 합니다. 이렇게 하려면 다음과 같은 항목을 추가합니다.

<system.webServer>
    <security>
        <requestFiltering>
            <requestLimits maxAllowedContentLength="52428800"/>
         </requestFiltering>
    </security>
</system.webServer>

maxAllowedContentLength 속성의 값은 서버에 업로드할 CAB 파일의 최대 크기를 나타내는 숫자(바이트 단위로 표현됨)입니다. 이 예제에서 52,428,800은 50MB와 같습니다. 배포 환경의 구체적인 요구에 맞게 이 값을 조정해야 합니다.

자세한 내용은 KB 문서 925083 - Windows SharePoint Services 3.0 사이트에서 문서 라이브러리에 큰 파일을 업로드하려고 하면 "요청 시간이 초과되었습니다."라는 오류 메시지가 표시됨(https://support.microsoft.com/kb/925083/ko-kr)을 참조하십시오.

3. 대상 웹 응용 프로그램의 최대 업로드 크기 값이 배포 대상 파일을 수용할 수 있을 정도로 큰지 확인

대상 서버에서 중앙 관리 웹 사이트를 호스팅하는 웹 응용 프로그램은 보통 기본값을 사용하여 작성됩니다. 즉, 최대 업로드 크기가 50MB로 설정됩니다. 원본 사이트 모음에 대상 서버의 업로드 한도보다 큰 파일이 있는 경우에는 콘텐츠 배포 작업이 실패합니다.

대상 사이트에서 중앙 관리 웹 사이트를 호스팅하는 웹 응용 프로그램의 최대 업로드 크기가 최소한 원본 사이트 모음의 가장 큰 항목만큼 큰지 확인합니다. 웹 응용 프로그램의 최대 업로드 크기를 변경하는 방법에 대한 자세한 내용은 웹 응용 프로그램 설정 구성(SharePoint Server 2010)을 참조하십시오.

참고

콘텐츠 배포 작업이 성공하더라도 사이트의 일부분은 배포되지 않았을 수 있으므로, 작업 상태가 성공이더라도 콘텐츠 배포 보고서에서 경고나 치명적이지 않은 오류를 검토해야 합니다. 자세한 내용은 콘텐츠 배포 작업 보고서 및 기록 보기를 참조하십시오.

4. 원본 서버와 대상 서버에 내보내기 및 가져오기 동안 사용되는 파일을 저장하기에 충분한 하드 디스크 공간이 있는지 확인

내보내기 동안 콘텐츠 배포 작업에 포함될 모든 파일은 내보내기 서버 팜의 임시 디렉터리에 저장되며 가져오기를 위해 대상 서버로 보내기 전에 압축됩니다. 마찬가지로 가져오기 동안에도 데이터베이스로 가져올 파일이 대상 서버 팜의 임시 디렉터리에 저장됩니다. 기본적으로 압축된 파일과 압축되지 않은 파일은 별도의 디렉터리에 배치됩니다. 각 서버 팜의 임시 디렉터리 위치에 배포 작업에 포함된 파일을 수용하기에 충분한 디스크 공간이 있는지 확인하십시오. 자세한 내용은 콘텐츠 배포 - 전체 가이드 - 3부 - 구성(영문일 수 있음)(https://blogs.technet.com/b/stefan_gossner/archive/2009/11/02/content-deployment-the-complete-guide-part-3-configuration.aspx)(영문일 수 있음)에서 "임시 파일"을 참조하십시오.

5. 내보내기 서버와 가져오기 서버에서 중앙 관리 웹 사이트 인스턴스를 각각 호스팅

서버 팜에 대한 콘텐츠 배포 설정을 구성할 때 서버 팜에서 콘텐츠 배포의 내보내기 서버 및 가져오기 서버로 지정할 서버를 선택합니다. 각각의 가져오기 서버와 내보내기 서버에서 중앙 관리 웹 사이트를 배포해야 합니다. 내보내기 또는 가져오기 서버를 구성했다가 나중에 서버에서 중앙 관리 웹 사이트를 제거하는 경우에는 오류 메시지가 표시되지 않으며 콘텐츠 배포 작업의 내보내기 또는 가져오기 단계가 시작되지 않습니다.

6. 첫 번째 콘텐츠 배포 작업은 항상 빈 사이트 모음에 배포

사이트 모음에 이미 콘텐츠가 들어 있는 경우 첫 번째 콘텐츠 배포 작업이 실패할 수 있습니다. 대상 서버에서 빈 사이트 모음을 만들려면 중앙 관리에서 사이트 모음 만들기 페이지의 사용자 지정 탭에 있는 < 나중에 서식 파일 선택 > 옵션을 사용합니다. 처음으로 콘텐츠 배포 작업을 실행하면 올바른 서식 파일 및 모든 관련 구성 설정이 대상 서버에 적용됩니다.

참고

새 사이트 서식 파일을 사용하여 대상 사이트 모음을 만들지 마십시오. 새 사이트 서식 파일에서는 빈 사이트 모음을 만들지 않으므로 콘텐츠 배포 작업이 실패할 수 있습니다.

7. 콘텐츠 배포 작업을 자주 실행하지 않는 경우 변경 로그에서 변경 내용을 유지하는 시간 조정

기본적으로 변경 로그는 변경 내용에 대한 레코드를 60일 동안 유지하도록 구성됩니다. 두 증분 배포 작업 사이에 경과된 시간이 이 시간을 초과하면, 예를 들어 콘텐츠 배포 작업이 마지막으로 실행된 이후 70일이 지나면 변경 로그에 마지막 변경 토큰 이전의 항목이 포함되지 않습니다. 배포 작업 사이에 경과된 시간이 60일을 넘으면 중앙 관리에서 웹 응용 프로그램에 대해 지정된 일 수를 변경합니다. 변경 로그에 항목이 보관되는 시간을 변경하는 방법에 대한 자세한 내용은 SharePoint Server 2010의 리소스 제한 이해 및 구성(영문일 수 있음)(https://technet.microsoft.com/ko-kr/magazine/gg491393.aspx)(영문일 수 있음)을 참조하십시오.

8. 두 콘텐츠 배포 작업에서 같은 경로를 사용하는 경우 작업을 동시에 실행하지 않음

한 작업에서 변경한 내용이 같은 콘텐츠 배포 경로에서 동시에 실행되는 다른 작업의 변경 내용과 충돌할 수 있는데, 이렇게 되면 콘텐츠 배포 작업이 실패할 수 있습니다.

9. 사용자 지정 배포 작업과 예약된 콘텐츠 배포 작업은 각각 다른 시간에 실행

Windows PowerShell 2.0, Stsadm 명령줄 도구 또는 사용자 지정 코드를 사용하여 작성한 사용자 지정 콘텐츠 배포 작업과 예약된 콘텐츠 배포 작업을 동시에 실행하지 마십시오. 이 두 가지 종류의 콘텐츠 배포 작업을 동시에 실행하려고 하면 작업이 실패할 수 있습니다.

10. 빠른 배포 작업을 사용하도록 설정하기 전에 사용자에게 안내

빠른 배포가 아닌 배포 작업을 통해 아직 배포되지 않은 사이트, 목록 또는 기타 항목에 대한 참조를 사이트 작성자가 포함하는 경우 빠른 배포 작업이 실패할 수 있습니다. 팜 내에서 빠른 배포 작업을 사용하도록 설정하려면, 조직에서 사용하는 콘텐츠 배포 프로세스 및 콘텐츠 배포 작업의 시간과 범위를 사용자가 파악하도록 하십시오. 빠른 배포 사용자 그룹 구성원으로 포함할 사용자를 제한할 수도 있습니다. 빠른 배포 작업에 대한 자세한 내용은 콘텐츠 배포 - 전체 가이드 - 5부 - 배포(영문일 수 있음)(https://blogs.technet.com/b/stefan_gossner/archive/2009/11/04/content-deployment-the-complete-guide-part-5-quick-deployment.aspx)(영문일 수 있음)를 참조하십시오.

11. 대상 사이트를 직접 편집하지 않음

콘텐츠 변경 내용을 빠르게 배포해야 하는 경우 대상 사이트를 직접 편집하지 마십시오. 이렇게 하면 다음 배포 시 콘텐츠를 덮어씁니다. 대신 빠른 배포 작업을 사용하여 사이트를 빠르게 업데이트하십시오. 자세한 내용은 빠른 배포 작업 관리를 참조하십시오.

12. 내보내기 서버에서 SQL Server 데이터베이스 스냅숏 사용

SQL Server 데이터베이스 스냅숏 옵션을 사용하면 콘텐츠 배포 작업이 실행되는 동안 사용자가 콘텐츠 데이터베이스의 콘텐츠를 편집할 가능성이 없어집니다. 데이터베이스 스냅숏 옵션을 사용하도록 설정하는 경우 콘텐츠 배포 작업의 내보내기 단계가 시작되기 전에 원본 콘텐츠 데이터베이스의 스냅숏이 만들어집니다. 그런 다음 콘텐츠 배포 작업은 라이브 콘텐츠 데이터베이스에서 직접 내보내는 대신 데이터베이스 스냅숏을 사용하여 내보내기를 수행합니다. 내보내기가 성공적으로 완료되면 스냅숏이 삭제됩니다. SQL Server 데이터베이스 스냅숏 옵션은 데이터베이스 서버에서 Microsoft SQL Server 2008 Enterprise를 실행 중인 경우에만 사용 가능합니다.

13. 콘텐츠 배포를 인식하는 코드 작성

솔루션 패키지에서 콘텐츠 데이터베이스에 데이터를 추가하는 기능을 배포하는 경우에는 주의하십시오. 원본 팜에서만 콘텐츠 데이터베이스에 데이터를 추가해야 합니다. 콘텐츠 배포를 수행하면 배포 작업 중에 필요한 모든 데이터가 원본 사이트에서 대상 사이트로 이동됩니다. 가져오기 작업 중에 충돌을 방지하려면, 대상 사이트에서 사이트 콘텐츠를 수정하는 사용자 지정 이벤트 수신기 또는 기능 수신기가 SPImportContext 클래스를 사용해야 합니다. 이 클래스를 통해 이벤트 처리기 및 기능 활성화 코드는 자신이 현재 실행되고 있는 컨텍스트가 가져오기 작업 컨텍스트인지를 확인할 수 있습니다. 개발자는 이러한 방식으로 코드를 구현하여 콘텐츠 배포의 가져오기 단계 중에 발생 가능한 문제를 방지할 수 있습니다. 예를 들어 기능 수신기가 새 항목을 목록에 추가하는 사용자 지정 코드를 포함하는 경우 개발자는 기능 수신기 알고리즘을 통해 기능 수신기가 콘텐츠 배포 작업 컨텍스트에서 실행 중인지 검색하고, 배포 작업 컨텍스트로 실행되는 경우 검색된 역할이 대상 사이트이면 데이터 업데이트를 건너뛰도록 해야 합니다. 가져오기 중에 새 목록 항목 기능 수신기가 대상 사이트에서 활성화됩니다. 사이트 역할이 검색되지 않으면 기능 수신기는 새 콘텐츠를 대상 사이트에 추가합니다. 그러나 가져오기 프로세스에서는 원본 사이트에서 동일한 콘텐츠를 가져오려고 하며, 그러면 가져오기 오류가 발생하거나 대상 사이트에서 콘텐츠가 중복될 수 있습니다. 따라서 기능 수신기를 작성하는 개발자는 이러한 제한을 염두에 두고 적절한 코드를 작성해야 합니다. 자세한 내용은 SPImportContext 클래스(영문일 수 있음)(https://msdn.microsoft.com/ko-kr/library/microsoft.sharepoint.deployment.spimportcontext.aspx)(영문일 수 있음) 및 SP2010에서 콘텐츠 배포를 인식하는 이벤트 처리기 및 기능 활성화 코드 작성(영문일 수 있음)(https://blogs.technet.com/b/stefan_gossner/archive/2010/05/25/write-content-deployment-aware-event-handlers-and-feature-activation-code-in-sp2010.aspx)(영문일 수 있음)을 참조하십시오.

도움 주신 분

SharePoint Server 2010 콘텐츠 게시 팀에서는 이 문서 작성에 도움을 주신 다음 기고자 여러분에게 감사의 뜻을 전합니다.

  • Ethan Gur-Esh(Microsoft Enterprise Content Management)

  • Israel Vega, Jr.(Microsoft Consulting Services)

  • Josh Stickler(Microsoft Enterprise Content Management)

  • Stefan Goβner(Microsoft SharePoint Escalation Services)

  • Steve Walker(Microsoft SharePoint Customer Advisory Team)

See Also

Concepts

모범 사례(SharePoint Server 2010)