Vor kurzem haben wir die neue Version 3.0 der PowerShell Extensions für FrontRange DSM (PSX) freigegeben. Neben vielen internen Verbesserungen, wurden auch wieder eine ganze Reihe neuer Cmdlets aufgenommen, um die Verwaltung von DSM noch besser über die PSX steuern zu können.
Neben Cmdlets zur Erstellung, zum Abrufen und zum Löschen von Citrix-Objekten im DSM Organisationsverzeichnis, wurden insbesondere die mit DSM 2014.1 eingeführten neuen Möglichkeiten des Advanced Patch Managements (APM) adressiert und entsprechende Cmdlets implementiert.
In der aktuellen Version des APM existieren ja Optionen zur Definition von Patch-Kategorien, Patch-Vorlagen-Regeln und Patch-Rollout-Regeln. Diese lassen sich nun ebenfalls komfortabel über entsprechende PSX-Cmdlets verwalten.
Außerdem wurden intern die AutoInsert-Regeln von DSM geändert, sodass auch hier entsprechende Cmdlets benötigt und implementiert wurden.
Schließlich wurden die bisher als Tasks bezeichneten Rechte in DSM intern in Permissions umbenannt, sodass hier nur ebenfalls passende Cmdlets in die PSX aufgenommen wurden (die bisher verwendeten Cmdlets New-EmdbTask, Get-EmdbTask und Remove-EmdbTask sind aus Gründen der Abwärtskompatibilität noch vorhanden und funktional, geben jedoch bei interaktiver Verwendung einen Warnhinweis, dass sie obsolet sind und dass stattdessen die Permission-Cmdlets verwendet werden sollten).
Ein Hauptgrund für eine neue PSX-Major-Version war eine signifikante Änderung in der SOAP-Schnittstelle, die dafür sorgte, dass bei den alten PSX Versionen (PSX 2.x) bereits das Verbinden des PowerShell-Laufwerks fehlschlug. Wie sich mittlerweile herausgestellt hat, handelte es sich dabei wohl um eine nicht absichtlich implementierte Modifikation, da mit DSM 2014.1 Hotfix-Bundle 2 diese Änderung wohl wieder rückgängig gemacht werden wird (zumindest ist das der Stand eines Developer-Builds, der uns zum Zeitpunkt der Erstellung dieses Artikels zur Verfügung steht). PSX 3.0 wird jedoch nach aktuellem Kenntnisstand auch zu dieser Rückänderung kompatibel sein, sodass hier kein kurzfristiges neues Release geplant oder gar erforderlich wird.
Verwalten von Citrix-Objekten:
- New-EmdbCitrixFarm
- Get-EmdbCitrixFarm
- Remove-EmdbCitrixFarm
- New-EmdbCitrixZone
- Get-EmdbCitrixZone
- Remove-EmdbCitrixZone
Verwalten von AutoInsert-Regeln (ehemals AutoInsert-Konfigurationen):
- New-EmdbAutoInsertRule
- Get-EmdbAutoInsertRule
- Remove-EmdbAutoInsertRule
- Set-EmdbRuleEvaluationOrder
Verwalten von Patch-Kategorien:
- New-EmdbPatchCategory
- Get-EmdbPatchCategory
- Remove-EmdbPatchCategory
Verwalten von Patch-Rollout-Regeln:
- New-EmdbPatchRolloutRule
- Get-EmdbPatchRolloutRule
- Remove-EmdbPatchRolloutRule
Verwalten von Patch-Vorlagen-Regeln:
- New-EmdbPatchTemplateRule
- Get-EmdbPatchTemplateRule
- Remove-EmdbPatchTemplateRule
Verwalten von Zugriffsrechten (ehemals Tasks):
- New-EmdbPermission
- Get-EmdbPermission
- Remove-EmdbPermission
Eine Übersicht der Neuerungen finden Sie auch unter https://www.nwc-services.de/webhelp/psx/3.0/de-DE/psx7-help.html?Historie.html oder natürlich in der Online-Hilfe nach der Installation.
Bitte beachten Sie, falls Sie die Möglichkeit der zentralen Ablage der Lizenzdatei nutzen, dass sich der Registry-Key geändert hat, in dem die PSX 3.0 nach dem Lizenzfile suchen (siehe https://www.nwc-services.de/webhelp/psx/3.0/de-DE/psx7-help.html?CentralLicensefileStore.html). Wenn Sie eine ältere Version über das in unserem Download-Bereich verfügbare MSI-Installationsprogramm aktualisieren, wird ein eventuell vorhandener Schlüssel automatisch auf den neuen Pfad migriert.
Nutzen Sie die PSX in Ihren Script ausschließlich als PowerShell-Modul (per Import-Module), so genügt es, wenn Sie die Binaries und das Lizenzfile ersetzen. Dies kann manuell oder über ein entsprechendes Script (Batch, PowerShell, NetInstall oder was auch immer) erfolgen. Bei einem zentral abgelegten Lizenzfile müssen Sie jedoch den Registry-Schlüssel dann separat auf den im obigen Abschnitt referenzierten Wert ändern.