Login

Blogs von Consultants der NWC Services GmbH

Neueste Beiträge

Da die Verlinkung von AD Gruppen und Device Collections in SCCM relativ komplex ist, es jedoch über die Konsole standardmäßig keine andere Möglichkeit der Anlage gibt, möchte ich heute wie bereits in meinem letzten Post angekündigt zeigen, wie eine Device Collection mit AD Mitgliedschaftsregel auch schnell und einfach per PowerShell angelegt werden kann.

Hierfür möchte ich in diesem Beitrag lediglich die einzelnen Schritte, sowie alle benötigten Komponenten und PowerShell Cmdlets erklären. Aus diesen sehr statischen Befehlen kann man natürlich später jeden Grad von Automatisierung erreichen, bis hin zu grafischen Oberflächen bzw. einem kleinen Custom Wizard, der sich bei Bedarf sogar in das Kontextmenü der SCCM Konsole integrieren lässt.

Da ich mich in letzter Zeit wieder intensiv mit dem System Center Configuration Manager beschäftige, möchte ich in meinem heutigen Blog Post etwas genauer auf das Zusammenspiel von User/Device Collections und Security Gruppen im Active Directory eingehen und zeigen, wie diese miteinander verlinkt werden können. Die Idee hinter dieser Methode soll sein, die Applikationsverwaltung von optionaler oder individueller Software teilweise oder auch komplett über das AD steuern zu können und damit die Administration beider Systeme zu vereinfachen.

Für die DSM Administratoren unter meinen Lesern wäre diese Anforderung wohl am ehesten mit dem Import einer Externen Gruppe in DSM zu vergleichen, welche in dieser Form in SCCM nicht existiert. Weiterhin wurde dieses Szenario in DSM oft nicht direkt über Externe Gruppen abgebildet da die Berechung der Gruppenmitgliedschaften nicht wie in SCCM über den Server sondern bei jedem Sync direkt am Client stattfindet. Aufgrund der dadurch entstehenden Last am DSM BLS bzw. den langen Sync Vorgängen an den Clients haben sich einige der Kunden daher ein ähnliches Konstrukt über einen AD-DSM Konnektor geschaffen, um das AD wieder zum führenden System zu machen und Computerobjekte innerhalb DSM automatisiert in statische Gruppen aufnehmen/herausnehmen zu lassen. Da SCCM die Synchronisation mit dem AD anders abwickelt sind derartige Konstrukte hier nicht notwendig was die Komplexität erheblich reduziert und somit gerade für Umsteiger oder Interessierte neue Möglichkeiten schafft.

Veröffentlicht von am in SCCM

Wie bereits in meinem Blog Artikel zur SCCM Content Library beschrieben, hat sich das Content Management seit SCCM 2012 grundlegend geändert. Da es aufgrund dieser Änderungen relativ schwierig ist die einzelnen Ordner der Content Library zu durchsuchen und die darin befindlichen Dateien herauszufinden wurde als Teil des ConfigMgr Toolkits (https://www.microsoft.com/en-us/download/details.aspx?id=50012) ein kleines aber extrem hilfreiches Tool von Microsoft veröffentlicht um die Content Library einfach durchsuchen zu können.

In diesem aufbauenden Artikel möchte ich nun auf den Content Library Explorer und einige seiner Funktionen etwas näher eingehen.

Veröffentlicht von am in DSM

Vor kurzem wurde ich wieder einmal von einem Kunden darauf angesprochen, dass bereits distribuierte Pakete nicht automatisch von Depots gelöscht werden, wenn man die Distributionziele am Paket bereinigt. Somit stellt sich vielen Kunden aber auch die Frage, wie man seine Depots demnach am besten aufräumen kann, da sich über die Jahre natürlich viele Daten ansammeln, die eigentlich nicht mehr gebraucht werden bzw. schon gar nicht mehr am ein oder anderen Depot liegen sollten.

Da diese Aussage jedoch seit DSM 2014.1 nur noch teilweise korrekt ist und man mithilfe einer neuen Infrastruktur Einstellung dieses Verhalten ändern kann, möchte ich in diesem Artikel kurz zeigen, wie man seine Pakete anhand der Job Definition automatisch bereinigen lassen kann.

Veröffentlicht von am in DSM

Jeder stand wohl schon vor der Herausforderung wie reibungslose Updates einer Software von statten gehen sollen. Um hier eine Hilfestellung zu geben hat Ivanti mit der Version 2016 das Hilfsmittel der „Replacement-ID“ eingeführt.

Im Folgenden möchte ich kurz erläutern wie mit dieser Umgegangen werden kann und auf was man bei der Verwendung achten sollte.

Auf Grundlage des Blogs Das Konzept der Fileablage in SCCM (SCCMContentLib) meines Kollegen wollen wir uns einmal mit dem Aufbau der Verzeichnisstrukturen der beiden Softwareverteillösungen Ivanti DSM und Microsoft SCCM befassen.

Der erste Schritt ist, dass wir die beiden Strukturen gegenüberstellen:

Innerhalb von Ivanti DSM gibt es zwei Verzeichnisse unterhalb der eigentlichen Freigabe auf dem Master-Depot-Server.

Veröffentlicht von am in SCCM

Für SCCM Neulinge mag die Art und Weise der Dateiablage in SCCM zunächst etwas unübersichtlich/undurchsichtig erscheinen, was wohl an dem mit System Center 2012 Configuration Manager eingeführtem Konzept der "Content Library" liegt.

Der Grundgedanke ist die effektive Speicherung von Daten auf dem Fileshare nach dem Prinzip des "Single Instance Storage". Hierbei werden Dateien die von mehreren Software Paketen benötigt werden, wie z.B. eine bestimmte DLL oder EXE, jeweils nur einmal gespeichert und lediglich eine Mapping-Referenz zwischen einer bereits existierenden Datei und dem neuen Software Paket hinzugefügt. Somit wird nicht nur der Traffic zwischen den Distribution Points reduziert um ein neues Paket bereit zu stellen, sondern auch die Zeit für die Bereitstellung reduziert.

Da es, wie in meinem Einleitungssatz bereits erwähnt, jedoch nicht immer ganz einfach ist hier die Übersicht zu behalten, möchte ich mit diesem Artikel etwas Licht ins Dunkel bringen.

Veröffentlicht von am in DSM

Bei der Paketierung in DSM gibt es ja verschiedene Möglichkeiten, dafür zu sorgen, dass Pakete nur unter bestimmten Bedingungen und Voraussetzungen auf den gemanagten Clients installiert werden. Zu nennen wären hier (ohne Anspruch auf Vollständigkeit):

  • unterstützte Plattformen
  • serverseitige Voraussetzungen
  • clientseitige Voraussetzungen
  • Bedingungen für vorhandene Installationen

Die Bedingungen für unterstützte Plattformen sollten klar sein: es werden nur für die Policy-Ziele auch Policy-Instanzen erzeugt, die eine der von dem Paket unterstützten Plattformen verwenden. Ebenso verhält es sich mit serverseitigen Voraussetzungen, auch hier wird eine Policy-Instanz nur dann erzeugt, wenn der Business Logic Server erkennt, dass die angegebenen Voraussetzungen von einem Policy-Ziel erfüllt sind.

Anders verhält es sich jedoch bei clientseitigen Voraussetzungen: für die Policy-Ziele werden auf jeden Fall Policy-Instanzen erzeugt (sofern die Plattform-Einstellungen und serverseitigen Voraussetzungen dem nicht widersprechen). Da DSM aber nicht alle erdenklichen Zustände über die verwalteten Clients in seiner Datenbank speichern kann, werden solche clientseitigen Voraussetzungen erst zur Laufzeit auf den Endgeräten geprüft und dann entschieden, ob die Installation ausgeführt wird oder nicht.

Ein naheliegender Anwendungsfall für die Verwendung von clientseitigen Voraussetzungen ist daher beispielsweise die Prüfung, ob genug freier Speicherplatz für die Installation eines Pakets zur Verfügung steht oder ob die Installation durch die Existenz eines Flags in der Registry oder im Dateisystem erlaubt ist. Bei diesem Vorgehen lauert jedoch "eine böse Falle"...

Seit geraumer Zeit besteht in DSM die Möglichkeit, eine ODS Variable vom Typ "Zeitplan" zu erstellen. Da diese Variable im eScript über die "If"-Anweisung "IsInTimeframe" geprüft werden kann, ergeben sich hieraus gerade für Installationen viele neue Möglichkeiten. Somit wäre es denkbar einen Softwarerollout in mehrere "dynamische Phasen" (führe Aktion 1 aus wenn innerhalb Wartungszeitfenster und Aktion 2 wenn nicht) zu unterteilen, ohne das der DSM Administrator weitere Änderungen am eScript oder der Policy vornehmen muss, wie es oft bei der Verteilung von Patchen oder z.B. auch einer schleichenden Windows 10 Migration gewünscht ist. Ein "Aufschieben" oder "Erweitern" des Zeitplanes greift bei Ausführung des eScripts sofort.

Möchte man nun im eScript den "Beginn" oder das "Ende" des Wartungszeitplans herausfinden, gibt es für den Builtin DSM Wartungszeitplan den eScript Befehl "GetMaintenanceTimes". Leider ist es über diesen Befehl aber zum jetzigen Zeitpunkt nicht möglich einen eigenen Wartungsplan auszulesen um die gewünschten Informationen zu erhalten. Weist man den Wartungsplan einer DSM Variablen zu und lässt sich den Inhalt ausgeben, erscheint die Interpretation dieses codierten Strings auf den ersten Blick relativ schwierig.

Hier ein Custom Wartungszeitplan und der Inhalt der ODS Variablen als String:

b2ap3_thumbnail_Wartung1.png

1;AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA;AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgP///z8AAAAA

In diesem Artikel möchte ich zeigen, wie der angezeigte String per PowerShell interpretiert und die darin enthaltene Information in DSM weiterverarbeitet werden kann. Dies würde sich sowohl mit als auch ohne PSX realisieren lassen.

Wie mein Kollege Frank Scholer bereits in seinem letzten Artikel schrieb, kommen mit der nächsten DSM Version (2017) die ja voraussichtlich Ende November erscheinen wird, wieder einige sehr interessante und nützliche Features in das Produkt DSM. Auch ich möchte deshalb in unserer kleinen Rubrik "Sneak Peek" ein weiteres neues Feature etwas genauer vorstellen.

Hierbei handelt es sich um die "Erweiterte Site Definition", mit der es ab sofort möglich ist, mehrere Site-Definitionen innerhalb einer einzigen Site anzugeben und nacheinander abarbeiten zu lassen. Die einzelnen Kriterien einer Site-Definition werden mit der neuen "Def-ID" gekennzeichnet. Dabei können mehrere oder auch nur eine einzige Site-Definition zutreffen und die Sitezugehörigkeit eines Clients bewirken.

Wie dieses Feature in der Praxis umgesetzt werden kann, möchte ich im folgenden Artikel etwas näher ausführen.

Zum Seitenanfang

Cookies erleichtern die Bereitstellung der Webseite. Mit der Nutzung dieser Webseite erklären Sie das sie damit einverstanden sind, dass wir Cookies verwenden.