SharePoint 2010: Lösung verpacken

Nachdem Sie Ihre SharePoint-Lösungen entwickelt haben, ist wie Sie verpacken und Bereitstellen von ihnen der letzte Teil des Prozesses.

Steve Wright und Corey Erkes

Adaptiert von "Pro SharePoint 2010 Governance" (Apress, 2012)

Beim Entwickeln von Lösungen in SharePoint verwenden, müssen Sie noch Optionen, wie Verpacken und Bereitstellen von Lösungen. SharePoint verwendet das Lösungsframework um benutzerdefinierte Erweiterungen innerhalb von SharePoint-Umgebungen zu installieren.

Das Lösungsframework können Sie bereitstellen, aktivieren und Aktualisieren von benutzerdefinierte Komponenten kontrolliert. Diese Struktur soll die SharePoint-Serverfarm stabil zu halten. Ihre Lösungspakete können Ressourcendateien für ein kohärentes Konzept für die Lokalisierung Ihrer benutzerdefinierten Komponenten enthalten. Das Lösungsframework ersetzt andere Installer-Technologien in Windows-Umgebungen wie Microsoft Installer (MSI)-Dateien und ClickOnce verwendet.

Lösungspakete bieten auch eine Möglichkeit, alle Komponenten einer benutzerdefinierten Erweiterung in eine Datei mit der Erweiterung WSP zugeordnet zu bündeln. Dann können Sie diese Dateien auf der Farm bereitstellen, so dass alle Komponenten gleichzeitig auf allen Servern in der Serverfarm installiert werden. Dadurch entfällt die Notwendigkeit, Webseite, Vorlagen und ausführbare Dateien separat auf jedem Server pflegen.

SharePoint 2010, die Lösungsframework auch neue enthält verfügt, mit deren Hilfe Sie Lösungspakete an Stelle aktualisieren, ohne Bauernhof Betrieb stören. Hierzu können Sie durch Versionierung, die jedes Feature und Bereitstellung von benutzerdefinierte Aktionen für das Upgrade von einer Version eines Features zu einem anderen bereitgestellt.

Lösungspakete

Eine Lösungspaketdatei ist eine einzelne Datei mit der Erweiterung WSP. Jedoch kann was scheint, eine Datei sein in der Tat mehrere Dateien, die in einem sein. Die WSP-Datei-Format ist eigentlich nichts anderes als eine standard Windows CAB (CAB)-Datei. Um dies zu beweisen, nehmen Sie jede Lösungsdatei und ändern Sie die Erweiterung von WSP CAB. Jetzt öffnen Sie die Datei, und Sie werden sehen, dass die Dateistruktur.

Es ist eine Paket-manifest-Datei in das Root-Verzeichnis und ein oder mehrere Unterverzeichnisse mit den anderen Komponenten. Viele dieser Komponenten sind XML-Dateien mit Konfigurationsinformationen für Listen, Websites, Inhaltstypen und so weiter.

Die zweithäufigste-Dateien finden Sie in einem Lösungspaket sind:

  • **"Manifest.xml":**Es gibt eine manifest-Datei in einem Paket. Es enthält eine Beschreibung aller im Paket, entweder direkt oder durch Verweise auf andere Dateien.
  • **Feature.XML:**Diese Dateien beschreiben die Konfiguration und die Komponenten einer Funktion zugeordnet. Sie können diese ein- oder ausschalten in der SharePoint-Umgebung aktivieren.
  • **Elements.XML:**Diese Dateien enthalten die Listen der einzelnen Komponenten und ihre Konfigurationsinformationen. Komponenten sind Elemente wie Listeninstanzen, Inhaltsdateien, Websitespalten, Inhaltstypen und Ereignisempfänger.
  • **Schema.XML:**Diese Dateien enthalten die Metadatenspezifikationen für ein Objekt z. B. eine Listenvorlage.

Es gibt viele andere Arten von Dateien, die in ein Lösungspaket erscheinen, aber dies sind die wichtigsten. Steuern sie die Konfiguration der Features und Komponenten. Bevor Sie sie verwenden, müssen Sie ein wenig über die Umgebung verstehen, denen sie bereitgestellt werden, werden.

Deployment-Umgebungen zu verstehen

Wenn Sie ein Lösungspaket in einer SharePoint-Serverfarm bereitstellen, stellt diese in einem der zwei Laufzeitumgebungen bereit. Die erste Umgebung ist der Serverfarm selbst. Dadurch können den Lösungskomponenten Zugriff auf Ressourcen in der gesamten Farm und darüber hinaus, innerhalb der Grenzen der Zugriffsberechtigungen für diese Elemente.

Die zweite Umgebung — die Sandbox — ist weit geringer. Wenn ein Lösungspaket in der Sandbox ausgeführt wird, ist seine Fähigkeit, Einfluss auf die Farm als Ganzes beschränkt. Verständnis des Unterschied zwischen Bauernhof und Sandbox-Lösungen ist entscheidend für die Bereitstellungsplanung für benutzerdefinierte Erweiterungen.

Das erste, was zu beachten ist, wo die Lösung bereitgestellt werden. Farm Lösungen gelten global für die Serverfarm. Sandbox Lösungen sind lokal auf eine bestimmte Websitesammlung. Wenn mehrere Websitesammlungen Sandbox-Lösung verwenden müssen, müssen Sie für jedes einzelne getrennt bereitstellen.

Sicherheit ist der wichtigste Unterschied zwischen Bauernhof und in einer Sandbox ausgeführten Lösungen. Farm Lösungen in der Regel mit voller Vertrauenswürdigkeit ausgeführt. .NET Code Access Security (CAS) verwenden, erstellen Sie Bauernhof Lösungskomponenten, die weniger als voll vertrauenswürdig ausgeführt. Dies ist eine gute Idee vom Sicherheitsstandpunkt, da den Code mit der minimalen Berechtigungen ausführen können. Reservieren Sie Serverfarm-Bereitstellung für gut getestete und äußerst vertrauenswürdigen Code.

Sandbox Lösungen führen in einer Umgebung mit Sicherheit sehr unterschiedlich. Ihr Zugang zu Ressourcen beschränkt sich auf die Websitesammlung, in der sie eingesetzt sind. Es gibt auch Ressource Einschränkungen und Kontingente, die Sie anwenden können, um Räuber Lösungskomponenten von Beeinträchtigung der Systemleistung zu verhindern. Sie können leicht deaktivieren allerletzter Sandbox Lösungen und verhindern, dass sie laufen völlig, wenn nötig.

Verwalten Sie Ihre Farm-Lösungen

Bereitstellen ein Lösungspaket in einer SharePoint-Serverfarm besteht aus zwei grundlegenden Operationen: Hinzufügen und bereitstellen. Hinzufügevorgang lädt die Datei in die SharePoint-Konfigurationsdatenbank, wo es von jedem Server in der Farm zugegriffen werden kann. Bereitstellung installiert die Dateien in verschiedenen Systemverzeichnissen auf jedem Server in der Farm.

Nur Farmadministratoren können Lösungen Bauernhof Lösungsspeicher hinzufügen. Es gibt keine Seite in der Zentraladministration, in dem Sie ein Paket hochladen können. Du musst dazu ein Befehlszeilentool. Sie können auch mithilfe der SharePoint-API Lösungen hinzufügen.

Um das STSADM-Tool verwenden, um das Paket hinzuzufügen, verwenden Sie einen Befehl wie den folgenden:

Stsadm -o Addsolution - Filename MySolution.wsp

Um den Vorgang mithilfe von Windows PowerShell auszuführen, verwenden Sie einen Befehl wie den folgenden:

Hinzufügen-SPSolution – LiteralPath MySolution.wsp

Sobald der Add-Vorgang abgeschlossen ist, erscheint das Paket auf der Seite Verwaltung der Lösung für die Zentraladministrationswebsite. Auch wenn Sie die Datei hochgeladen haben, sind nicht seine Eigenschaften noch einsatzbereit. Zu diesem Zeitpunkt noch nicht die Lösungsdateien auf jedem SharePoint Server installiert wurden.

Nachdem Sie Ihr Paket auf dem Bauernhof Lösungsspeicher hinzugefügt haben, können Sie sie auf der Farm bereitstellen. Es gibt zwei Möglichkeiten, Sie können ein Paket aus dem Bauernhof Speicher bereitstellen: lokale Bereitstellung und über einen Zeitgeberauftrag.

Eine lokale Bereitstellung installiert die Lösungsdateien auf einem Server in der Farm. Sie können nur diese Art der Bereitstellung mithilfe der Befehlszeile tun. Es wirken nur den Server, auf dem er ausgeführt wird. Sie werden nicht in der Lage, Ihre Lösung zu verwenden, bis sie auf allen Servern der Farm bereitgestellt wird. Daher müssen Sie die Bereitstellung auf jedem Server zu wiederholen.

Die häufiger Einsatz wird der SharePoint-Timerdienst verwendet. Sie können auf diese Weise mithilfe der Befehlszeile oder der SharePoint-Zentraladministration-Website bereitstellen. Wenn Sie die Bereitstellung starten, erstellt SharePoint einen Zeitgeberauftrag, der auf jedem Server in der Farm ausgeführt werden. Dies hat dieselbe Wirkung wie die lokale Bereitstellungen auf jedem Server durchführen.

Neben erlauben Ihnen, in einem einzigen Schritt bereitstellen, automatisiert Zeitgeber Auftrag Bereitstellungen auch der Prozess der Neustart des IIS-Arbeitsprozesse. Sie müssen dies tun, um SharePoint-die neue Lösung Dateien richtig erkennen lassen. Es möglicherweise ein kurzer Ausfall, wenn der IIS-Arbeitsprozess neu gestartet wird, aber es sollte nicht in den meisten Fällen mehr als ein paar Sekunden dauern.

Um eine Serverfarm-Bereitstellung von der Befehlszeile aus ausführen, können Sie entweder die Deploysolution - Option auf das Befehlszeilentool STSADM oder das Install-SPSolution-Cmdlet in Windows PowerShell. (Beachten Sie, dass das Windows PowerShell-Cmdlet Install-SPSolution, nicht bereitstellen-SPSolution aufgerufen wird.)

Beide dieser Befehle haben eine - lokale Flagge eine lokale Bereitstellung durchführen. Um einen Zeitgeberauftrag verwenden, die zu einem bestimmten Zeitpunkt ausgeführt wird, verwenden die - Zeitoption auf einen der Befehle. Um einen Zeitgeberauftrag verwenden, die sofort nach der Eingabe des Befehls ausgeführt wird, verwenden die - sofortige Option auf STSADM oder lassen Sie die - lokalen und -Zeit-Optionen der Windows PowerShell-Befehl.

Sie können verschiedene weitere Optionen angeben, wenn Sie eine Farm Lösung bereitstellen. Hier sind einige der wichtigsten:

  • **Webanwendung:**Einige Lösungen haben Ressourcen brauchen Sie in der Verzeichnisstruktur des IIS-Web-Anwendung bereitstellen. Wenn Sie eine Lösung bereitstellen, können Sie eine Reihe von Web-Anwendungen für diese Ressourcen als Ziel auswählen.
  • **Globaler Assemblys:**Wenn das Lösungspaket Assemblys, die Sie zu den globalen Assemblycache (GAC) bereitstellen möchten enthält, gibt es eine Option, die verhindert, dass Sie unwissentlich voll vertrauenswürdigen Code bereitstellen.
  • **CAS:**CAS-Richtlinien steuern die Berechtigungen von teilweise vertrauenswürdigem Code in der Farm ausgeführt. Wenn ein Lösungspaket neue CAS-Richtlinien enthält, müssen Sie das flag.

Sie können auch eine Lösung von der SharePoint-Zentraladministration-Website bereitstellen. Wählen Sie Systemeinstellungen aus dem linken Menü. Wählen Sie dann verwalten Farm Lösungen. Ein frisch hinzugefügten Paket erscheint mit dem Status nicht bereitgestellt.

Klicken Sie auf den Namen des Pakets und sehen Sie einen Bildschirm mit nützlichen Informationen über das Paket, z. B. ob es Elemente enthält, die während der Bereitstellung wie vollständig vertrauenswürdigen Assemblys oder CAS-Richtlinien besondere Behandlung erfordern. Klicken Sie auf Projektmappe bereitstellen, um ein Formular anzuzeigen, die Sie verwenden können, starten Sie einen Zeitgeberauftrag für die Bereitstellung. Lokale Bereitstellungen über das Webinterface ist nicht möglich.

Bereitstellen einer Sandbox-Lösung für SharePoint unterscheidet sich sehr von der Farm Lösung bereitstellen. Anstelle ein Add, gefolgt von einem bereitstellen besteht eine Sandbox Bereitstellung Schritte bereitstellen und aktivieren. Allerdings ist mit eine Sandbox ein effektiver Weg zur Lösungen testen, bevor sie leben.

Steve Wright

Steve Wright ist senior Manager im Bereich Business Intelligence Management für Sogeti USA LLC in Omaha, Neb. In den Jahren zuletzt formte hat Wright an Flugsicherung, Finanz-, Versicherungs- und zahlreiche andere Arten von Systemen gearbeitet. Er verfasste und technische Rezensionen für viele vorherige Titel für Microsoft Produkte wie Windows, SharePoint, SQL Server und BizTalk durchgeführt.

Corey Erkes

Corey Erkes ist ein Manager-Berater für Sogeti USA LLC in Omaha, Neb. Erkes arbeitete mit einer Vielzahl von Firmen zu verschiedenen Zeitpunkten der Lebenszyklen ihrer SharePoint-Implementierungen. Er ist auch einer der Gründungsmitglieder der Gruppe Benutzer SharePoint Omaha.

© 2012 Apress Inc. Alle Rechte vorbehalten. Gedruckt mit Genehmigung von Apress. Copyright 2012. "Pro SharePoint 2012 Governance" von Steve Wright und Corey Erkes. Für weitere Informationen zu diesem Titel und andere ähnliche Bücher, besuchen Sie bitte apress.com.

Verwandte Inhalte