Aufgrund eines aktuell anstehenden Projektes bei einem Kunden habe ich mich etwas ausführlicher mit der Identifizierung von Computerobjekten in DSM beschäftigt.
Hintergrund des Projektes:
Bei einem Kunden steht ein Hardwaretausch von Client Computern an.
- Die neuen Computer sollen mit DSM gemanagt und ein Betriebssystem auf ihnen ausgerollt werden.
- Die neue Hardware soll einen bestehenden, bereits mit DSM gemanagten Client ersetzten und somit seine bestehenden Gruppenzuordnungen in DSM beibehalten.
- Die alten Clients haben eine PCI-Glasfaser-Netzwerkkarte verbaut, die in den neuen PC übernommen werden kann/soll.
Dabei kam die Frage auf, ob es ausreichend ist, bei einem Hardwaretausch am Client nur die alte Netzwerkkarte in den neuen PC einzubauen, um das bestehende Computerobjekt in DSM weiterhin verwenden zu können. Sprich, ob die alte MAC-Adresse ausreicht, um den Rechner dem alten DSM Computerobjekt zuzuordnen und somit die bestehenden Gruppen beizubehalten oder ob DSM den PC primär über die SMBIOS Guid erkennt.
Um dies herauszufinden muss man zuerst einmal wissen, welche eindeutigen Merkmale zum Identifizieren in DSM überhaupt verwendet werden:
- Die MAC-Adresse der Netzwerkkarte (Hardware-Client-seitig)
- Die SMBIOS Guid (Hardware-Client-seitig)
- Den Full Qualified Domain Name (FQDN) (Software-Client-seitig)
- Eine DSM interne ID für jedes Objekt (Software-DSM-seitig)
Diese Eigenschaften können über den Eigenschaften-Reiter eines Computerobjekts in DSM eingesehen werden.
Die wichtigsten und eindeutigsten Merkmale sind wohl die MAC-Adresse und die SMBIOS Guid, da diese absolut einmalig sein „sollten„. Doch ändert sich nur eine davon, reicht es dann noch aus, den Client in DSM zu erkennen?
Da ich dieses Thema recht interessant finde, habe ich die Idee etwas weiter gesponnen und mir weitere Szenarien für einen Hardwarewechsel ausgedacht, die ich im Folgenden aufzeigen und weiter unten ausführlicher erläutern möchte.
Bei allen Szenarien wird davon ausgegangen, dass bereits ein Computerobjekt unter Managed Users & Computers in DSM, mit eindeutiger DSM ID besteht und dieses Objekt nach dem Hardwaretausch weiterhin mit der neuen Hardware verwendet werden soll.
Szenario 1:
Die alte Netzwerkkarte eines bestehenden PCs wird in einen neuen Computer eingebaut. Somit hat man einen Computer ohne Betriebssystem, der Clientseitig noch keinen Full Qualified Domain Name (FQDN) besitzt. Durch den Umzug der NIC bleibt die alte MAC-Adresse bestehen. Bisher hat sich also nur die SMBIOS Guid des Clients geändert.
Die alte Netzwerkkarte eines bestehenden PCs wird in einen neuen Computer eingebaut. Somit hat man einen Computer ohne Betriebssystem, der Clientseitig noch keinen Full Qualified Domain Name (FQDN) besitzt. Durch den Umzug der NIC bleibt die alte MAC-Adresse bestehen. Bisher hat sich also nur die SMBIOS Guid des Clients geändert.
Nun soll ein Betriebssystem auf dem Rechner mit DSM ausgerollt werden. Ist dem bestehenden Computerobjekt bereits ein OS zugewiesen macht man also einen Rechtsklick auf den Computer in DSM und wählt den Menüpunkt „Computer neu installieren“. Danach bootet man die neue Hardware mit der alten Netzwerkkarte und führt einen PXE Boot durch.
DSM erkennt, dass bereits ein Objekt mit der MAC-Adresse im System vorhanden ist und das Betriebssystem wird auf dem Computer installiert. Die neue SMBIOS Guid des PCs wird nach der ersten Inventarisierung in DSM aktualisiert.
Szenario 2:
Die Netzwerkkarte eines bestehenden Clients geht kaputt und muss ersetzt werden. Die restliche Hardware soll aber weiter genutzt werden. Der Client wird von DSM gemanagt und hat bereits ein Betriebssystem installiert.
Somit bleiben der FQDN und die SMBIOS Guid erhalten. Lediglich die MAC-Adresse ändert sich.
Da bereits ein OS installiert ist, bootet man also ganz normal in Windows und meldet sich an. Nun sollte der NetInstall Agent anlaufen und der Autoinstaller gestartet werden. Dieser prüft die Hardware und meldet den Status an den BLS. Somit wird die neue MAC-Adresse beim bestehenden Computerobjekt in DSM aktualisiert.
Szenario 3:
Die Hardware eines PCs soll komplett ersetzt werden, das bestehende Computerobjekt in DSM mit all seinen Gruppenzuordnungen aber bestehen bleiben. Eine PCI-Netzwerkkarte ist nicht vorhanden, da z.B. die Onboard-Netzwerkkarte verwendet wurde.
Da auf der neuen Hardware kein Betriebssystem installiert ist und der Rechner somit noch keinen FQDN besitzt, die neue MAC-Adresse und SMBIOS Guid in DSM auch noch nicht bekannt sind, würde bei einem PXE-Boot der Rechner als neues Objekt unter New Users & Computers auftauchen. Dies soll aber verhindert werden. Wie bekommt man also den Client dazu, sich als das bestehende DSM Computerobjekt zu verhalten?
Für diesen Fall bietet DSM im Kontextmenü eines Computerobjekts den Menüpunkt „Hardware-Wechsel“. Dort muss im Dialog die SMBIOS Guid und/oder die MAC-Adresse der neuen Hardware angegeben werden, damit eine Identifizierung erfolgen kann. Das angeben eines einzelnen Wertes reicht bereits aus.
Szenario 4:
In einer Firma wird automatisch eine Spiegelung eines mit DSM gemanagten Servers gemacht und auf einem Speicher im Netzwerk abgelegt. Bei einem Ausfall der primären Hardware kann das Image auf einer anderen Hardware weiter ausgeführt werden. Bis der primäre Server wieder zur
Verfügung steht, soll der Ersatzserver natürlich weiterhin mit DSM gemanagt werden.
Bei diesem Szenario ändert sich durch den Umzug auf die neue Hardware die MAC-Adresse sowie die SMBIOS Guid. Lediglich der FQDN kann nun zur Identifizierung dienen, da das Betriebssystem ja bereits vorhanden ist.
Möchte man also den Client weiterhin mit dem alten Computerobjekt managen, muss der PXE-Boot übersprungen werden, da der PXE-Server eine noch nicht im System vorhandene MAC-Adresse und SMBIOS Guid erkennen und den Computer in DSM unter New Users & Computers als neues Objekt anlegen würde. Denn PXE kann zum Identifizieren noch nicht auf den FQDN zurückgreifen, da der Computername eine Eigenschaft des Application-Layer im OSI Modell ist und somit erst beim Start des Betriebssystems ausgewertet werden kann.
Noch konnte die neue Hardware also nicht dem Objekt zugeordnet werden. Also muss man sich im Windows einloggen und den niagnt32.exe starten. Am Ende des Autoinstaller-Laufs wird die neue MAC-Adresse und die SMBIOS Guid beim Computerobjekt in DSM aktualisiert, denn DSM konnte den PC nun über den FQDN identifizieren und ihn somit zuordnen.
Fazit:
Aus meinen Tests ergibt sich also folgendes Bild:
DSM prüft beim booten des Clients nicht primär nur die MAC-Adresse oder nur die SMBIOS Guid oder sogar, ob beide Eigenschaften mit einem vorhandenen Computerobjekt übereinstimmen, sondern schaut nach, ob einer der beiden Werte bereits im System vorhanden ist und nimmt dann automatisch an, dass ein Hardwaretausch beim gefundenen Computerobjekt stattgefunden hat. Danach aktualisiert DSM den entsprechenden Eintrag im System.
Wird weder die MAC-Adresse noch die SMBIOS Guid in der Datenbank gefunden, legt DSM ein neues Computerobjekt unter New Users & Computers an. Möchte man kein neues Objekt angelegt bekommen muss PXE übersprungen werden.
Läuft dann im Windows der Autoinstaller, prüft dieser, ob der FQDN bereits in DSM vorhanden ist und aktualisiert gegebenenfalls die anderen Eigenschaften des Computers.
Ist jedoch noch kein Betriebssystem installiert und der PC besitzt noch keinen FQDN, muss der manuelle Weg über den Kontextmenüeintrag „Hardware-Wechsel“ gegangen werden und beim Computerobjekt die neue SMBIOS Guid und MAC-Adresse eingetragen werden.
Was ich bisher nicht getestet habe ist, was passieren würde, wenn man z.B. die alte Netzwerkkarte eines PCs ersetzt und diese in einen neuen Rechner mit neuer SMBIOS Guid einbaut. Somit hätte man einen Computer mit alter SMBIOS Guid und neuer MAC-Adresse und einen Computer mit alter MAC-Adresse und neuer SMBIOS Guid.
Wenn man nun beide PCs gleichzeitig mit PXE booten würde und nicht die erneute Inventarisierung, erst des einen dann des anderen PCs abwarten würde, könnte DSM nicht eindeutig bestimmen, welcher Rechner für das Computerobjekt herhalten muss.
Dieses Szenario ist aber so unwahrscheinlich und würde nur einen Test erfordern, wenn man nach der Prämisse handelt „Kaputt bekommt man alles irgendwie!“.
Update:
Gerade habe ich noch ein Dokument von Frontrange gefunden, welches den Hardwaretausch beschreibt. Dieses wird mit DSM installiert und befindet sich auf dem DSM-Share unter .DocsDBookletsDSM7_HardwareExchange_DE.pdf.