Bereitstellen von Paketen mit CRM Package Deployer und Windows PowerShell
Veröffentlicht: November 2016
Gilt für: Dynamics CRM 2015
Microsoft Dynamics CRM Package Deployer eröaubt es Administratoren, Pakete auf einer Microsoft Dynamics CRM (lokale Version)- oder Microsoft Dynamics CRM Online-Instanz bereitzustellen. Ein "Paket" kann aus einem oder allen der folgenden Elemente bestehen:
Eine oder mehrere Dynamics 365-Lösungsdateien.
Flache Dateien oder exportierte Datendateien aus dem Konfigurationsmigrationstool. Weitere Informationen zum Konfigurationsmigrationstool finden Sie in der Konfigurationsdaten verwalten.
Benutzerdefinierter Code, der ausgeführt werden kann, während oder nachdem das Paket auf Microsoft Dynamics 365 bereitgestellt wurde.
Inhaltsspezifische HTML für das Paket, das bei Start und Ende des Paketbereitstellungsprozesses angezeigt werden kann. Dies kann nützlich sein, um eine Beschreibung der Lösungen und Dateien bereitzustellen, die im Paket bereitgestellt werden.
Entwickler erstellen Pakete, indem sie die Paketbereitstellungsvorlage in Microsoft Visual Studio verwenden.Weitere Informationen:MSDN: Erstellen von Paketen für den CRM Package Deployer
Nachdem das Paket erstellt wurde, können Sie es entweder bereitstellen, indem Sie CRM-Paketbereitstellungsprogramm ausführen, oder indem Sie Windows PowerShell-cmdlets für das Tool verwenden.
In diesem Thema
Verwendung des CRM-Paket-Bereitstellertools, um Pakete bereitzustellen
Verwenden von Windows PowerShell, um Pakete bereitzustellen
Paketbereitstellungsprobleme mithilfe der Protokolldateien beheben
Bewährte Methoden für die Bereitstellung von Paketen
Verwendung des CRM-Paket-Bereitstellertools, um Pakete bereitzustellen
Das Paketbereitstellungstool kan nur ein Paket gleichzeitig bereitstellen. Es bietet Benutzern jedoch die Möglichkeit, unter mehreren Paketen, die im Paketbereitstellungstool-Verzeichnis verfügbar sind, ein Paket zur bereitstellung auszuwählen. Einige der Bildschirme und Aktionen im Tool variieren aufgrund der Paketdefinition. Sie müssen das Paketbereitstellungstool nicht installiert haben. Laden Sie es einfach herunter und führen Sie es aus.
Erhalten Sie das Paket, das bereitgestellt werden soll. Ein Paket ist eine Sammlung von Dateien und Ordnern, die im Visual Studio-Projektordner (<Project>\Bin\Debug) erstellt werden, wenn Sie Ihr Paketprojekt in Visual Studio erstellen. Kopieren Sie Folgendes im Projekt-Debug-Ordner:
<PackageName>-Ordner: Dieser Ordner enthält die Lösungen, Importkonfiguration und Inhalte für das Paket.
<PackageName>.dll: Die Assembly enthält den Code für das Paket. Standardmäßig ist der Name der Assemblys identisch mit Visual Studio-Projektname.
Ausführliche Informationen zum Erstellen eines Pakets mit Visual Studio finden Sie unter MSDN: Erstellen eines Pakets für das Paketbereitstellungstool.
In diesem Thema wird angenommen, dass Paketordner und -Assembly im Visual Studio-Projekt-Debug-Ordner (<Project>\Bin\Debug) in den Ordner c:\DeployPackage kopiert werden.
Laden Sie das Microsoft Dynamics CRM SDK-Paket herunter. Führen Sie dann die Paketdatei aus, um den Inhalt des Pakets zu extrahieren.
Durchsuchen Sie den SDK\Tools\PackageDeployer-Ordner, und kopieren Sie Paketordner und -Assembly aus dem c:\DeployPackage-Ordner in den SDK\Tools\PackageDeployer-Ordner.
Nachdem die Dateien kopiert wurden, führen Sie das Tool aus, indem Sie auf die Datei PackageDeployer.exe im Ordner SDK\Tools\PackageDeployer doppelklicken.
Im Hauptbildschirm des Tools klicken Sie auf Weiter.
Geben Sie im Bildschirm Verbinden mit Microsoft Dynamics CRM Authentifizierungsdetails ein, um eine Verbindung mit Ihrem Dynamics 365-Server herzustellen, in der Sie das Paket bereitstellen möchten. Wenn Sie mehrere Organisationen haben und die Organisation auswählen wollen, in der Sie das Paket bereitstellen möchten, wählen Sie das Kontrollkästchen Immer Liste der verfügbaren Organisationen anzeigen aus. Klicken Sie auf Anmeldung.
Wenn Sie mehrere Organisationen auf Dynamics 365 haben und das Kontrollkästchen Immer Liste mit verfügbaren Organisationen anzeigen markiert haben, können Sie auf dem nächsten Bildschirm die Organisation auswählen, mit der Sie eine Verbindung herstellen möchten. Wählen Sie eine Dynamics 365-Organisation für die Verbindung aus.
Im folgenden Bildschirm werden Sie aufgefordert, ein Paket zum Bereitstellen auszuwählen. Wählen Sie den Paketnamen aus, und klicken Sie auf Weiter.
Befolgen Sie die Anweisungen auf den folgenden Bildschirmen, um die Bereitstellung des Pakets abzuschließen.
Die Bildschirme werden basierend auf der Definition des Pakets angezeigt, das Sie für die Bereitstellung ausgewählt haben. Für eine vollständige Paketbereitstellung, die Paketbereitstellungstool verwendet, lesen Sie das Thema für die Bereitstellung von Unified Service Desk-Paketen: Erstellen von Unified Service Desk-Beispielanwendungen für CRM Server mithilfe von Package Deployer.
Verwenden von Windows PowerShell, um Pakete bereitzustellen
Das Paketbereitstellungstool stellt auch Windows PowerShell-Support bereit, um Pakete bereitzustellen.
Führen Sie folgende Schritte aus, um die PowerShell-cmdlets zu verwenden, um Pakete bereitzustellen:
Voraussetzungen
Registrieren des Cmdlets
Verwenden des Cmdlet zum Abrufen von Paketen
Verwenden des Cmdlet, um die verbindung mit dem CRM Server herzustellen
Verwenden des Cmdlet zum Bereitstellen von Paketen
Ausführliche Hilfe zu Cmdlets erhalten
Voraussetzungen
Die Voraussetzungen für die Verwendung der PowerShell-Cmdlets:
PowerShell 3.0 oder höher ist erforderlich, um Pakete bereitzustellen, indem PowerShell verwendet wird. Rufen Sie zur Prüfung der PowerShell-Version ein PowerShell-Fenster auf und führen Sie dann den folgenden Befehl aus: $Host.
Legen Sie die Ausführungsrichtlinie für die Ausführung der signierten PowerShell-Scripts fest. Rufen Sie hierzu als Administrator ein PowerShell-Fenster auf und führen Sie den folgenden Befehl aus: Set-ExecutionPolicy -ExecutionPolicy AllSigned
Registrieren des Cmdlets
Sie müssen die Windows PowerShell-cmdlets für das Paketbereitstellungstool registrieren, bevor Sie es verwenden können. Um die cmdlets zu registrieren:
Wenn noch nicht geschehen, laden Sie die das Dynamics 365-SDK-Paket von Microsoft Download Center herunter, und führen Sie die Paketdatei aus, um den Inhalt des Pakets zu extrahieren. Angenommen, Sie haben das Paket in den Ordner c:\CRM auf dem Computer extrahiert. Das Paketbereitstellungstool und die anderen erforderlichen Dateien werden an dem folgenden Ort verfügbar: c:\CRM\SDK\Tools\PackageDeployer.
Starten Sie Windows PowerShell auf dem Computer mit erweiterten Rechten (als Administrator ausführen.)
Bei der Eingabeaufforderung im Windows PowerShell-Fenster ändern Sie das Verzeichnis im Windows PowerShell-Ornder unter dem PackageDeployer-Ordner. In diesem Fall:
cd c:\CRM\SDK\Tools\PackageDeployer\PowerShell
Führen Sie das Skript RegisterXRMTooling.ps1 aus, um die Package Deployer Windows PowerShell-Assembly (dll) anzumelden, und installieren Sie das Windows PowerShell-Snap-in für Paketbereitstellungstool. Geben Sie dazu den folgenden Befehl ein, und drücken Sie die EINGABETASTE:
.\RegisterXRMTooling.ps1
Fügen Sie das Windows PowerShell-Snap-In für XRM-Tooling hinzu: Dieses registriert die folgenden Cmdlets: Get-CrmConnection und Get-CrmOrganizations.
Add-PSSnapin Microsoft.Xrm.Tooling.Connector
Fügen Sie das Windows PowerShell-Snap-In für Paketbereitstellung hinzu: Dieses registriert die folgenden Cmdlets: Get-CrmPackages und Import-CrmPackage.
Add-PSSnapin Microsoft.Xrm.Tooling.PackageDeployment
Sie können jetzt diese Windows PowerShell-Cmdlets kann verwenden. Um die Cmdlets aufzulisten, die Sie registriert haben, führen Sie den folgenden Befehl an der Eingabeaufforderung im Windows PowerShell-Fenster aus.
Get-Help “Crm”
Verwenden des Cmdlet zum Abrufen von Paketen
Bevor Sie das Cmdlet verwenden können, sollten Sie sicherstellen, dass Sie das Paket in den Ordner PackageDeployer kopiert haben (in diesem Fall: c:\CRM\SDK\Tools\PackageDeployer). Ein Paket ist eine Sammlung von Dateien und Ordner, die im Visual Studio-Projektordner (<Project>\Bin\Debug) erstellt werden, wenn Sie Ihr Projekt in Visual Studio erstellen. Kopieren Sie die gesamten Inhalt des Projekt-Debug-Ordners in den Ordner PackageDeployer. Ausführliche Informationen zum Erstellen eines Pakets mit Visual Studio finden Sie unter MSDN: Erstellen von Paketen für CRM Package Deployer.
Im PowerShell-Fenster verwenden Sie folgendes Cmdlet, um eine Liste der Pakete zurückzugeben, die für den Import im angegebenen Verzeichnis verfügbar sind (in diesem Fall c:\CRM\SDK\Tools\PackageDeployer):
Get-CrmPackages –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer
Wenn Sie Informationen zu einem Paket in einem Verzeichnis benötigen, können Sie das Get-CrmOrganization-Cmdlet zusammen mit dem Parameter –PackageName verwenden, um den Namen der Assemblys im Verzeichnis anzugeben, das die Paketdefinition enthält.
Get-CrmPackages –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer –PackageName SampleCRMPackage.dll
Verwenden des Cmdlet, um die verbindung mit dem CRM Server herzustellen
Stellen Sie die Anmeldeinformationen für die Verbindun mit Ihrer Microsoft Dynamics CRM Online- oder Microsoft Dynamics CRM (lokale Version)-Instanz bereit. Bei Ausführung des folgenden Befehls werden Sie aufgefordert, Ihren Benutzernamen und Ihr Kennwort einzugeben, um eine Verbindung mit der Dynamics 365-Instanz herzustellen, und wir speichern sie in der Datei $Cred und verwenden diese später für die Verbindung mkt Ihrem CRM-Server.
$Cred = Get-Credential
Verwenden Sie den folgenden Befehl, um eine Verbindung mit der Microsoft Dynamics CRM Online- oder Microsoft Dynamics CRM (lokale Version)-Instanz zu erhalten. Wir speichern die Verbindungsinformationen in der $CRMConn-Variablen:
Wenn Sie eine Verbindung mit der Microsoft Dynamics CRM (lokale Version)-Instanz herstellen:
$CRMConn = Get-CrmConnection -ServerUrl http://<your_CRM_Server> -OrganizationName <your_Org_Name> -Credential $Cred
Wenn Sie eine Verbindung mit dem Microsoft Dynamics CRM Online-Server herstellen:
$CRMConn = Get-CrmConnection -DeploymentRegion NorthAmerica –OnlineType Office365 –OrganizationName <your_Org_Name> -Credential $Cred
Hinweis
Für den Parameter DeploymentRegion sind gültige Werte Nordamerika, EMEA und APAC. Für den Parameter OnlineType sind gültige Werte Office 365 und LiveID.
Die angegebenen Anmeldeinformationen werden überprüft, wenn Sie den befehl in Schritt 2 ausführen.
Verwenden des Cmdlet zum Bereitstellen von Paketen
Anschließend können Sie die CRM-Verbindungsinformationen verwenden, die in der$CRMConn-Variablen gespeichert sind, um Pakete in der Dynamics 365-Instanz Pakete bereitzustellen. Führen Sie den folgenden Befehl aus, um das Paket bereitzustellen:
Import-CrmPackage –CrmConnection $CRMConn –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer –PackageName SampleCRMPackage.dll –UnpackFilesDirectory c:\UnpackedFiles -Verbose
Hinweis
-
PackageDirectory, CrmConnection und PackageName-Parameter sind erforderlich.
-
Für den Parameter PackageName müssen Sie den Namen derAssembly angeben, die die Paketdefinition enthält.
-
Sie müssen nicht den Parameter UnpackFilesDirectory angeben, wenn das Paket während der Paketbereitstellung keine Dateien entpackt. Bei der Definition eines Pakets in Visual Studio geben Sie an, ob die Dateien mithilfe des Parameters agentdesktopzipfile in der ImportConfig.xml-Datei entpackt werden.Weitere Informationen:MSDN: Erstellen von Paketen für den CRM Package Deployer
-
Der Parameter Verbose ist optional und wird verwendet, um ein detailliertes Protokoll der Aktivitäten anzuzeigen, die beim Paketbereitstellungsprozesses ausgeführt werden.
Ausführliche Hilfe zu Cmdlets erhalten
Im PowerShell-Fenster verwenden Sie das Get-Help-Cmdlet, um eine ausführliche Hilfe zum Cmdlet anzuzeigen. Beispielsweise, um ausführliche Hilfe zumImport-CrmPackage-Cmdlet zu erhalten:
Get-Help Import-CrmPackage -full
Um die Onlinehilfe zu den Cmdlets anzuzeigen, siehe CRM-PowerShell-Referenz.
Paketbereitstellungsprobleme mithilfe der Protokolldateien beheben
Das Paketbereitstellungstool stellt Protokollierungssupport zum Abrufen detaillierter Fehlerinformationen zur Verfügung, die während der Anmeldung bei der Microsoft Dynamics CRM-Instanz unter Verwendung des Tools und der Bereitstellung von Paketen auftreten können. Das Tool generiert drei Protokolldateien, die durch das Tool generiert werden und unter dem folgenden Speicherort auf dem Computer verfügbar sind, auf dem Sie das Tool verwenden: c: \Users\<UserName>\AppData\Roaming\Microsoft\PackageDeployer\<Version>.
Login_ErrorLog.log: Dadurch werden Informationen zu Problemen angegeben, die während der Verwendung des Tools zur Anmeldung bei der Dynamics 365 aufgetreten sind. Wenn es Probleme gibt während der Anmeldung gibt, wird auf dem Anmeldungsbildschirm des Tools eine Meldung mit einem Link zu dieser Protokolldatei angezeigt. Die Meldung besagt, dass ein Fehler beim Verarbeiten der Anmeldeanforderung aufgetreten ist und der Benutzers kann das Fehlerprotokoll anzeigen. Sie können auf den Link in der Meldung klicken, um diese Protokolldatei anzuzeigen. Die Protokolldatei wird erstellt, wenn zum ersten Mal Anmeldungsprobleme in dem Tool auftreten. Danach wird die Protokolldatei verwendet, um Informationen über ein Anmeldungsproblem aufzuzeichnen, wann immer es auftritt.
PackageDeployer.log: Bietet detaillierte Informationen zu der jeweiligen Aufgabe, die während der Bereitstellung der Pakete im Tool ausgeführt wird. Sie können die Protiokolldatei im Tool anzeigen, indem Sie auf auf den Link Protokolldatei anzeigen unten auf dem Bildschirm klicken.
ComplexImportDetail.log: Bietet detaillierte Informationen zu den Daten, die in der letzten Bereitstellung mithilfe der Tools importiert wurden. Bei jeder Bereitstellung eines Paketes unter Verwendung dieses Tools werden die vorhandenen Details der Protokolldatei in eine Datei namens ComplexImportDetail._old.log in demselben Verzeichnis verschoben und die ComplexImportDetail.log-Datei zeigt Informationen über die aktuellen, mit dem Tool vorgenommenen Importvorgänge an.
Bewährte Methoden für die Bereitstellung von Paketen
Beim Bereitstellen von Dynamics 365-Paketen müssen Administratoren:
Auf einer signierten Paketassembly bestehen, damit sie eine Assembly bis zu ihrer Quelle zurück nachverfolgen können.
das Paket auf einer Vor-Produktionsinstanz testen, (vorzugsweise als Spiegelbild der Produktionsinstanz), bevor sie in einer Produktionsinstanz ausgeführt wird.
Eine Sicherungskopie der Produktionsinstanz erstellen, bevor ein Paket bereitgestellt wird.
Siehe auch
MSDN: Erstellen von Paketen für den CRM Package Deployer
Verwalten von CRM 2015
© 2016 Microsoft Corporation. Alle Rechte vorbehalten. Copyright