Package Deployer 및 Windows PowerShell을 사용하여 패키지 배포

Microsoft Dynamics CRM Package Deployer를 사용하면 관리자가 환경에 패키지를 배포할 수 있습니다.

노트

Package Deployer는 Dynamics 365 Customer Engagement (on-premises) 조직에서도 작동합니다.

"패키지"는 다음 중 일부 또는 전부로 구성될 수 있습니다.

  • 하나 이상의 Dataverse 솔루션 파일.

  • 플랫 파일 또는 Configuration Migration 도구에서 내보낸 데이터 파일. Configuration Migration 도구에 대한 자세한 내용은 구성 데이터 관리를 참조하십시오.

  • 패키지를 환경에 배포하는 동안 또는 배포 후 실행할 수 있는 사용자 지정 코드입니다.

  • 패키지 배포 프로세스의 시작 및 끝에 표시할 수 있는, 패키지에 고유한 HTML 콘텐츠. 패키지에 배포되는 솔루션 및 파일의 설명을 제공하는 데 유용합니다.

    개발자는 Visual Studio에서 패키지 배포 템플릿을 사용하여 패키지를 만듭니다. 추가 정보: Package Deployer용 패키지 만들기

    패키지를 만든 후 CRM Package Deployer를 실행하거나 도구용 Windows PowerShell cmdlet을 사용하여 패키지를 배포할 수 있습니다.

중요

생산 조직에 패키지를 가져와 실행하기 전에, 먼저 생산 조직의 비생산 거울 이미지에서 패키지를 테스트합니다.

패키지를 배포하기 전에 생산 조직을 항상 백업합니다.


Package Deployer 도구로 패키지 배포

Package Deployer 도구(packagedeployer.exe)를 사용하여 패키지를 다음과 같은 방식으로 배포할 수 있습니다.

CRM Package Deployer 도구를 사용하여 패키지를 배포하세요

명령줄에서 CRM Package Deployer 도구를 사용하세요

Package Deployer 도구를 사용하여 패키지 배포

Package Deployer 도구는 패키지를 한 번에 하나씩만 처리할 수 있습니다. 하지만 Package Deployer 도구 디렉터리에서 사용할 수 있는 여러 패키지에서 패키지를 선택할 수 있는 기능을 사용자에게 제공합니다. 도구의 일부 화면 및 작업은 패키지 정의에 따라 다릅니다. Package Deployer 도구를 설치할 필요가 없습니다. 다운로드하고 실행하면 됩니다.

  1. 배포할 패키지를 확보합니다. 패키지는 Visual Studio에서 패키지 프로젝트를 빌드할 때 Visual Studio 프로젝트 폴더(<Project>\Bin\Debug)에 생성되는 파일 및 폴더의 모음입니다. 프로젝트 디버그 폴더에서 다음을 복사합니다.

    • <패키지 이름> 폴더: 이 폴더에는 솔루션, 가져오기 구성 및 패키지 콘텐츠가 들어 있습니다.

    • <PackageName>.DLL: 어셈블리에는 패키지에 대한 코드가 포함되어 있습니다. 기본적으로 어셈블리의 이름은 Visual Studio 프로젝트 이름과 동일합니다.

      Visual Studio를 사용하여 패키지를 만드는 방법에 대한 자세한 내용은 Package Deployer 도구에 대한 패키지 만들기를 참조하십시오.

      이 항목에 대해 Visual Studio 프로젝트 디버거 폴더(<Project>\Bin\Debug)의 패키지 폴더와 어셈블리가 c:\DeployPackage 폴더로 복사된다고 가정합시다.

  2. Package Deployer 도구를 구합니다. Package Deployer 도구는 NuGet 패키지로 사용할 수 있습니다. Package Deployer를 사용하려면 다운로드 후 nuget.exe를 사용하여 로컬 컴퓨터에 압축을 풀어야 합니다.

    https://www.nuget.org/downloads에서 nuget.exe를 다운로드하고 d:\와 같이 컴퓨터에 저장합니다. 그런 다음 명령 프롬프트에서 다음 명령을 실행하여 컴퓨터의 폴더, 예컨대 PD에 패키지 내용을 추출합니다.
    d:\nuget install Microsoft.CrmSdk.XrmTooling.PackageDeployment.Wpf -Version [VERSION] -O d:\PD

    Package Deployer 도구를 추출한 후에는 [ExtractedLocation]\tools 폴더로 이동하여 PackageDeployer.exe 파일을 찾습니다.

  3. 패키지 폴더와 어셈블리를 c:\DeployPackage에서 [ExtractedLocation]\tools 폴더로 복사합니다.

  4. 파일을 복사한 후 [ExtractedLocation]\tools 폴더에서 PackageDeployer.exe 파일을 두 번 클릭하여 도구를 실행합니다.

  5. 도구의 기본 화면에서 계속을 클릭합니다.

  6. Microsoft Dynamics 365 for Customer Engagement에 연결 화면에서 패키지를 배포할 Dynamics 365 Server에 연결하는 데 필요한 인증 정보를 제공합니다. 여러 조직이 있어서 패키지를 배포할 조직을 선택하려면 사용 가능한 조직 목록 항상 표시 확인란을 선택합니다. 로그인을 클릭합니다.

  7. Dynamics 365 Server에 여러 조직이 있는 경우 연결할 Dynamics 365 앱 조직을 선택합니다.

  8. 배포할 패키지를 선택하고 다음을 클릭합니다.

    Package Deployer 도구에서 패키지 선택.

  9. 다음 화면의 지침에 따라 패키지 배포 작업을 완료합니다.

    화면은 배포를 위해 선택한 패키지의 정의에 따라 나타납니다. Package Deployer 도구를 사용하는 종단 간 패키지 배포에 대해서는 Unified Service Desk 패키지 배포에 대한 토픽 Package Deployer를 사용하여 CRM 서버에 샘플 Unified Service Desk 애플리케이션 배포를 참조하세요.

명령줄에서 Package Deployer 도구 사용

시스템 관리자 및 사용자 지정자는 명령줄에서 packagedeployer.exe로 국가별 언어 코드 등의 항목을 전달할 수 있습니다. 이러한 매개 변수는 명령줄에서 Package Deployer 도구를 실행하는 방법을 통해서만 구성이 가능할 수 있습니다.

노트

해당 기능은 Dynamics CRM Online 2016 Update 0.1에서 처음 도입되었습니다.

이 표에서 사용할 수 있는 매개 변수입니다.

매개 변수 Description 기본값
RuntimePackageSettings Packagedeployer.exe에서 LCID 및 SkipChecks 같은 명령줄 매개 변수를 허용하도록 지시합니다. 해당 없음
LCID=localeID 패키지의 사용 가능한 로캘 ID에서 영어-미국용 1033 또는 프랑스어-프랑스용 1036 같은 로캘 ID를 지정합니다. 지정하지 않을 경우 기본 언어가 사용됩니다. 기본 언어 사용
SkipChecks=true/false 이 항목은 대상 환경이 다른 솔루션 또는 맞춤화를 포함하지 않은 경우에만 사용해야 합니다. true로 설정하면 솔루션 가져오기가 가져오기 성능을 향상시킬 수 있는 몇 가지 안전 검사를 건너뜁니다. False

다음 예제는 CRM Package Deployer에서 몇 가지 안전 검사를 건너뛰고 가져올 언어를 폴란드어로 지정하도록 지시합니다.

packagedeployer.exe /Settings:"SkipChecks=true|lcid=1045"

노트

파이프 문자 |를 사용하여 명령줄에서 여러 항목과 함께 packagedeployer.exe를 실행할 때 항목을 구분합니다.

packagedeployer.exe로 전달될 수 있는 매개 변수 및 값에 대한 자세한 내용은 CRM Package Deployer용 패키지 만들기를 참조하십시오.

Windows PowerShell을 사용하여 패키지 배포

Package Deployer 도구는 패키지를 배포하기 위해 Windows PowerShell 지원도 제공합니다. 추가 정보: 패키지 배포 모듈 사용 시작하기

로그 파일을 사용하여 패키지 배포 문제 해결

Package Deployer 도구는 도구 및 배포 패키지를 사용하여 Microsoft Dynamics 365 for Customer Engagement 인스턴스에 로그인할 때 발생할 수 있는 오류에 대한 자세한 정보를 얻도록 로깅 지원을 제공합니다. 기본적으로 도구는 도구를 실행하는 컴퓨터의 다음 위치에서 사용할 수 있는 세 개의 로그 파일을 생성합니다. c:\Users\<UserName>\AppData\Roaming\Microsoft\Microsoft Dynamics CRM Package Deployer\<Version>. 다른 폴더를 지정하려면 -LogWriteDirectory PowerShell cmdlet 항목을 사용하세요. 추가 정보: cmdlet를 사용하여 패키지 검색

  • Login_ErrorLog.log: Dynamics 365 인스턴스에 로그인하기 위해 도구를 사용할 때 발생한 문제에 대한 정보를 제공합니다. 로그인하는 동안 문제가 있는 경우 메시지가 이 로그 파일에 대한 링크와 함께 도구의 로그인 화면에 나타납니다. 로그인 요청을 처리하는 동안 오류가 발생했고 사용자는 오류 로그를 볼 수 있다는 메시지가 나타납니다. 메시지의 링크를 클릭하여 이 로그 파일을 볼 수 있습니다. 도구에서 로그인 문제가 발생할 경우 로그 파일이 처음 만들어집니다. 그 후로 로그 파일은 문제가 발생할 때마다 로그인 문제에 대한 정보를 기록하는 데 사용됩니다.

  • PackageDeployer.log: 패키지 배포 중 도구에서 수행된 각 작업에 대한 자세한 정보를 제공합니다. 화면 아래쪽의 로그 파일 보기 링크를 클릭하면 도구에서 로그 파일을 볼 수 있습니다.

  • ComplexImportDetail.log: 도구를 사용하여 마지막 배포에서 가져온 데이터에 대한 자세한 정보를 제공합니다. 이 도구를 사용하여 패키지를 배포할 때마다 로그 파일의 기존 정보는 동일한 디렉터리의 ComplexImportDetail._old.log 파일로 이동하고 ComplexImportDetail.log 파일은 도구를 사용하여 수행한 마지막 가져오기에 대한 정보를 표시합니다.

패키지를 배포하기 위한 최상의 방법

패키지를 배포하는 동안 Dynamics 365 관리자는 다음을 수행해야 합니다.

  • 어셈블리 원본에 다시 추적할 수 있도록 서명된 패키지 어셈블리를 요구합니다.

  • 패키지를 프로덕션 서버에서 실행하기 전에 테스트 인스턴스(프로덕션 인스턴스의 미러 이미지)에서 테스트합니다.

  • 패키지를 배포하기 전에 프로덕션 인스턴스를 백업합니다.

참조

CRM을 위한 패키지 생성 Package Deployer