TechNet · Englische TechNet Blogs · TechNet Deutschland · itproblogs.de · .NET Blogs

Arnd Rößner: Hyper-V bekommt Schnellassistenten und Speicherfragmente

Hyper-V bekommt Schnellassistenten und Speicherfragmente – Golem.de

Carsten Rachfahl [Hyper-V]: Die Cloud & Datacenter Conference 2017 nimmt so langsam Gestalt an

CDC-Germany 2017 Bild von München

Das neue Jahr ist angebrochen und auch die Cloud & Datacenter Conference Germany 2017 nimmt jetzt so langsam gestallt an. Im folgende habe ich euch einige Highlights zusammengestellt.

​Sprecher

Wir haben jetzt bereits 25 Top Sprecher für die Konferenz gewinnen können. Unter ihnen sind:

  • 20 Microsoft Most Valuable Profesionals
  • 5 Microsoft Regional Directors (sind alle auch MVPs)
  • 5 Microsoft technische Sprecher

Aber bitte schaut selbst wer schon alles dabei ist.

Themen

Da wir dieses Jahr einige Sprecher Slots mehr zu füllen haben (32 gegenüber 25 von letztem Jahr) habe wir entschieden auch die Microsoft Office Server Produkte mit in die Themen aufzunehmen. Ihr findet deswegen auch die Themen Exchange 2016, SharePoint 2016, Skype for Business und Office 365 auf der Themenliste. Die Momentane List findet ihr in der Grafik.

Vorläufiger Themen Überblick

Early-Bird Karten

Bis einschließlich zum 15. Februar könnt Ihr euch noch den Early-Bird Preis mit € 70 Rabatt auf den normalen Konferenz Preis sicher! Ab dem 16. Februar kosten die Konferenz dann den vollen Preis. Außerdem habe wir in den Räumlichkeiten auch ein Besucher Limit von maximal 400 Teilnehmer. Also wenn ihr sicher sein wollt, das Ihr dabei seit dann solltet Ihr so schnell wir möglich zuschlagen! Denn die Zeit tickt.

Zeit bis zum Ablauf des Early Bird Rabatt!

29
Days
07
Hours
21
Minutes
01
Seconds

​Hier geht's zur CDC-Germany Website.

In den nächsten Monaten werden wir auf dem Blog immer mal wieder über die Konferenz berichten.​


Der Beitrag Die Cloud & Datacenter Conference 2017 nimmt so langsam Gestalt an erschien zuerst auf Hyper-V Server Blog.

Bent Schrader: DHCP Failover Cluster: Automatische Replikation von Konfigurationsänderungen

Mit dem Windows Server 2012 (R2) unterstützt Microsoft nun die hochverfügbare Konfiguration des DHCP Dienstes. Das bedeutet, dass zwei Server gleichzeitig die Rolle des DHCP Servers besitzen und über ein und dieselbe Konfiguration verfügen. In aktuellen, oftmals virtualisierten IT-Umgebungen können so hochverfügbare DHCP-Konfigurationen umgesetzt werden, bei denen ein DHCP-Server virtualisiert und ein zweiter auf einem physischen System betrieben wird.

Ein sogenannter DHCP Failover Cluster unterstützt zwei Modi: Load Balancing und Hot-Standby. Gleich welcher Modus verwendet wird, die DHCP-Datenbank für die ausgestellten Leases wird immer synchron gehalten, um im Fehlerfall eines (oder des aktiven) Servers, ohne Unterbrechung durch den Partnerserver weiterhin zur Verfügung zu stehen.

Problem

Obwohl bei der Einrichtung eines DHCP Failover Clusters die gesamte Konfiguration des ersten DHCP-Servers durch den Assistenten auf den Partnerserver übertragen wird, so gilt das im Betrieb nicht für Änderungen an der Konfiguration. Wird beispielsweise eine Reservierung innherhalb eines Failover-replizierten Bereiches hinzugefügt, geändert oder gelöscht, so wird diese Änderung nicht automatisch auf den Partnerserver repliziert. Diese Aktion muss manuell im Kontextmenü in der DHCP-Konsole erfolgen:

Manuelle Replikation der DHCP-Konfiguration

Alternativ kann diese Replikation auch über den folgenden PowerShell erfolgen, im diesem Beispiel würde die gesamte Konfiguration (also alle Failover-replizierten Bereiche) auf den Partnerserver übertragen werden:

Invoke-DhcpServerv4FailoverReplication -Force

Leider ist dieses Verhalten kein Fehler, sondern per Design so. Es lässt sich aber durchaus automatisieren, wie auch die Lösung von teamdhcp im Microsoft Technet. Allerdings war mir die Lösung zu kompliziert und erfordert die Ausführung eines PowerShell-Skriptes mit zusätzlicher XML-Konfigurationsdatei. Außerdem erfolgt die Synchronisation zeitgesteuert zyklisch.

Lösung

Mit der folgenden Anpassung lässt sich die DHCP-Konfiguration ereignisgesteuert replizieren. Dazu sind einige, im Folgenden beschriebene, Schritte notwendig, ohne das ein gesondertes PowerShell-Skript ausgeführt werden muss. Das folgende Schaubild skizziert die Funktionsweise der hier vorgestellten Lösung:

Funktionsweise der Replikation

Erklärung der im Bild dargestellten Prozesse:

  1. Aktion 1: DHCP-Konfigurationsänderung am DHCP-Server 1
  2. Aktion 2: Eintrag im Ereignisprotokoll des DHCP-Server 1
  3. Aktion 3: Auslösung der Aufgabe zur Konfigurationsreplikation
  4. Aktion 4: Replikation der Konfiguration auf Basis von Powershell als spezieller Replikationsbenutzer

Natürlich soll die Replikation (im Load-Balancing-Modus) auch bidirektional funktionieren. Damit nach der Aktion 4, welcher der Aktion 1 auf dem DHCP-Server 2 entspricht, keine Endlos-Replikationsschleife ausgelöst wird, reagiert der Trigger der Aufgabe bei Aktion 3 nur, wenn das Ereignis nicht durch den Replikationsbenutzer erzeugt wurde.

Voraussetzung

Eine bereits eingerichtete DHCP-Failover-Konfiguration ist für die anschließenden Tests der hier beschriebenen Anpassung sinnvoll. Dabei ist zu beachten, dass immer alle Failover-konfigurierten Bereiche (Scopes) in der Replikation enthalten sind.

Schritt 1: Neues Dienstkonto erstellen

Das Dienstkonto (Domänenmitglied) wird zur Ausführung der Replikation benötigt und muss Mitglied der Gruppe DHCP-Administratoren auf den DHCP-Servern sein. Wird der DHCP-Server auf Domänencontrollern ausgeführt, ist diese Gruppe eine Domänen-lokale Sicherheitsgruppe. Als Mitglied dieser Gruppe darf der Benutzer Änderungen (und auch Replikationen) an den DHCP-Servern vornehmen:

DHCP-Dienstkonto

Außerdem muss das Dienstkonto auf den DHCP-Servern das Recht Anmelden als Stapelverarbeitungsauftrag erhalten. Dies kann über eine Gruppenrichtlinie (oder bei einem Mitgliedsserver über die lokale Sicherheitsrichtlinie) erreicht werden:

Recht: Anmeldung als Stapelverarbeitungsauftrag

Dieses Benutzerrecht wird benötigt, um später eine Aufgabe in der Aufgabenplanung auf den betroffenen Systemen auszuführen.

Schritt 2: Neue Aufgabe erstellen

Auf dem ersten DHCP-Server wird in der Aufgabenplanung eine neue Aufgabe erstellt. Im Reiter Trigger wird im Anschluss ein neuer Trigger erstellt. Unter Aufgabe starten muss Bei einem Ereignis und danach unter den Einstellungen Benutzerdefiniert ausgewählt werden.

Neue Aufgabe und Trigger erstellen

Im Anschluss kann ein neuer Ereignisfilter erstellt werden. Als Protokoll ist das Microsoft-Windows-DHCP Server Events/Betriebsbereit auszuwählen, da bei einem hier auftretenden Ereignis der Trigger und damit die Aufgabe ausgeführt werden soll. Allerdings soll verhindert werden, dass der Trigger für ein Ereignis welches remote durch den in Schritt 1 definierten Benutzer erzeugt wurde, ausgelöst wurde. Dazu muss dieser Benutzer im Feld Benutzer eingetragen werden:

Danach ist der Reiter XML auszuwählen und im unteren Fensterbereich Manuell bearbeiten zu aktivieren. Dadurch wird das XML-Feld editierbar. Hier muss nach der Zeichenkette @UserID und vor dem = ein ! eingefügt werden. Damit gilt der neue Ereignisfilter für alle Eregnisse im ausgewählten Protokoll – außer diejenigen, die vom Benutzer aus Schritt 1 erzeugt worden.

XML-Konfiguration des Ereignisfilters

Nun können die offenen Fenster des Ereignisfilters mit OK bestätigt werden. Im Aufgabendialog kann nun der Reiter Aktionen gewählt werden und mit der Schaltfläche Neu eine neue Aktion erstellt werden. Dazu wird der oben aufgeführte PowerShell-Befehl verwendet:

Neue Aufgabenaktion

Dabei ist als Programm/Skript powershell zu verwenden und als Argument die Zeile

-command „Invoke-DhcpServerv4FailoverReplication -Force“

hinzuzufügen. Danach kann der Dialog mit OK bestätigt werden und der Aufgabenreiter Allgemein ausgewählt werden. Hier ist ein Name für die Aufgabe einzugeben und der Benutzer aus Schritt 1 für die Ausführung auszuwählen. Zudem soll die Aufgabe unabhängig von der Benutzeranmeldung und mit höchsten Privilegien ausgeführt werden:

Allgemeine Aufgabeneinstellungen

Im Anschluss kann im Reiter Einstellungen die letzten Anpassungen vorgenommen werden. Wird die Aufgabe bereits ausgeführt, soll eine neue Instanz in die Warteschlange gestellt werden. Bei einer Ausführung von mehr als einer Minute ist die Aufgabe zu beenden – diese dauert erfahrungsgemäß wenige Sekunden.

Einstellungen der Aufgabe

Mit diesen Einstellungen kann die Aufgabe mit OK erstellt werden. Das Kennwort für den Benutzer wird abgefragt und der Hinweis für das notwendige Recht zur Anmeldung als Stapelverarbeitungsauftrag erscheint.

Zu diesem Zeitpunkt existiert bereits die unidirektionale Replikation vom aktuellen DHCP-Server (auf dem die Aufgabe erzeugt wurde) zum Partnerserver.

Schritt 3: Einrichtung der bidirektionalen Funktionalität

Auf dem zweiten DHCP-Server (Partnerserver) sind nun der Schritte 1 und 2 analog zum ersten Server durchzuführen. Dabei muss das Servicekonto (bei Mitgliedschaft in der Domäne) nicht neu angelegt werden

Schritt 4: Testen der Funktionalität

In meiner Testumgebung habe ich auf dem DHCP-Server 1 (hier lab-dc1.test.lab) auf dem die Aufgabe erstellt wurde, eine vorhandene Reservierung in einem Failover-konfigurierten (und synchronen) Bereich gelöscht. Diese Aktion wurde als Administrator durchgeführt. Im Ereignisprotokoll findet man dazu folgenden Eintrag:

Löschen einer Reservierung auf DHCP-Server 1

Nach der Ausführung dauerte es (in meiner virtuellen Umgebung) einige Sekunden und im Ereignisprotokoll des DHCP-Server 2 (hier lab-dc2.test.lab) wurden folgende drei Ereignisse des Benutzers DHCP-Replication angezeigt:

Replikation auf dem DHCP-Server 2

Auf Grund der Tatsache das der Ereignisfilter aber den Benutzer DHCP-Replication explizit ausschließt, findet keine Rückreplikation statt – also so wie gewollt. Der Blick in die DHCP-Konsole bestätigte: die Reservierung wurde auf beiden DHCP-Servern erfolgreich gelöscht.

Auch weitere Tests bestätigen – die beschriebene Lösung funktioniert wie erwartet und hilft, die vermisste automatische Replikation der Konfigurationsänderungen in DHCP-Failover-Clustern zu verwenden.

Fazit

Warum Microsoft die automatische Replikation im DHCP-Failover-Cluster nur auf ausgestellte Leases beschränkt, ist für mich schwer nachvollziehbar. Gibt es in größeren Netzwerken (in denen ein hochverfügbarer Cluster-Betrieb erst sinnvoll erscheint) genügend Aufgaben, die eine Konfigurationsänderung im DHCP-Server nach sich ziehen. Die hier beschriebene Lösung ist recht praiktikabel und ohne größeren Aufwand umsetzbar. Wer Ergänzungen oder Verbesserungsvorschläge hat, kann diese gern hier als Kommentar posten.

Wie bei allen meinen Beiträgen gilt: Bei Tipps, Vorschlägen sowie Fragen oder Kritiken hinterlasst bitte einen Kommentar.

faq-o-matic: Error 4372 beim Upgrade auf DPM 2016

Die System Center Suite ist inzwischen in Version 2016 veröffentlicht worden, daher wollte ich „mal eben" das Upgrade des DPM 2012 R2 auf 2016 vornehmen.

https://blogs.technet.microsoft.com/hybridcloud/2016/10/12/managing-the-software-defined-datacenter-with-system-center-2016

Eigentlich kein Hexenwerk. Sicherung des bestehenden Servers anfertigen und das Setup starten:

https://technet.microsoft.com/en-us/system-center-docs/dpm/get-started/upgrade-to-dpm-2016

Die Installation schlug allerdings fehl. Es wurde der Fehler 4372 gemeldet:

clip_image002

In der DPMSetup.log wird der Fehler folgendermaßen protokolliert:

DPM Setup failed to attach the DPM database files to DESP004.Investigate why the DPM database files cannot attach to DESP004 and then install System Center 2016 DPM again.Microsoft.Internal.EnterpriseStorage.Dls.Setup.Exceptions.BackEndErrorException: exception —> System.Data.SqlClient.SqlException: Only user processes can be killed.

Die Lösung war im Endeffekt ganz naheliegend: Der Benutzer, mit dem ich das Upgrade ausführen wollte, hatte zwar entsprechende Rechte auf die SQL-Datenbank, jedoch nicht auf die Reporting Services.

Scolab: Vom Witz zur Realität – Sharepocalypse 40

Amazon’s Alexa, der Feind ist in deinem Haus. Berlin nach dem Anschlag – 24 Stunden im StahlgeTwitter. N26 – Wem es bei „Bank-Startup“ nicht klingt, ist nicht reif für das wirkliche Leben. CES-Awards – Intelligenz des Menschen ‚in a nutshell’. … Weiterlesen

Der Beitrag Vom Witz zur Realität – Sharepocalypse 40 erschien zuerst auf Scolab.

faq-o-matic: SetACL Studio und Delprof2 jetzt kostenlos

Helge Klein stellt zwei seiner kommerziellen Tools jetzt kostenlos zur Verfügung, auch für professionellen Einsatz:

  • Delprof2 kann Windows-Benutzerprofile vollständig löschen
  • SetACL Studio erlaubt das professionelle Bearbeiten von Windows-Berechtigungen (Dateien, Drucker, Registry …) auch mit UAC-Einbindung

[Delprof2 & SetACL Studio Free for Commercial Use – Helge Klein]
https://helgeklein.com/blog/2017/01/delprof2-setacl-studio-free-commercial-use/

Carsten Rachfahl [Hyper-V]: Microsoft Virtualisierung Podcast Folge 54 – OpenStack mit Hyper-V

​In diesem Podcast habe ich im Schwerpunktthema Hyper-V MVP Alessandro Pilotti zu Gast. Allesandro ist in der OpenSource Community sehr aktiv und im hat es OpenStack angetan. Deswegen unterhalten wir uns auch über OpenStack mit Microsoft Technologien, speziel Hyper-V.
Am Ende habe ich für euch (wie immer) noch die Termine rund um die Private/Hybrid Cloud zusammengefasst.

Wenn Ihr lieber schaut als hört, dann findet ihr das Video zum Podcast hier:

Ich wünsch Euch wie immer viel Spaß beim zuhören/zusehen.​

​Interview mit Allesandro Pilotti über "OpenStack und Hyper-V" (ab 1:27)

Wenn man im Internet nach OpenStack und Hyper-V sucht trifft man immer wieder auf einen Namen CloudBase Solutions. Im interview habe ich deren CEO Alessandro Pilotti (ebenfalls Cloud & Datacenter Management MVP). Also habe ich Alessandro gefragt ob er zeit hat und hier ist das Ergebnis meines Interviews.

Der Beitrag Microsoft Virtualisierung Podcast Folge 54 – OpenStack mit Hyper-V erschien zuerst auf Hyper-V Server Blog.

Arnd Rößner: Satya Nadella spricht auf der Digitalkonferenz DLD in München und auf dem Weltwirtschaftsforum in Davos zum Thema Künstliche Intelligenz

Am Montag, den 16. Januar 2017 um 09:00 Uhr, besucht Microsoft-CEO Satya Nadella die 13. Digitalkonferenz DLD (Digital Life Design) in München.In einem Fireside-Chat zum Thema Künstliche Intelligenz (KI) wird Nadella unter anderem über die Verantwortung sprechen, die führende Unternehmen wie Microsoft in diesem Bereich übernehmen werden. Im Talk geht es aber vor allem um […]

Carsten Rachfahl [Hyper-V]: Desired State Configuration (DSC) und Windows Server 2016 – Teil 2: VMs im Hyper-V, Partielle Konfigurationen und ein Web Pull Server

Im Teil 1 meiner Artikelserie habe ich ein paar grundlegende Ideen und Vorgehensweisen der Desired State Configuration (DSC) beschrieben. Heute möchte ich ein Szenario vorstellen, wie man in einer Lab-Umgebung mit DSC virtuelle Maschinen (VMs) im Hyper-V erzeugen und konfigurieren kann.

Die Lab Systemumgebung

Als physische Basis und Entwicklungsumgebung meiner virtuellen Lab Umgebung verwende ich eine Workstation, auf der ein deutsches Windows 10 Pro in der aktuellen Version 1607 läuft und das immer mit allen Patches aktuell gehalten wird. Alternativ kann natürlich auch Windows 10 Enterprise oder Windows Server 2016 verwendet werden. Windows 10 Home Edition scheidet aus, da für unser Projekt die Hyper-V Komponente benötigt wird, die ja in den Home Editionen nicht enthalten ist.

Die Physik

  • i7 Prozessor
  • 32 GB RAM
  • Windows 10 Boot aus VHDX (= Laufwerk C:) mit aktiver Hyper-V Komponente
  • Festplatte D: enthält Projektverzeichnis D:/DSC-Lab. In diesem Verzeichnis werden wir die DSC Konfigurationsskripte ablegen und ggf. in separaten Unterverzeichnissen zusätzliche Daten für die jeweiligen VMs.
  • SSD-Laufwerk E: enthält Verzeichnis E:/Hyper-V, in dem die erzeugten VMs landen. Für jede VM wird darunter ein eigenes Verzeichnis mit dem Namen der VM angelegt, das dann alle Daten der VM enthält (Hyper-V Definitionen und virtuelle Laufwerke).

Skripte zum Downloaden

In diesem Artikel finden Sie viele Code Schnipsel aus Powershell Skripten. Wenn Sie die gezeigten Beispiele auf Ihrem eigenen Rechner nachvollziehen wollen, empfehle ich Ihnen, die Skript-Sammlung auf Ihr System herunterzuladen und in das Verzeichnis D:/DSC-Lab zu extrahieren.

Die Hyper-V Umgebung

Im Hyper-V habe ich bereits einen Switch für ein internes virtuelles Netzwerk mit dem Namen NatSwitch80 angelegt. Dieses virtuelle Netzwerk werden wir als Management Netz für unsere VMs verwenden. Damit die mit diesem Netz verbundenen VMs auch Zugriff haben ins Internet, ist für dieses Netz zusätzlich ein NAT-Objekt im Hyper-V Host angelegt. Der IP-Bereich des Netzes ist 192.168.80.0/24, wobei über das NAT-Objekt die Adresse 192.168.80.1 als Gateway in die weite Welt definiert ist. Details über die NAT-Funktionalität von internen Hyper-V Netzwerken finden Sie in einem früheren Blogpost von mir. Hier nur nochmals kurz das Powershell Skript zum Anlegen dieses NAT-Switch – Achtung: Mit Administratorrechten ausführen!:

Betriebssystem Images für die VMs

Wir werden unsere virtuellen Maschinen aus einem “jungfräulichen” Betriebssystem Image erzeugen, das wir aus der heruntergeladenen ISO-Datei des Windows Server 2016 in einer .VHDX-Datei generieren. Dabei müssen wir unterscheiden zwischen Images, die alle zu einer bestimmten Server Edition gehörigen Komponenten vollständig enthalten, und Images für den Nano Server. Zunächst wollen wir uns nur mit vollständigen Images befassen. Auf das Thema Images mit dem Nano Server werde ich in einem späteren Artikel eingehen, wenn wir uns mit Szenarien auf Basis von Nano Server beschäftigen werden.

Zum Erstellen einer solchen Image-Datei aus der heruntergeladenen ISO-Datei verwenden wir das Powerhell Skript Convert-WindowsImage.ps1. Es existiert bereits seit Einführung von virtuellen Festplattendateien (Dateien des Typs .VHD bzw. . VHDX) – also seit Windows Vista bzw. Windows Server 2008 – in der Powershell Gallery. Das Skript wurde laufend weiterentwickelt und an die jeweiligen neuen Windows Versionen angepasst. Auf dem Windows Server 2016 Installationsmedium wird dieses Skript nun direkt in der aktuellsten Version bereitgestellt. Es befindet sich im Verzeichnis NanoServer/NanoServerImageGenerator

Startet man zum ersten Mal eine VM aus einem mit Convert-WindowsImage.ps1 erzeugten Image, so wird zunächst der normale Windows Setup ausgeführt. Dabei wird man ein paar Dinge beobachten, die einen automatischen unbeaufsichtigten Start verhindern:

  • Es werden die Lizenzbedingungen angezeigt, die man interaktiv bestätigen muss.
  • Man muss Sprach- und Tastatureinstellungen interaktiv festlegen bzw. zumindest bestätigen.
  • Man muss das initiale Passwort für den lokalen Administrator festlegen.

Abhilfe kann man schaffen, indem man vor dem Erzeugen des Images eine Antwortdatei mit dem Namen Unattend.xml erstellt und diese in das Image einfügt. Das Skript Convert-WindowsImage.ps1 bietet einen Parameter, bei dem man den Pfadnamen der Antwortdatei angeben kann, die in das Image kopiert werden soll.

Eine Antwortdatei für den Windows Setup ermöglicht es zwar, fast alle Einstellungen eines Systems zu konfigurieren. Unser Ziel hier ist es aber, Konfigurationen mit Desired State Configuration (DSC) durchzuführen. Deshalb beschränken wir uns auf eine minimale Antwortdatei, mit der die beschriebenen Setup Stopper automatisch übersprungen werden. Kopieren Sie das folgende XML-Skript in eine Powershell ISE Sitzung, legen Sie ein geeignetes Passwort für den lokalen Administrator fest (Zeile 41) und speichern Sie dann die Datei auf Ihren Entwicklungsrechner (z.B. nach D:/DSC-Lab/Unattend.xml).

Anmerkung: Neben den beschriebenen Setup-Stoppern habe ich in dieser XML-Datei noch ein paar zusätzliche Einstellungen definiert, die einem das Leben in einer Test- und Entwicklungsumgebung erleichtern, wie z.B. Aktivieren der Remote Desktop Funktion einschließlich der passenden Firewall-Regeln sowie das Ausschalten der IE-Härtung. Für eine produktive Umgebung sollten Sie sich genau überlegen, ob Sie diese sicherheitsrelevanten Einstellungen übernehmen wollen.

Um mit Convert-WindowsImage.ps1 ein vollständiges Image mit dem Windows Server 2016 einschließlich der vorstehenden Datei Unattend.xml zu erzeugen, gehen Sie folgendermaßen vor:

  1. Öffnen Sie die ISO-Datei von Windows Server 2016 durch einen Doppelklick im Windows Explorer. Der Inhalt erscheint in einem neuen virtuellen CD/DVD-Laufwerk.
  2. Kopieren Sie den gesamten Inhalt der CD in ein Verzeichnis Ihrer Festplatte, z.B. D:/DSC-Lab/ WS2016
  3. Starten Sie jetzt eine Powershell Konsolen- oder ISE-Sitzung mit Administratorrechten und wechseln Sie in das Verzeichnis NanoServer/NanoServerImageGenerator der Kopie des CD-Inhalts (also z.B. D:/DSC-Lab/WS2016/NanoServer/NanoServerImageGenerator). Dort finden Sie die aktuelle Version des Powershell Skripts Convert-WindowsImage.ps1, mit dessen Hilfe Sie aus einer ISO- bzw. der darin enthaltenen .WIM-Datei ein Betriebssystem Image für VMs im Hyper-V erzeugen können. Die benötigte .WIM-Datei befindet sich im Verzeichnis Sources der CD-Kopie und hat den Namen Install.wim, für unser Beispiel also D:/DSC-Lab/WS2016/Sources/install.wim. Die Datei enthält sowohl die Standard als auch die Datacenter Editions von Windows Server 2016 jeweils mit und ohne Desktop Experience. Wir werden für unsere DSC-Experimente die Windows Server 2016 Datacenter Evaluation (Desktop Experience) verwenden, die in der .WIM-Datei den Index 4 trägt. Das Image werden wir als VHDX-Datei für Gen2 Hyper-V VMs erzeugen und direkt im Verzeichnis für die zu erzeugenden VMs – also E:/Hyper-V – unter dem Namen WS2016_GPT_DCGUI.vhdx ablegen.

Anmerkungen:

  1. Convert-WindowsImage.ps1 ist eigentlich kein “echtes” Powershell Skript, sondern enthält “nur” eine Powershell Funktion. Um diese nutzen zu können, müssen wir das Skript zunächst per Dot Sourcing in den globalen Workspace der Powershell laden und können dann erst die Funktion aufrufen.
  2. Falls Sie anstatt der Datacenter Edition von Windows Server 2016 eine andere Edition verwenden wollen, können Sie den entsprechenden Index mit dem DISM-Befehl ermitteln.

Mit den folgenden Powershell Befehlen erzeugen wir uns nun ein Basisimage für unsere weiteren Experimente, in das wir auch die zuvor erzeugte Datei Unattend.xml einfügen lassen:

Ergebnis: Die Image-Datei steht jetzt unter E:/Hyper-V/WS2016_GPT_DCGUI.vhdx zur Verfügung und wir können sie als Basisimage für VMs verwenden – sowohl als Parent Disk für differenzierende Laufwerke als auch als Quelle einer Kopie.

Einsammeln und Installieren benötigter DSC-Ressourcen

Für unsere DSC-Experimente zum Erzeugen von VMs im Hyper-V und deren Konfiguration benötigen wir eine Reihe von DSC-Ressourcen (Powershell Module), die nicht standardmäßig auf unserem Entwicklungs- und Testsystem vorhanden sind. Wir müssen sie vielmehr zuerst aus dem Internet von verschiedenen Quellen herunterladen und installieren. In der nachstehenden Tabelle habe ich die für diesem Beitrag verwendeten Module mit Versionsnummern und Hinweisen zum Download / Installieren zusammengefasst.

Modul

Version

Quelle

Autor

Installation

Anmerkungen

PSDesiredStateConfiguration


lokal unter C:/Windows/System32/WindowsPowerShell/v1.0/Modules/PSDesiredStateConfiguration

Microsoft

nicht notwendig, da standardmäßig in Windows enthalten

Enthält die grundlegenden DSC-Ressourcen und Cmdlets; sollte in jedes Konfigurationsskript importiert werden

Modul

Version

Quelle

Autor

Installation

Anmerkungen

xHyper-V

3.6.0.0

Powershell Gallery - https://www.powershellgallery.com/packages/xHyper-V/3.6.0.0

PowerShellTeam, Microsoft

Install-Module -Name xHyper-V -RequiredVersion 3.6.0.0 -Force -Verbose

Enthält Ressourcen zum Konfigurieren eines Hyper-V Hosts und zum Erzeugen von VMs

Modul

Version

Quelle

Autor

Installation

Anmerkungen

cHyper-V

3.0.0.0

Powershell Gallery - https://www.powershellgallery.com/packages/cHyper-V/3.0.0.0

PowerShellTeam, Microsoft

Install-Module -Name cHyper-V -RequiredVersion 3.0.0.0 -Force -Verbose

Enthält Ressourcen zum Erzeugen und Konfigurieren von Hyper-V- und VM-Netzwerkkomponenten

Modul

Version

Quelle

Autor

Installation

Anmerkungen

xComputerManagement

1.9.0.0

Powershell Gallery - https://www.powershellgallery.com/packages/xComputerManagement/1.9.0.0

PowerShellTeam, Microsoft

Install-Module -Name xComputerManagement -RequiredVersion 1.9.0.0 -Force -Verbose

Enthält Ressourcen zum Konfigurieren systemspezifischer Eigenschaften wie Computernamen und Domain bzw. Workgroup Mitgliedschaft

Modul

Version

Quelle

Autor

Installation

Anmerkungen

xNetworking

3.1.0.0

Powershell Gallery - https://www.powershellgallery.com/packages/xNetworking/3.1.0.0

PowerShellTeam, Microsoft

Install-Module -Name xNetworking -RequiredVersion 3.1.0.0 -Force -Verbose

Enthält Ressourcen zum Konfigurieren systemspezifischer IP-Eigenschaften wie IP-Adresse, DNS-Serveradresse, Gateway IP-Adresse , usw.

Modul

Version

Quelle

Autor

Installation

Anmerkungen

xPSDesiredStateConfiguration

5.1.0.0

Powershell Gallery - https://www.powershellgallery.com/packages/xPSDesiredStateConfiguration/5.1.0.0

PowerShellTeam, Microsoft

Install-Module -Name xPSDesiredStateConfiguration -RequiredVersion 5.1.0.0 -Force -Verbose

Enthält Ressourcen zum Konfigurieren verschiedener Systemdienste, u.a. zum Erzeugen und Konfigurieren eines DSC Pull Servers

Powershell Skript für den Download der Module:

Zurück zum Inhaltsverzeichnis ...

Ein DSC Konfigurationsskript zum Erzeugen von VMs im Hyper-V

Nachdem wir jetzt alle Voraussetzungen in unserer DSC Lab-Umgebung geschaffen haben, können wir uns daran machen, mit DSC eine VM im Hyper-V zu erzeugen. Laden Sie das nachstehende Konfigurationsskript DSCHyperV_VM0.ps1 aus dem Lab-Verzeichnis D:/DSC-Lab.in eine Powershell ISE Sitzung, die mit Administratorrechten gestartet wurde.

Schauen wir uns die einzelnen Abschnitte dieses Konfigurationsskripts etwas genauer an.

Parameterliste

Das Skript startet mit einer umfangreichen Parameterliste, über die fast alle Einstellungen zum Erzeugen einer VM im Hyper-V vorgegeben werden können, wobei ich für die meisten Parameter bereits Standardeinstellungen vorbelegt habe, die für unsere DSC-Experimente geeignet sind. Hierdurch vereinfacht sich der Aufruf der Konfiguration auf wenige Angaben wie Name der VM oder Pfadname der Datei mit dem Basisimage. Damit wird dann eine virtuelle Maschine auf unserem DSC Entwicklungsrechner (“localhost”) mit diesen Einstellungen erzeugt:

  • Anzahl Prozessoren: 2
  • Dynamischer RAM-Speicher: 512 MB – 16 GB; Start mit 2GB
  • Betriebssystem Disk: Differenzierend zur angegebenen Basisimage Datei
  • Netzwerkadaptername: MGMT (“Management”)
  • verbunden mit virtuellem Switch: NatSwitch80

Natürlich können Sie bei Bedarf die Vorbelegungen der verschiedenen Parameter beim Aufruf des Skripts durch Angabe eigener Werte überschreiben.

Importieren benötigter DSC-Ressourcen

Als erstes binden wir die in der Configuration verwendeten DSC-Ressourcen mit dem Befehl Import-DscResource ein.

Variablendefinitionen

An verschiedenen Stellen in den Ressourcen Blöcken des Skripts benötigen wir mehrfach die gleichen Pfadnamen. Deshalb definieren wir hier an zentraler Stelle Variable dafür, so dass eine spätere Wartung erleichtert wird.

Die Konfiguration im Detail

Innerhalb des Node Blocks werden jetzt die einzelnen Aktionen für das Erzeugen einer VM festgelegt.

Verzeichnisse für die VM erzeugen

Mit Hilfe der File Ressource stellen wir sicher, dass im Verzeichnis für die erzeugten VMs (in unserer Lab-Umgebung E:/Hyper-V) ein Unterverzeichnis für die neue VM existiert einschließlich eines darin enthaltenen Ordners für die virtuellen Laufwerke der VM. Wir erhalten dann also die nebenstehende Verzeichnisstruktur (der Name der VM ist hier DSC-TestVM).

Das Startlaufwerk für die VM erzeugen

Jetzt müssen wir im gerade erzeugten Verzeichnis das Startlaufwerk für die VM in Abhängigkeit des Parameters $OSDiskType erzeugen. Ist der Parameterwert ‘Copy’, können wir mit der DSC Standard-Ressource File eine Kopie des im Parameter $ParentVhdPath angegebenen Betriebssystem-Basisimage erstellen. Ist für $OSDiskType als Wert ‘Differencing’ angegeben, müssen wir auf eine Ressource xVHD aus dem Powershell Modul xHyper-V zurückgreifen. Damit können wir eine differenzierende .VHDX-Datei zum angegebenen Betriebssystem-Basisimage erzeugen. Vorteil: Die ist kleiner als eine Kopie und nimmt nur die Änderungen auf, die im Betrieb der VM entstehen.

Setup Dateien für die VM in das Startlaufwerk kopieren

Mit der im nächsten Ressourcenblock angegebenen Ressource xVHDFile (ebenfalls aus dem Modul xHyper-V) können wir – falls vorhanden – VM-spezifische Konfigurationsdaten in das soeben erstellte Startlaufwerk der VM kopieren. Die Ressource erzeugt intern für die bei VhdPath angegebene VHDX-Datei temporär ein Laufwerk und kopiert anschließend mit Hilfe der File Ressource den Inhalt des als SourcePath angegebenen Verzeichnisses in den DestinationPath, der relativ zur Root des temporären Laufwerks anzugeben ist. Wie solche Konfigurationsdaten strukturiert sein können, werden wir uns später noch anschauen, wenn wir unseren DSC Web Pull Server konfigurieren.

Die VM im Hyper-V erzeugen

Jetzt haben wir alle Informationen und Daten zusammengestellt, um mit Hilfe der xVMHyperV Ressource aus dem Modul xHyper-V eine neue VM anzulegen. Ich verwende bevorzugt Gen2 VMs, da sie flexibler zu handhaben sind, wenn man Änderungen an der ursprünglichen Konfiguration durchführen will (z.B. zusätzliche virtuelle Hardware im laufenden Betrieb hinzufügen).

Vielleicht fragen Sie sich, warum ich die Zeile EnableGuestService = $true auskommentiert habe. Wenn wir in einer nicht-englischen Hyper-V Umgebung diese Ressourcen-Eigenschaft setzen, führt das beim Ausführen der Konfiguration zu einem Abbruchfehler. Hintergrund ist ein Bug (!?) im Ressourcen-Modul. Dort wird der Service hart codiert mit seiner US-englischen Bezeichnung Guest Service Interface angesprochen. In einer deutschen Windows Umgebung hat der Service hingegen z.B. die Bezeichnung Gastdienstschnittstelle, mit der Folge, dass die Ressource den Service nicht findet und einen Fehler ausgibt.

Wenn Sie in einer US-englischen Umgebung arbeiten, können Sie problemlos den Kommentar wegnehmen.

Bei nicht-englischen Betriebssystemen können Sie später den Service über die GUI des Hyper-V Managers aktivieren.

Ich bin mit dem Autor der Ressource Daniel Scott-Raynsford über seine Issue Website bei Github in Kontakt. Eine Korrektur wäre relativ simpel, allerdings mit einer Modifikation des Codes im Ressourcen Modul verbunden, was hier jetzt den Rahmen unserer DSC-Experimente sprengen würde.

Dem Netzwerkadapter der VM einen vernünftigen Namen geben

Eine durchaus vernünftige, für unsere Zwecke aber etwas unschöne Eigenschaft des Hyper-V Powershell Kommandos New-VM – auf dem die DSC-Ressource xVHyperV basiert – ist die Tatsache, dass grundsätzlich ein Netzwerkadapter für die VM erzeugt wird. Der Name dieses Adapters ist leider abhängig von der Sprache der Windows Version. In einer deutschen Hyper-V Umgebung heißt er z.B. Netzwerkkarte, in englischen Versionen Network Adapter. Eine Änderung des Namens wäre über die GUI im Hyper-V Manager möglich und auch in der Powershell gibt es hierfür das Cmdlet Rename-VMNetworkAdapter. Leider habe ich aber keine DSC-Ressource gefunden, mit der dies machbar wäre - eine Herausforderung für Experten, eine entsprechende Ressource selbst zu schreiben. Um in meinen VMs den Namen des Netzwerkadapters in Mgmt umzuändern, werde ich ein bisschen tricksen:

Zunächst entferne ich mit Hilfe der DSC-Ressource cVMNetworkAdapter aus dem Modul cHyper-V die Netzwerkkarten mit den unerwünschten Namen durch die Angabe von Absent bei der Eigenschaft Ensure. Wenn es keine Netzwerkkarte mit dem entsprechenden Namen gibt, ist das kein Problem; die Ressource führt dann eben keine Aktion aus.

Jetzt können wir unserer VM ebenfalls mit cVMNetworkAdapter einen neuen Adapter mit dem gewünschten Namen Mgmt verpassen und diesen mit dem entsprechenden Switch NatSwitch80 verbinden. Und damit dieser Name später auch in der VM genutzt werden kann, setze ich mit Hilfe der Ressource cNetworkAdapterSettings die Eigenschaft DeviceNaming des Netzwerkadapters auf $true. Details zu dieser neuen Eigenschaft von Windows Server 2016 bzw. Windows 10 hat Jan Kappen bereits in einem früheren Blogpost beschrieben. Ich werde später beim Konfigurieren von VMs darauf zurückgreifen.

Ich geb’s ja zu, ein bisschen “von hinten durch die Brust ins Knie”; wenn jemand eine bessere Idee hat, lasst es mich wissen.

Eine erste Test-VM

Jetzt können wir einen ersten Test mit dem vorstehenden DSC-Konfigurationsskript durchführen und eine VM mit dem Namen DSC-TestVM erzeugen Öffnen Sie das Skript in einer Powershell ISE Sitzung, die mit Administratorrechten gestartet wurde und führen Sie folgende Schritte aus:

  1. Wechseln Sie in das DSC-Lab Verzeichnis
  2. Laden Sie das Konfigurationsskript per Dot Sourcing in den globalen Arbeitsbereich der Powershell ISE Sitzung
  3. . ./DSCHyperV_VM0.ps1

  4. Kompilieren Sie das Skript mit folgendem Befehl
  5. DSCHyperV_VM -VMname DSC-TestVM -ParentVhdPath `
    E:/Hyper-V/WS2016_GPT_DCGUI.vhdx -OutputPath ./DSC-TestVM -Verbose

  6. Starten Sie die Konfiguration der VM
  7. Start-DscConfiguration -wait -force -Verbose -Path ./DSC-TestVM

Im Konsolenfenster können wir den Ablauf mitverfolgen. Zum Abschluss sehen wir im Hyper-V Manager, wie eine neue VM erzeugt und gestartet wird.


Zurück zum Inhaltsverzeichnis ...

Bereitstellen VM-spezifischer Konfigurationsdaten am Beispiel eines DSC Web Pull Servers

Schön, jetzt haben wir also eine virtuelle Maschine im Hyper-V am Laufen. Diese beinhaltet aber keine speziellen Funktionen, da sie aus einem “neutralen” Betriebssystemimage erzeugt wurde. Wir müssen uns deshalb eine Vorgehensweise überlegen, wie man sie nach dem ersten Start für spezielle Funktionen konfigurieren kann – natürlich soweit möglich mit DSC. Dazu müssen die notwendigen DSC-Konfigurationsdaten wie Skripte und DSC-Ressourcen irgendwie in die VMs gebracht und dann der Local Configuration Manager (LCM) in der VM veranlasst werden, die Konfiguration abzuarbeiten. Als Beispiel für eine Möglichkeit, dies zu bewerkstelligen, soll die Konfiguration eines DSC Web Pull Servers dienen.

Was ist ein DSC Web Pull Server?

Im Teil 1 meiner DSC-Artikelserie habe ich bereits kurz die beiden Betriebsmodi Push und Pull für DSC beschrieben. Für den Pull Betrieb benötigen wir (mindestens) ein Server System, das die Konfigurationsdaten bereitstellt. Dabei gibt es 2 Varianten: Entweder über eine SMB-Freigabe oder über einen Web Service. Im letzteren Fall sprechen wir von einem DSC Web Pull Server. Auf das Arbeiten mit einem solchen Web Pull Server wil ich hier nicht näher eingehen. Dies wird in einem späteren Beitrag nachgeholt.

Bereitstellen der Konfigurationsdaten

Für meine DSC Lab-Umgebung habe ich folgende Vorgehensweise zum Bereitstellen von Konfigurationsdaten gewählt: Für jede VM wird ein eigenes Unterverzeichnis mit dem Namen der VM im Projektverzeichnis D:/DSC-Lab angelegt und dann in einem weiteren Unterordner eine Verzeichnisstruktur Setup erstellt. Diese enthält die DSC Konfigurationsdaten in exakt der gleichen Form wie sie in der Ziel-VM ausgehend von der Root des Startlaufwerks C: benötigt werden.

Für unseren Web Pull Server DSC-PS01 würde dies wie folgt aussehen:

  • ​Das Verzeichnis D:/DSC-Lab/DSC-PS01 enthält alle Daten für eine VM mit dem Namen DSC-PS01 (unseren DSC Web Pull Server).
  • Das Verzeichnis D:/DSC-Lab/DSC-PS01/Setup stellt die Root des Startlaufwerks C: der VM DSC-PS01 dar.
  • In das Unterverzeichnis D:/DSC-Lab/DSC-PS01/Setup/Program Files/WindowsPowerShell/Modules werden alle DSC Ressourcen Module kopiert, die für die DSC-Konfiguration der VM notwendig sind. Man kann sich diese aus dem Standardverzeichnis für DSC-Ressourcen auf unserem Hyper-V Test- und Entwicklungsrechner - also aus C:/Program Files/WindowsPowerShell/Modules - per Copy-Befehl holen.
  • Im Unterverzeichnis D:/DSC-Lab/DSC-PS01/Setup/Windows/Setup/Scripts wird eine Datei mit dem Namen SetupComplete.cmd abgelegt, über die die DSC-Konfiguration in der VM angestoßen wird. Dies ist eine “klassische” Windows Batch Datei, die vom Windows Setup automatisch zum Abschluss einer erfolgreichen Installation – also noch vor der ersten Login Möglichkeit – aufgerufen wird. Es ist der ideale Zeitpunkt, um die DSC-Konfiguration einer neu erzeugten VM anzustoßen. Dazu rufen wir ein Powershell Skript RunDSC.ps1 aus dem DSC-Verzeichnis der VM auf, das dann die eigentliche DSC-Konfiguration ausführt:

@echo off
PowerShell.exe -ExecutionPolicy RemoteSigned -File C:/DSCRunDSC.ps1
exit

  • Das Unterverzeichnis D:/DSC-Lab/DSC-PS01/Setup/DSC enthält alle Skripte und Daten, die für die DSC-Konfiguration der VM erforderlich sind. Für unseren Web Pull Server DSC-PS01 habe ich die folgenden Dateien hinterlegt, auf deren Inhalt ich gleich zu sprechen komme.

Ich habe mir Powershell Skripte geschrieben, die diese Verzeichnis- und Dateistrukturen für eine VM erzeugen. Ein Beispiel für unseren Web Pull Server DSC-PS01 finden Sie in der zum Download angebotenen Datei DSC-Lab.zip unter dem Namen New-DSC-PS01_SetupFiles.ps1. Ich will hier nicht näher auf dieses Skript eingehen, sondern nur die Inhalte der damit erzeugten Dateien etwas genauer betrachten. Hält man sich an die hier beschriebene Vorgehensweise zum Bereitstellen von Konfigurationsdaten, so kann man dieses Skript New-DSC-PS01_SetupFiles.ps1 als Vorlage auch für andere VMs verwenden. Die einzelnen Abschnitte muss man dann natürlich an die Anforderungen der VM anpassen.

Existiert beim Erzeugen einer VM mit dem im vorherigen Kapitel beschriebenen Konfigurationsskript DscHyperV_VM eine solche Setup-Struktur mit Konfigurationsdaten, wird diese mit der Ressource xVhdFile in die Root des Startlaufwerks der VM kopiert (Zeile 103-114).

Zurück zum Inhaltsverzeichnis ...

Die Konfiguration unseres DSC Web Pull Servers DSC-PS01 mit partiellen Konfigurationen

Im Teil 1 meiner DSC-Artikelserie habe ich das Thema Partielle Konfigurationen bereits kurz angeschnitten. Am Beispiel unseres Web Pull Servers will ich dies nun etwas genauer beleuchten.

Wenn wir eine neue VM erzeugt haben, müssen wir sie noch konfigurieren. Typischerweise sind dabei zumindest folgende Aktionen notwendig.

  • Wir müssen das Betriebssystem konfigurieren, also z.B. IP-Adressen zuweisen und dem Betriebssystem in der VM einen vernünftigen Computernamen geben. Ich will diesen Schritt hier als OSconfig bezeichnen.
  • Wir müssen die in der VM benötigten Anwendungskomponenten installieren und konfigurieren. Diesen Schritt will ich hier mit APPconfig bezeichnen. Die durchzuführenden Aktionen sind natürlich abhängig von den Funktionalitäten, die in der VM verfügbar sein sollen. Für einen DSC Web Pull Server müssen wir dazu die Windows Komponenten DSC Service und IIS sowie eine Web Service Anwendung - den DSC Web Pull Server - installieren und konfigurieren.
  • Dann müssen wir noch den Local Configuration Manager (LCM) in der VM konfigurieren und ihm die notwendigen partiellen Konfigurationsschritte bekannt machen. Ich will dies hier als LCMconfig bezeichnen.

In der Praxis bietet es sich an, für jede der Aktionen ein eigenes Konfigurationsskript zu erstellen.

Die Betriebssystemkonfiguration (OSconfig)

Beginnen wir mit der Betriebssystemkonfiguration. Dazu habe ich ein Konfigurationsskript OSconfig.ps1 sowie eine Powershell Datendatei OSconfig-data.psd1 erstellt. Beide Dateien liegen im Verzeichnis C:/DSC unserer VM:

:OSconfig.ps1:

Zum Festlegen der IP-Konfiguration der VM verwenden wir 3 Resourcen aus dem xNetworking Modul :

  • xIPAddress: Legt die IP-Adresse des bei InterfaceAlias angegebenen Netzwerkadapters fest. InterfaceAlias ist der Name des Adapters, wie er in der VM erscheint. Über PrefixLength wird die Netzmaske festgelegt und über AddressFamily legen wir fest, ob es sich um eine IPv4 oder IPv6 Adresse handelt.
  • xDefaultGateway: Hier wird die IP-Adresse für das Default Gateway festgelegt - in unserem Beispiel ist dies die Adresse unseres NAT-Switch.
  • xDNSServerAddress: Hiermit werden die IP-Adressen unserer DNS-Server festgelegt. In einem späteren Beitrag werde ich noch auf das Bereitstellen eines DNS-Servers per DSC eingehen. Da dieser Server - er wird die IP-Adresse 192.168.80.10 erhalten - momentan in unserer Lab-Umgebung noch nicht existiert,  definiere ich hier zusätzlich als alternativen DNS-Server meinen Internet Router (192.168.1.1), der dann automatisch verwendet wird, wenn der primäre DNS-Server nicht erreichbar ist.

Zum Festlegen des Computernamens verwenden wir eine Ressource aus dem Modul xComputerManagement:

  • xComputer: Diese Ressource weist dem Betriebssystem in der VM den gewünschten Computernamen zu und kümmert sich dann um den danach notwendig Neustart des Systems.

OSconfig-data.psd1:

Wozu diese Datendatei? Das Konfigurationsskript in OSconfig.ps1 ist neutral und kann in dieser Form für jede VM verwendet werden. Die echten Daten werden beim Kompilieren der Konfiguration in Form einer Powershell Datendatei mit dem Parameter -ConfigurationData übergeben (siehe Zeile 29). Für eine andere VM mit anderen Daten müssen dann nur die Werte in der Datendatei angepasst werden. In der TechNet Library finden Sie weitere Informationen zum Trennen von Konfigurationen und zugehörigen Daten.

Die Anwendungskonfiguration (APPconfig) für unseren Web Pull Server DSC-PS01

Analog zur Betriebssystemkonfiguration bauen wir auch die Anwendungskonfiguration auf: Ein Konfigurationsskript mit dem Namen APPconfig.ps1 und eine Datendatei APPconfig-data.psd1.

APPconfig.ps1:

APPconfig-data.psd1

Um einen DSC Web Pull Server zu konfigurieren, müssen wir zunächst einige Windows Komponenten installieren. Hierzu steht im DSC Standardmodul PSDesiredStateConfiguration eine Ressource WindowsFeature zur Verfügung.

Die Ressource WindowsFeature erwartet den Namen der zu installierenden Windows Komponente als Wert bei der Eigenschaft Name. Doch wie ermittelt man diesen Namen? Geben Sie in einem Powershell Konsolenfenster folgenden Befehl ein:

Get-WindowsFeature

Als Ergebnis erhalten Sie eine lange 3-spaltige Liste mit allen installierbaren Windows Komponenten. Die in der 2. Spalte mit der Überschrift "Name" ausgegebenen Bezeichnungen sind die Werte, die von der Ressource WindowsFeature erwartet werden.

Die erste Komponente, die für einen DSC Web Pull Server installiert werden muss, ist der DSC Service. Die Ressource WindowsFeature sorgt dafür, dass alle weiteren dafür notwendigen Windows Komponenten ebenfalls installiert werden, insbesondere hier der IIS, jedoch ohne die GUI Tools mit dem Namen Web-Mgmt-Tools. Diese installieren wir mit einer weiteren WindowsFeature Instanz. Durch Angabe von 'Present' bei der Eigenschaft Ensure wird die Komponente jeweils installiert, mit der Angabe 'Absent' würde sie deinstalliert werden.

Anmerkung: Die Ressource WindowsFeature kann nur auf Server Betriebssystemen verwendet werden. Sie setzt auf dem Server Manager des Betriebssystem auf, der bei Client Betriebssystemen wie Windows 10 nicht vorhanden ist. Als Alternative steht dort eine Ressource WindowsOptionalFeature mit ähnlicher Funktionalität zur Verfügung.

Nun können wir mit der Ressource xDSCWebService aus dem Modul xPSDesiredStateConfiguration die eigentliche Web Service Anwendung für den Web Pull Server installieren.

Normalerweise sollte die Kommunikation zwischen einem DSC Web Pull Server und den Clients mit SSL verschlüsselt werden. Für unsere Lab-Umgebung verzichten wir darauf, um die Sache nicht zu kompliziert zu gestalten. Deshalb setzen wir die entsprechenden Eigenschaften wie folgt:

  • AcceptSelfSignedCertificates = $false
  • CertificateThumbPrint = "AllowUnencryptedTraffic"
  • UseSecurityBestPractices = $false

Weiterhin verlangt die Ressource, dass wir einen Namen festlegen, unter dem der Web Service erreichbar ist ("Endpoint") und den zugehörigen IP-Port.

Und dann müssen wir natürlich noch die Pfadnamen festlegen, wo die Web Service Anwendung installiert werden soll (PhysicalPath - hier in der Root des IIS) und wo Konfigurationsskripte und DSC-Ressourcen Module abgelegt werden sollen.(ConfigurationPath und ModulePath).

Auch wenn wir bei der Kommunikation mit dem Pull Server auf Verschlüsselung verzichten, so muss sich ein Client trotzdem authentisieren. Der Authentisierungscode besteht aus einer GUID, die in einem RegistrationKeyFile auf dem Web Server hinterlegt ist. Jeder Client, der mit dem Pull Server kommunizieren will, muss diesen Authentisierungscode beim Verbindungsaufbau als "Ticket" vorzeigen. Eine GUID kann man sich in der Powershell mit dem Befehl

New-Guid

erzeugen. Den angezeigten Wert hinterlegen wir in der Datendatei APPconfig-data.psd1 und lassen ihn mit einer Instanz der File Ressource in die angegebene Datei schreiben.

Die Konfiguration des Local Configuration Managers (LCM) für unseren DSC Web Pull Server DSC-PS01

Jetzt fehlt uns noch das Konfigurationsskript für den Local Configuration Manager (LCM) in unserer VM. Es ist in der Datei LCMconfig.ps1 hinterlegt.

Im Ressourcenblock Settings legen wir die globalen Einstellungen für den LCM fest. Konfigurationen müssen im Push-Modus übergeben werden (RefreshMode = 'Push'), dabei ist das überschreiben vorhandener Module erlaubt (AllowModuleOverwrite = $true) und wir arbeiten im Debug-Modus (DebugMode = 'All'). Weiterhin legen wir fest, dass ein automatischer Neustart des Systems erfolgen soll, falls dies notwendig ist - z.B. nach dem Ändern des Computernamens (RebootNodeIfNeeded = $true) und dass danach die Konfiguration fortgesetzt werden soll (ActionAfterReboot = 'ContinueConfiguration'). Dann definieren wir noch die Zeitintervalle, nach denen der LCM jeweils aktiviert wird und dass er im Falle von Konfigurationsänderungen automatisch die ursprüngliche Konfiguration wieder herstellen soll (ConfigurationMode = 'ApplyAndAutoCorrect').

Nach dem Festlegen dieser globalen Einstellungen müssen wir den LCM noch informieren über seine partiellen Konfigurationen. Dies geschieht jeweils mit einem Ressourcenblock PartialConfiguration. Der Name des jeweiligen Blocks muss exakt dem Namen der jeweiligen partiellen Konfiguration entsprechen.

Das Initiieren der DSC-Konfiguration in der VM nach der Windows Installation

Weiter oben habe ich bereits erwähnt, dass wir im Betriebssystem der VM eine Batchdatei SetupComplete.Cmd hinterlegt haben, die vom Windows Setup automatisch als letzte Aktion aufgerufen wird. Aus dieser Batchdatei heraus starten wir die Powershell, um ein Skript RunDSC.ps1 auszuführen.

Dieses Skript führt jetzt die einzelnen Schritte aus zum Initiieren der DSC-Konfiguration in der VM.

  • Mit Set-Location -Path $PSScriptRoot setzen wir das Arbeitsverzeichnis auf unser Skript-Verzeichnis C:/DSC
  • Durch den Aufruf des Skripts Rename-NetAdapterToHyperVDeviceNaming.ps1 - Sie finden es ebenfalls in der Download Library DSC-Lab.zip - werden die Namen der Netzwerkadapter innerhalb der VM (sie heißen normalerweise Ethernet, Ethernet 2, ...) auf die Namen geändert, die im Hyper-V festgelegt sind und für die die Eigenschaft DeviceNaming auf 'On' steht. In unserem Beispiel hat der Netzwerkadapter in der VM nun nicht mehr den Namen Ethernet, sondern heißt jetzt Mgmt.
  • Nun kompilieren wir das Konfigurationsskript für den LCM und übergeben es ihm durch einen Aufruf des Cmdlets Set-DscLocalConfigurationManager. Der LCM wartet jetzt auf die Übergabe der partiellen Konfigurationen.
  • Zunächst wird die Betriebssystemkonfiguration OSconfig.ps1 kompiliert und dem LCM mit Publish-DscConfiguration bekannt gemacht.
  • Analog verfahren wir mit der Anwendungskonfiguration APPconfig.ps1.
  • Der LCM hat nun alle Angaben, um seine Arbeit aufzunehmen, d.h. wir können jetzt mit Start-DscConfiguration die Konfiguration starten. Durch den Parameter -UseExisting weisen wir ihn darauf hin, die zuvor übergebenen partiellen Konfigurationen zu verwenden.

Zurück zum Inhaltsverzeichnis ...

Der DSC Web Pull Server DSC-PS01 entsteht

Jetzt ist endlich der Zeitpunkt gekommen, wo wir unseren DSC Web Pull Server DSC-PS01 als VM im Hyper-V erzeugen können. Nachdem alle Konfigurationsdaten in der zuvor beschriebenen Verzeichnisstruktur abgelegt sind, verwenden wir das eingangs beschriebene Konfigurationsskript DSCHyperV-VM0.ps1 und führen in einer Powershell (ISE) Sitzung folgende Befehle aus (bitte mit Administratorrechten starten!);

  1. Wechseln Sie in das DSC-Lab Verzeichnis
  2. Laden Sie das Konfigurationsskript per Dot Sourcing in den globalen Arbeitsbereich der Powershell ISE Sitzung
  3. . ./DSCHyperV_VM0.ps1

  4. Kompilieren Sie das Skript mit folgendem Befehl
  5. DSCHyperV_VM -VMname DSC-PS01 -ParentVhdPath `
    E:/Hyper-V/WS2016_GPT_DCGUI.vhdx -OutputPath ./DSC-PS01 -Verbose

  6. Starten Sie die Konfiguration der VM
  7. Start-DscConfiguration -wait -force -Verbose -Path ./DSC-PS01

Wir können uns jetzt mit der VM DSC-PS01 über den Hyper-V Manager verbinden und den weiteren Ablauf mitverfolgen.

Start und Konfiguration

Der Windows Setup startet ...

Jetzt wird der LCM im Hintergrund aktiv. Es wird durch das Setzen des neuen Computernamens während der Betriebssystemkonfiguration ein Neustart durchgeführt ..

... und dann können wir uns als Administrator anmelden (das Kennwort haben wir ganz am Anfang in der Unattend.xml festgelegt!).

Im Server Manager können wir das System schon mal inspizieren, während im Hintergrund noch die Anwendungskonfiguration (APPconfig) läuft. Nicht verzweifeln, das kann einige Minuten dauern!

Funktionsprüfung

Starten Sie in der VM den Internet Explorer (oder einen anderen Browser) und geben Sie folgende URL in das Adressfeld ein:

http://localhost:8080/PSDSCPullServer.svc

Wenn dann im Browser-Fenster XML-Code erscheint, der ähnlich aussieht wie in der nebenstehenden Abbildung, dann können Sie davon ausgehen, dass der Web Service mit dem Pull Server korrekt installiert und konfiguriert wurde. Die Bedeutung des XML-Codes soll uns hier nicht weiter interessieren.

Zurück zum Inhaltsverzeichnis ...

Troubleshooting

Wenn Sie den Beschreibungen in diesem Artikel folgen und dabei auch gleich die Skripte aus der angebotenen Download Library DSC-Lab.zip verwenden, sollten Sie eigentlich ohne Probleme die Szenarien nachvollziehen können. Doch was tun, wenn's mal nicht klappt?

Ich will Ihnen hier ein paar Tipps geben, wie Sie Probleme aufdecken können.

Solange wir interaktiv mit DSC Konfigurationsskripten arbeiten und dabei den Parameter -Verbose angeben, sehen wir im Powershell Fenster immer ein ausführliches Protokoll über die von den DSC Ressourcen ausgeführten Aktionen. Bei einem dabei auftretenden Problem werden entsprechende Powershell Fehlermeldungen mit protokolliert. So kann man in den Konfigurationen schon mal mit der Fehlersuche bei den Ressourcen Blöcken beginnen, bei denen der Fehler auftritt.

Spannender wird es, wenn man bei unseren Szenarien feststellt, dass eine DSC Konfiguration in einer erzeugten VM nicht so abläuft, wie man sich das vorgestellt hat. In diesem Fall sieht man interaktiv zunächst nichts, man merkt nur, dass die VM nicht richtig arbeitet.

In einem solchen Fall muss man in der VM selbst die Problemstelle suchen. Dazu gibt es folgende Hilfsmittel:

  • Die Ereignisanzeige (Event Viewer) in der VM
  • Protokolldateien in der VM

Die Ereignisanzeige (Event Viewer) in der VM

Der Local Configuration Manager (LCM) führt einen eigenen Kanal im Windows Ereignisprotokoll. in dem alle Aktionen aufgeführt sind. In der Windows Ereignisanzeige (Event Viewer) findet man dieses Protokoll in der Kategorie Operational unter Application and Services Logs -> Microsoft -> Windows -> Desired State Configuration. Es ist zwar mitunter etwas mühsam, in der Fülle der protokollierten Ereignisse geeignete Hinweise zu finden, aber im Fehlerfall sollte man hier einen Blick hineinwerfen.

Protokolldateien

Neben den Einträgen in der Ereignisanzeige erstellt der LCM auch ausführliche Protokolldateien, deren Inhalt den Ausgaben beim interaktiven Arbeiten entsprechen. Die Dateien werden im Verzeichnis C:/Windows/System32/Configuration/ConfigurationStatus angelegt mit der Namenerweiterung .JSON. Leider bestehen die Dateinamen aus GUIDs, so dass eine Suche damit relativ sinnlos ist. Einfacher wird es, wenn man sie nach Datum / Uhrzeit sortiert.

Die .JSON-Dateien enthalten Text, der mit einem Editor wie Notepad angeschaut werden kann.

Praxistipp für unser Vorgehen

Zum Testen der in diesem Blogpost vorgestellten Skripte hat sich folgendes Vorgehen bewährt: In der problembehafteten VM starte ich eine Powershell ISE Sitzung mit Administratorrechten und lade das Skript RunDSC.ps1, das ja alle für die VM vorgesehenen DSC Aktionen sequentiell aufruft. Nun kann man mit den Debug-Funktionen der Powershell ISE die Problemstelle bei der DSC Konfiguration ermitteln.

Wichtig: Korrigieren Sie Fehler nicht nur in der VM, sondern vor allem auch im Setup-Verzeichnis der VM bzw. im Skript, mit dem Sie die Setup-Verzeichnisstruktur auf Ihrem Test- und Entwicklungsrechner erzeugen (im Beispiel hier New-DSC-PS01_SetupFiles.ps1), damit bei einem erneuten Versuch, die VM zu generieren, Korrekturen dann auch in die neue VM übernommen werden.

Zurück zum Inhaltsverzeichnis ...

Wie geht's weiter?

In diesem Artikel habe ich anhand von ein paar Beispielen eine Vorgehensweise aufgezeigt, wie man DSC in einer eigenen Systemumgebung einsetzen kann. Ich weiteren Beiträgen werde ich mich um die Nutzung des hier installierten Pull Servers durch Pull Clients kümmern und auch einige weitere Einsatzszenarien beschreiben.

Zurück zum Inhaltsverzeichnis ...

Der Beitrag Desired State Configuration (DSC) und Windows Server 2016 – Teil 2: VMs im Hyper-V, Partielle Konfigurationen und ein Web Pull Server erschien zuerst auf Hyper-V Server Blog.

Arnd Rößner: Terrabit Partner Werbung

Begeisterung. Und was uns sonst noch auszeichnet. | Die Terrabit.  

Arnd Rößner: Terrabit Partner Werbung

vCompany +Bau – Die intelligente IT-Lösung für die vernetzte Baustelle. Powered by Terrabit.  

Arnd Rößner: Terrabit Partner Werbung

ProSementis GmbH: “Mit der Cloud sind wir einfach safe.” | Terrabit vCompany im Einsatz    

Arnd Rößner: Azure Information Protection

Weitere Informationen zu Azure Information Protection – Microsoft

Mark Heitbrink: Default Domain Policy und Default Domain Controllers Policy ändern oder nicht?

Grundsatzdiskussion, verwenden und ändern oder doch eigene?

Arnd Rößner: Erster Patchday 2017: Microsoft geht‘s gemächlich an, Adobe stellt kritische Updates bereit

Erster Patchday 2017: Microsoft geht‘s gemächlich an, Adobe stellt kritische Updates bereit – heise online

faq-o-matic: Veeam Agent for Linux im Überblick

Tim Gümmer hat auf dem Blog consulting-lounge.de einen Überblick über Veeams neuen Backup-Agenten für Linux veröffentlicht. Neben der Vorstellung der Software liefert der Artikel auch ein kleines Skript, um Backup-Benachrichtigungen auch für Jobs mit eigenem Sicherungsziel zu bekommen, was vom Hersteller nicht vorgesehen ist.

[Veeam Agent for Linux veröffentlicht! – | ConsultingLounge]
http://consulting-lounge.de/2017/01/veeam-agent-for-linux-veroeffentlicht/

Thorsten Christoffers: Fast overview about your Azure spending with a windows tool for your subscriptions

Between Christmas and New Year’s Eve, I had a couple of days I had some time for hacking. So, I wrote a small windows tool which can display the Azure spending for my subscriptions and notifies me if one amount has changed.  The result is my tool “...

faq-o-matic: SQL Server Express: Datensicherung über Powershell

Die SQL Express Edition erfreut sich gerade für kleine Anwendungen großer Beliebtheit, da sie keine Lizenzkosten verursacht. Diese Beliebtheit dürfte sogar noch steigen seit dem Microsoft mit dem Service Pack 1 für den SQL Server 2016 viele Funktionen der Standard und sogar Enterprise Edition nun auch in der Express Edition verfügbar macht. Nun stehen hier auch viele der In-Memory Features und Sicherheitsfunktionen wie AlwaysEncrypted auch in der Express Edition bereit. Informationen zu allen Neuerungen in der Express Edition findet man in der offiziellen Ankündigung unter https://blogs.msdn.microsoft.com/sqlreleaseservices/sql-server-2016-service-pack-1-sp1-released/

Der Agent

Etwas, was aber weiterhin nur eingeschränkt enthalten ist, ist der SQL Server Agent. Dadurch muss man sich Alternativen überlegen, wie man zeitgesteuerte Aufgaben abbilden kann. Dieser Umstand wird gerade für die Sicherungen der Datenbank zum Problem. Mit den Bordmitteln des SQL Server Express gibt es erstmal keine Möglichkeit seine Datenbanken automatisch zu sichern.

Bei der Suche im Internet findet man häufig die Vorgehensweise die Datenbank Datei direkt zu sichern indem man die mdf-Datei kopiert. Der Nachteil an dieser Methode ist aber, dass der SQL Server Dienst für den Zeitraum der Sicherung nicht laufen darf, da sonst die Datei(en) noch im Zugriff sind. Ein weiterer Nachteil ist zudem, dass man die Datenbank nur im Wiederherstellungsmodel „Einfach“ betreiben kann da eine Log Sicherung und damit das leeren des Transaktionslogs nicht möglich ist.

Alternative Powershell

Microsoft stellt aber mit der Powershell eine einfache Möglichkeit bereit wie man auch in der Express Edition seine Datenbanken sichern kann.

Hierfür braucht man lediglich ein kleines Powershell-Skript und den Aufgabenplaner von Windows, und fertig ist die Sicherungslösung. Hier habe ich ein Beispiel für ein solches Sicherungsskript erstellt.

<#—————————————————————–

Datensicherung von SQL Datenbanken über die Powershell

Autor Benjamin Hoch

Version 1.0 Datum: 12.12.2016

——————————————————————#>

# Variablen Definieren und Werte zuweisen

$Server= ‚SERVER' # Servername des Windows Servers

$Instanz= ‚INSTANZ' # Instanz Name des SQL Servers

$Zielpfad= ‚c:\temp\backup\' # Zielpfad der Sicherungsdateien

# Zeitstempel erzeugen

$date = Get-Date -Format o | foreach {$_ -replace ‚:', ‚.'}

# Auslesen aller Datenbanken außer TempDB und Variable zuweisen

$dbs= dir sqlserver:\sql\$Server\$Instanz\databases -force | Where-Object {$_.name -notlike ‚tempdb'}

# Backup Ordner erzeugen sofern nicht vorhanden

if(!(test-path $zielpfad)){New-Item $zielpfad -ItemType directory}

# Backup aller Datenbanken

$dbs | foreach-object {Backup-SqlDatabase -ServerInstance $server\$Instanz -Database $_.name -BackupFile $zielpfad\$_$date.bak"}

Das Skript sichert alle Datenbanken außer der TempDB in das angegebene Zielverzeichnis. Für jede Datenbank wird ein eigener Unterordner erstellt und jede Sicherungsdatei erhält einen eindeutigen Zeitstempel.

Das Skript speichert man ab und ruft es über den Aufgabenplaner von Windows im gewünschten Intervall auf.

Transaktionslog-Sicherung

Um eine Transaktionslog-Sicherung für eine bestimmte Datenbank durchzuführen, nutzt man einen zusätzlichen Parameter.

<#—————————————————————–

Logsicherung von einer SQL Datenbank über die Powershell

Autor Benjamin Hoch

Version 1.0 Datum: 12.12.2016

——————————————————————#> 

# Variablen Definieren und Werte zuweisen

$Server= ‚SERVER' # Servername des Windows Servers

$Instanz= ‚INSTANZ' # Instanz Name des SQL Servers

$Zielpfad= ‚c:\temp\backup\' # Ziel der Sicherung

$Datenbank =‚meinedb' 

# Zeitstempel erzeugen

$date = Get-Date -Format o | foreach {$_ -replace ‚:', ‚.'} 

Backup-SqlDatabase -ServerInstance $Server\$Instanz -Database $Datenbank -BackupAction Log -BackupFile $zielpfad\$datenbank$date.trn“ 

Aufgabe erstellen

Im Windows-Aufgabenplaner erstellt man nun eine neue Aufgabe für die Sicherung. Im Reiter „Aktionen“ wählt man „Programm starten“ aus und wählt als Programm die Powershell.exe aus. Diese findet man im typischerweise in folgendem Verzeichnis:

%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe

Bei „Argumente hinzufügen“ gibt man nun den Pfad und den Namen des Powershell-Skriptes an, welches ausgeführt werden soll.

clip_image002

Fertig ist die Sicherung der SQL Server Datenbanken.

Es ist natürlich auch möglich, in derselben Aufgabe mehrere Aktionen zu planen. Hierdurch kann man in einer Aktion die tägliche/wöchentliche Vollsicherung aller Datenbanken planen und in einer anderen Aktion die stündliche Transaktionslog-Sicherung für eine bestimmte Datenbank.

Hinweis

Die Beispielskripte entfernen keine alten Sicherungen. Es ist daher notwendig die alten Sicherungen von Zeit zu Zeit händisch/automatisch zu löschen.

Die Skripte sind mit der Powershell 5 auf Windows Server 2012 R2 und 2016 mit SQL Express 2014 getestet.

Arnd Rößner: Microsoft treibt digitale Transformation der Automobilindustrie: Connected Vehicle Platform unterstützt Autohersteller bei der Entwicklung sicherer, persönlicher und autonomer Fahrerlebnisse

  Microsoft präsentiert Connected Vehicle Platform mit Renault-Nissan als erstem Partner Volvo integriert Skype for Business in Volvo 90er-Serie Microsoft und BMW arbeiten gemeinsam an BMW Connected NXP und Microsoft demonstrieren sichere IoT-Lösungen für Fahrzeuge und Gebäude Microsoft hat auf der Consumer Electronics Show (CES) in Las Vegas die Connected Vehicle Platform vorgestellt: Dienste und […]

Carsten Rachfahl [Hyper-V]: Videointerview mit Jeffrey Snover über Nano Server, Container, Azure und Azure Stack

Auf der Microsoft Ignite Konferenz 2016 hatte ich das Glück Jeffrey Snover (den Vater von PowerShell und Microsoft Technical Fellow) auf dem Microsoft Stand zu treffen.

Wie Jeffrey so ist war er spontan zu einem Interview bereit und wir haben über einige interessante Themen unterhalten. 

Folgende Themen haben wir in dem Interview angeschnitten:

  • Nano Server
  • Container
  • Azure
  • Azure Stack
  • PowerShell

Ich wünsche euch immer viel Spaß beim Anschauen des Interviews.

Der Beitrag Videointerview mit Jeffrey Snover über Nano Server, Container, Azure und Azure Stack erschien zuerst auf Hyper-V Server Blog.

faq-o-matic: SAMRi10: Das Auflisten von Windows-Konten beschränken

Windows 10 und Windows Server 2016 enthalten eine Konfigurationsänderung, die es Angreifern erschwert, neue Ziele in einem Netzwerk ausfindig zu machen und zu erreichen. Dazu ändern sie das Verhalten des SAMR-Protokolls, das es seit frühen Windows-NT-Versionen gibt.

Bislang war es jedem authentifizierten Benutzer möglich, alle Benutzerkonten eines Computers oder der Domäne aufzulisten. Das ermöglicht eine Reihe weitergehender Angriffe (ein Beispiel gibt es bei uns mit einem simplen DOS-Angriff auf eine Domäne). Dabei umgeht die hier diskutierte Methode das Active Directory und das Kerberos-Protokoll, indem es mit der alten SAM-Logik von Windows NT arbeitet.

Seit Windows 10, Version 1607, und der Release-Version von Windows Server 2016 hat sich hier die Zugriffslogik geändert, indem die Remote-Abfrage nur noch für Administratoren erlaubt ist. Ein PowerShell-Skript in der TechNet Gallery erlaubt eine granularere Steuerung:

[TechNet SAMRi10 – Hardening SAM Remote Access in Windows 10/Server 2016]
https://gallery.technet.microsoft.com/SAMRi10-Hardening-Remote-48d94b5b

Thorsten Christoffers: sepago ist Citrix Platinum Partner und erreicht damit den höchsten Partnerstatus bei Citrix

Wir sind Citrix Platinum Solution Advisor. Darauf sind wir sehr stolz. Seit vielen Jahren pflegen wir den Herstellerkontakt zu Citrix und stehen im engen Austausch.Entscheidend für den Partnerstatus sind das herausragende Know-how im gesamten Citrix Produktportfolio...

Thorsten Christoffers: Microsoft ernennt Alexander Benoit zum MVP für Enterprise Mobility

Wir freuen uns mit unserem Kollegen Alexander Benoit über die Auszeichnung zum Most Valuable Professional für Enterprise Mobility. Entscheidend für die Auszeichnung sind die außergewöhnliche...

SharePointPodcast: SPPD360 Ausblick 2017 und Voicerepublic mit Katharina Rapp


Mit guten Vorsätzen ins Jahr 2017 – deshalb arbeite ich erstmal ein paar News aus den letzten Wochen auf, gebe einen Ausblick auf das Jahr 2017, stelle ein paar neue Projekte auf der Community vor und habe Katharina Rapp von Voicerepublic im Interview. Und es gibt eine Freikarte für die SharePointKonferenz im April zu gewinnen.

Sponsoren

Termine

Talk

 

 

Flattr this!

Carsten Rachfahl [Hyper-V]: Webinar Failover Clustering in Windows Server 2016 am 16. Januar 2017

Am 13. Januar findet unser erstes Webinar in diesem Jahr statt. Diesmal geht es um Failover Clustering. Ich hoffe die Stunde reicht da es in Windows Server 2016 wirklich viele spannende Neuerungen im Cluster gibt. Einige davon sind:

  • Cluster Roling Upgrade
  • Failure Domains
  • Node Fairness
  • Storage und Compute Resiliency
  • Improved Cluster Log
  • usw.

Ich denke es wird auf jeden Fall nicht langweilig und ich versuche diesmal auch ein fehlerfreihes Webinar hinzubekommen :-) Also hier geht's zur Anmeldung.

Der Beitrag Webinar Failover Clustering in Windows Server 2016 am 16. Januar 2017 erschien zuerst auf Hyper-V Server Blog.

Hans Brender: MVP Award 2017

MVP, Microsoft, Most Valuable Professional,Microsoft Most Valuable Professional MVP, Microsoft, Most Valuable Professional,Microsoft Most Valuable Professional MVP, Microsoft, Most Valuable Professional,Microsoft Most Valuable Professional MVP, Microsoft, Most Valuable Professional,Microsoft Most Valuable Professional MVP, Microsoft, Most Valuable Professional,Microsoft Most Valuable Professional

2013

2014

2015

2016

2017

5 in einer Reihe. Microsoft hat mich gestern zum 5.Mal in Folge mit dem MVP Award ausgezeichnet. Und auch dieses Jahr bin ich stolz, einer von etwa 4000 weltweiten MVP’s zu sein.

5 times in a row. Yesterday Microsoft has honored me for the 5th time in sequence with the MVP Award. And also this year, I am proud to be an MVP with 4000 other around the world.

MVP

Sehr geehrte(r) Hans Brender,
Herzlichen Glückwunsch! Wir freuen uns, Ihnen den Microsoft® MVP Award 2017 verleihen zu können! Diese Auszeichnung wird an herausragende, führende Mitglieder der technischen Communities verliehen, die ihre wertvollen praktischen Erfahrungen mit anderen Menschen teilen. Wir schätzen Ihren außerordentlich bedeutenden Beitrag in den technischen Communities zum Thema Office Servers and Services im vergangenen Jahr hoch ein.


Thank you Microsoft and BitTitan. They give me time and support.


faq-o-matic: Microsoft: Server-Support verlängern mit “Premium Assurance”

Microsoft bietet seinen Kunden jetzt eine Option, den Herstellersupport für bestimmte Serverprodukte auf insgesamt 16 Jahre zu verlängern. Das neue Programm “Premium Assurance” lässt sich kostenpflichtig für Windows Server und SQL Server hinzubuchen.

Bisher gewährt Microsoft einen definierten Supportzeitraum für seine professionellen Produkte, der sich in die zwei Phasen “Mainstream Support” (fünf Jahre nach Erscheinen) und “Extended Support” (weitere fünf Jahre) aufteilt. Wer für seine Lizenzen das Upgrade-Abo “Software Assurance” abgeschlossen hat, kann für bestehende Installationen jetzt eine dritte Supportphase von sechs Jahren hinzukaufen. Die ersten Produktversionen, für die dies möglich ist, sind Windows Server 2008 und SQL Server 2008.

PremiumAssurance_1

Näheres dazu findet sich hier:

[Introducing Windows Server Premium Assurance and SQL Server Premium Assurance | Hybrid Cloud Blog]
https://blogs.technet.microsoft.com/hybridcloud/2016/12/08/introducing-windows-server-premium-assurance-and-sql-server-premium-assurance/

Arnd Rößner: Frohes neues Jahr

Ich wünsche Euch allen ein Frohes neues Jahr 2017 Viele Grüße Arnd Rößner

Hans Brender: OneDrive (for Business) | Wish list for 2017

OneDrive for Business, Microsoft OneDrive, Microsoft

The year 2016 ends.  And I haven’t written a wish list for this year. My last wish list (written in German language) was written 12/14. And as a result: All wishes are done. Now it’s time to write a new one. For the upcoming year 2017:

My Wish list for year 2017

Documentation

Most of the implementation of the Next Generation Sync Client is done. What’s missing is a complete technical description. There is no description of all the parameters of the client. Also no description about the change of the client himself, Automatic Updates, Error handling, Group Policies and restrictions. If you find the idea of a complete description a good idea, feel free to vote for my entry in UserVoice of OneDrive.

 

Encryption

In the old days I always talk about Encryption. And the old “Groove” Sync Client which was implemented in SharePoint Workspace 2010, and this was Part of the Office 2010 Suite, are able to handle such files. So that was perfect, to encrypt your SharePoint document libraries with RMS. But the Next Generation Sync Client does not handle RMS encrypted files. I think, that would be a good idea, that the NGSC may handle RMS encrypted files.

 

Move To

Yes, you may copy in a web-Browser files and folders from OneDrive for Business to Team sites and / or Groups. But only copy. No Move. But if you copy a file, you now have it twice, and Users are confused, because there are two identical files on two different locations.

 

Reintroduction of Smart Files

During development of The Next Generation Sync Client, Microsoft has to go back some steps. But Then you may able, not to implement the old Errors of the Groove client. Even the much more advanced SkyDrive Client had to be integrated. This caused, that Microsoft let die the Smart Files technology. And told us, that most of the users have not have understand the concept od Smart Files. The following Links will explain the concept of Smart Files, but at this time I only blog in German language.

SkyDrive | Smart Files für Windows 8.1
OneDrive – SkyDrive | Online – Offline – Smart Files | Windows 8.1
OneDrive und Windows 10 Preview | Ende der Smart Files?

We now have with the Next Generation Sync Client a robust Sync client, running in more then one Instance. The NGSC is available for many Microsoft OS and I hope, Microsoft will reintroduce the Smart Drive technology.  And not just for OneDrive (Personal), but also for OneDrive for Business, and all other SharePoint document libraries.

 

Access to SharePoint on Premise

I Know, many administrators wait for this feature. Yes Microsoft, we are syncing with your Office 365 cloud, but keep in mind, that there a so many SharePoint on Premise versions in the field, and these users want to let die the old Groove client. Yes, I know, that would not possible for the old versions. But I think such admins would sing Hallelujah…

Cancellation of the characters  # and %

Microsoft should also give us a time slot, that there are working on a solution, not only post an error, if a filename has these two restricted characters.

 


I know, it’s easy to write such a wish list. It does not take much time. The MAC world in now almost completely integrated and I know too, that’s not such a few lines of code. There is a lot of work on the server and client side. But let’s wait, which feature we will see first in the year 2017


Nail Own: Cluster Fault Domains & Site Awareness

Mit Windows Server 2016 werden zwei neue Optionen eingeführt, die einen Betrieb von Failover Clustern in Rechenzentren vereinfachen und bereichern: Site Awareness und Fault Domain Awareness. Site Awareness und Fault Domain Awareness Cluster Knoten in einem Clusterverbund, die örtlich verteilt … Weiterlesen

Carsten Rachfahl [Hyper-V]: Hyper-V Amigos Showcast Episode 13 – Azure Stack

In dieser Hyper-V Amigos Showcast Episode spreche ich mit Hans Vredevoort (Cloud & Datacenter Management MVP und Hyper-V Amigo der ersten Stunde) über Microsoft Azure Stack. 

Ursprünglich war diese Episode als Podcast vorgesehen, ich habe aber dann während der Aufzeichnung festgestellt das wir viele zu viele Dinge demonstrieren müssen.

Ich wünsche euch wie immer viel Spaß beim anschauen der Episode.

Der Beitrag Hyper-V Amigos Showcast Episode 13 – Azure Stack erschien zuerst auf Hyper-V Server Blog.

Hans Brender: OneDrive (for Business) | Wunschliste für 2017

OneDrive for Business, Microsoft OneDrive, Microsoft

Das Jahr 2016 geht zu Ende. Und für dieses Jahr hatte ich keine Wunschliste geschrieben. Meine letzte Wunschliste stammt vom 31.12.2014. Und meine damaligen Wünsche wurde fast alle erfüllt. Zeit also, einen neue Liste zu schreiben. Für das Jahr 2017.

 

Meine Wunschliste für das Jahr 2017

Dokumentation

Die Implementierung des Next Generation Sync Client ist fast abgeschlossen. Was jedoch fehlt, ist eine komplette Dokumentation. Das geht von  den vielen Parametern des Clients selbst, über den von Microsoft implementierten selbstständigen Update bis hin zur den Einzelheiten und Einstellungsmöglichkeiten des Clients selbst. Ich habe für die Dokumentation auch unter UserVoice einen Eintrag erstellt. Wer mag, kann dafür seine Stimme abgeben

 

Verschlüsselung

Ganz weit oben auf meiner Liste ist die RMS Verschlüsselung. Schon zu Zeiten des alten Groove Clients mit SharePoint Workspace 2010 konnten verschlüsselte Daten übertragen werden. In SharePoint Bibliotheken war eine Verschlüsslung mit RMS möglich. Und der Next Generation Sync Client muss in die Lage versetzt werden, mit RMS verschlüsselte Dateien zu synchronisieren.

 

Bewegen nach

Schon heute können Daten von OneDrive for Business im Web-Browser zu Team-Seiten und Gruppen kopiert werden. Leider nur kopiert. Und nicht bewegt. Das sorgt beim Anwender für Unsicherheit, wenn an unterschiedlichen Orten Dateien mit gleichen Namen existieren.

 

Wiedereinführung von Smart Files

Microsoft musste mit der Entwicklung des Next Generation Sync Clients mehrere Schritte zurück gehen, um eine komplette Neuentwicklung ohne die Fehler in der Struktur beim alten Groove Client ein zweites Mal zu tun. Auch der schon der viel weiter entwickelte SkyDrive Client musste integriert werden. Das führte dazu dass Microsoft die “Smart Files” sterben lies. Und den Anwendern erklärte, die wenigsten hätten es verstanden, was sich hinter diesem Konzept verborgen hat. Hier ein paar Links, die erklären, wie Smart Files funktionierten:

SkyDrive | Smart Files für Windows 8.1
OneDrive – SkyDrive | Online – Offline – Smart Files | Windows 8.1
OneDrive und Windows 10 Preview | Ende der Smart Files?

Nachdem wir mit dem Next Generation Sync Client (NGSC) einen gemeinsamen, mehrfach instanzierbaren Synchronisierungsmechanismus für verschiedene Betriebssystem vorliegen haben, ist das nur eine logische Konsequenz, Smart Files wieder einzuführen. Und nicht nur für OneDrive (Personal) sondern auch für OneDrive for Business, und allen anderen Dokumentenbibliotheken von SharePoint

 

Zugriff auf SharePoint on Premise

Darauf warten viele. Alle, die nicht in die Cloud dürfen oder wollen. Warum auch immer. Es gibt noch so viele SharePoint on Premise Installationen, und das, was wir in inzwischen mit Dokumenten-Bibliotheken synchronisieren, genau das gleiche möchte ich mit lokal installierten SharePoint Servern tun. Ich bin mir aber im Klaren darüber, dass Microsoft die vorhandenen Ressourcen nicht in alte Server-Versionen stecken wird. Es bleibt abzuwarten, aber viele Administratoren und Anwender werden sich positiv äußern, wenn der alte Groove-Client endlich zu Grabe getragen werden kann.

 

Wegfall von # und %

Und es wird langsam Zeit, dass ein Konzept vorgestellt wird, wie mit den gesperrten Zeichen wie # und %  umgegangen werden soll. Nur einen Fehler anzuzeigen reicht nicht.

 


Ich weiß, so eine Wunschliste ist schnell geschrieben. Die MAC Welt ist inzwischen fast komplett integriert, und es sind nicht nur ein ein paar Zeilen Code, die es hier zu integrieren gilt. Hier muss am Client und am Server gearbeitet werden. Warten wir also ab, wann wir welches Feature im Jahr 2017 sehen werden.


Carsten Rachfahl [Hyper-V]: Umstellung des Hyper-V-Blogs

Aufgepasst! Zwischen dem 27.12.2016 und dem 30.12.2016 stellen wir unseren Hyper-V-Blog um. Dadurch kann es zwischendurch zu seltsamen Aussehen oder Funktionalitätsproblemen auf unserem Blogkommen. Gerne können Sie mir, Kerstin Rachfahl, nach dem 06.01.2017 eine Email Nachricht zukommen lassen, wenn weiterhin Probleme oder Schwierigkeiten, vor allem bei älteren Blogposts auftauchen.

Wir wünschen einen guten Rutsch ins Jahr 2017.

Der Beitrag Umstellung des Hyper-V-Blogs erschien zuerst auf Hyper-V Server Blog.

Thorsten Christoffers: Use Azure OMS Log Analytics to monitor Custom Applications / Infrastructures: Citrix Workers

Azure OMS offers with Log Analytics a big data analysis cloud service. It comes with an agent to collect different data on Windows and Linux systems. It can also be combined with Microsoft System Center Operations Manager (SCOM). The collected data can be visualized by adding solutions...

Arnd Rößner: WSUSpraxis.de wünscht Frohe Weihnachten

Viele liebe Grüße Arnd Rößner

Hans Brender: OneDrive for Business | Local Sync of ‘Shared with me’ files

OneDrive for Business, Microsoft

if you have installed Version 17.3.6674.1021 or higher of the Next Generation Sync Client , first look for the blog post below,

OneDrive for Business | Next Generation Sync Client (all Versions)
Office 365 | OneDrive for Business, Team Sites and Groups – Overview
OneDrive for Business | new Version 17.3.6743.1212
Naming Convention in Explorer with the Next Generation Sync Client

then you are able to sync “Shared with me” to your local device. Here some pictures, which describe, how to do that.

So the pictures are from a German language tenant

Shared With Me 1. Navigate to your OneDrive (for Business) in Office 365

Dateien = Files
Mit mir geteit = Shared with Me

2. Click on “Shared with Me”
in this example the User Julian Versuch has shared in his OneDrive (for Business) the folderIgnite Demo JV” with me

Files and Folders  "Shared with Me"

4. Click on Sync  (Synchronisieren) *

Sync to local device

You should do initiate the first Synchronization exact, as Microsoft has described here.
If you open your Windows Explorer after the Synch, it looks like:

 

Windows Explorer: Shared withn me local sync

You see a new Icon (like SharePoint) and the icon-name is only the Tenant Name (without OneDrive)

In the picture you see some folders:

  • team sites (Finance, Marketing I)
  • groups (Group marketing)
  • and Shared with me Folders (Julian Versuch)

*) I have published this article first in German language end of November.  People ask me, They do not see the Sync-Button. And Yes it could be happen: Reason?

If a user shares only a file with you, there is no possibility to sync this file. The User have to create a folder and have to copy or move the file into it. Then the user may share the folder with you. And then you are able to sync the folder.

Asking the Microsoft product group about ‘Syncing a shared with Me File only’… “This feature is not on our deployment timeline, we won’t  have it in the near future”

new functions and features

Did you know, there is a channel where You are put your wishes for OneDrive and OneDrive for Businss, called UserVoice Kanal von OneDrive  and you see, there is feedback from Microsoft.

UserVoice Channel OneDrive

 

I have voted with UserVoice for a better documentation for the Next Generation Snyc Client. If you like this idea, you may vote too.


Hans Brender: Podcast | MVPKaffeeklatsch – Episode 14 – Social, Trump & Hillary

MVP Kaffeeklatsch - Episode 14

War ein bisschen hektisch, der Dezember 2016. Kommst Du nicht dazu einen simplen Blog Post zu schreiben. Hole ich hiermit nach. Hängt auch mit meiner neuen Aufgabe bei BitTitan zusammen. Wisst Ihr noch nicht?

Gut, vor Weihnachten haben die wenigsten Zeit gehabt, sich 1,5 h  Kaffeeklatsch von drei MVP’s anzuhören. Und hier geht’s zur 14. Ausgabe des MVPKaffeklatsch. Viel Spaß mit meinen Kollegen Raphael Köllner, Torben Blankertz und mir.

Viel Spaß damit

hier die Anleitung(en), wie man den Podcast aufrufen kann. Man könnte sich jetzt die 14  Episoden auf eine CD pressen, aber CD’s sind ja out, und auf einen Memory Stick passen sie allemal.

Episode 13 Ein MVP auf Reisen
Episode 12 Sommerpause
Episode 11 Max und Nora
Episode 10 Community for Live
Episode 09 Feedback
Episode 08 Office365 Konferenz
Episode 07 SchmuttiMutti
Episode 06 Gregor zu Besuch mit der Software von Steven Hawking
Episode 05 Alles Gamer
Episode 04 Eiskaffee bei 32 Grad
Episode 03 Irish-Coffee für Peter
Episode 02 Old Shatterhand
Episode 01 MVP Kaffeklatsch


Mark Heitbrink: Drucker verteilen und bereitstellen

Der größte Schuh, den man sich anziehen kann.

Thorsten Christoffers: PowerShell Skript Downloads

Auf dieser Seite finden Sie alle Downloads zu meinen bisherigen Blogartikeln. Klicken Sie einfach auf den gewünschten Dateinamen. Dateiname Report-ChangedAdPrimaryGroup.zip ...

Hans Brender: OneDrive for Business | news at the end of the year – NGSC

Merry Christmas

News at the end of the year

I guessed it. There are too many issues in the latest or newest version of the Next Generation Sync Client. But now it’s official: Here you may read now, during the Christmas days or at the end of the year 2016, a statement from Microsoft Product Marketing Director Stephen Rose, successor of Reuben Krippner:

  • The GA (Global availability) of the NGSC is postponed to January 2017
  • But there are news about the OneDrive Admin Center
  • The NGSC client for MAC OS is also available for a direct Download
  • and an announcement, that we will have many news in 2017

About several things I will blog post during the Christmas days

Amazing, hopefully with continuity:The latest, most recent releases were published by Stephen Rose on Microsoft’s new technical community marketplace. Maybe you should take a look:  Microsoft Tech Community 
After all, 35,000 members get the latest information there.

Who does not want to miss the news, you should

Simply subscribe to the blog.
Or follow me on Twitter @HansBrender

Only one thing remains to me:

I wish all a merry and peaceful Christmas
and a good start to 2017


Hans Brender: OneDrive for Business | zum Jahresende 2016 – NGSC

fröhliche Weihnachten

Zum Jahresabschluß

Geahnt habe ich es. Dafür sind noch zu viele Fehler im Next Generation Sync Client. Aber jetzt ist es offiziell: Hier sind noch vor den Festtagen und dem kommenden Jahresende 2016 vom Microsoft Produkt Marketing Direktor Stephen Rose, Nachfolger von Reuben Krippner,  ein paar Aussagen veröffentlicht worden:

  • Die globale Verfügbarkeit des Produktes (NGSC) wird erst im Januar 2017 erfolgen
  • Dafür gibt es jetzt schon das OneDrive Admin Center
  • NGSC für das Apple Betriebssystem nicht nur über den Apple Store.
  • Und die Ankündigung, dass es auch 2017 noch viele Neuheiten geben wird.

Darüber und über andere Dinge werde ich auch über die Festtage berichten.

 

Erstaunlich, hoffentlich auch mit Kontinuität: Die letzten, neusten Veröffentlichungen wurden von Stephen Rose auf dem neuen technischen Community Marktplatz von Microsoft veröffentlicht. Vielleicht mal reinschauen:  Microsoft Tech Community 

Immerhin schon 35000 Mitglieder holen sich hier die neuesten Informationen

wer über die Festtage nichts verpassen will:

 

Einfach den Blog abbonieren.
Oder mir auf Twitter @HansBrender folgen
 
Bleibt mir hier nur eins:

ich wünsche alle fröhliche und geruhsame Weihachten
und einen guten Rutsch ins Jahr 2017


faq-o-matic: Schöne Feiertage!

Die Redaktion geht in eine kurze Feiertagspause. Nach dem Jahreswechsel melden wir uns mit neuen Artikeln zurück.

Bis dahin schöne Feiertage und einen guten Jahreswechsel! Smiley

Thorsten Christoffers: sepago erlangt die Cloud Platform Kompetenz von Microsoft

Wir freuen uns sehr über die neu erlangte Microsoft Silver Cloud Platform Kompetenz.Langjähriges Engagement im Bereich Cloud-Lösungen und die Fokussierung auf die Bereitstellung von Infrastrukturen...

Nail Own: Microsoft Patchday 2016 – Revamped

Mit Launch von Windows Server 2016 Ende September wurde der Patchday wie angekündigt für die Windows Server Edition, Windows 10 als auch für Windows 7 und 8.1 umgestellt: Zum einen wurde das Verfahren umgestellt, zum anderen auch das Intervall. Beim … Weiterlesen

SharePointPodcast: SPPD359 Vancouver Calling 359 mit Oliver Wirkus



Trotz alledem – Vancouver Calling mit Oliver Wirkus in dieser Ausgabe des SharePointPodcast – ein Blick ins verschneite Kanada, die dortige SharePoint-, Office365 und Azure-Landschaft und weihnachtlichen Vorbereitungen bei Familie Wirkus in Kanada.

Passt auf Euch auf und frohe, besinnliche Weihnachten.

Flattr this!

Hans Brender: OneDrive for Business | new Version 17.3.6743.1212

Next Generation Sync Client: syncs to OneDrive, OneDrirve for Business, Teamsites, Groups and und "Shared with me folder""

Bringing a light into the dark? That’s not so easy. But I will try it.

If Microsoft will publish a new version of the Next Generation Sync Client, not all users around the world will receive it. This is right, because you still use a PreView Version. At Ignite Microsoft announced the GA (Global Availability) for the NGSC until end of year 2016. And the you will receive the latest version of the NGSC. Until this time we have to wait. Also for the many administrators, who want to supersede the old Groove-client.

two facts

Number 1: not yet ready

I have to say and write it again and again. The version 17.3.6743.1212 or 17.3.6720.1207  are not the final one. We still have to add manually a registry Key. In the final Release we won’t do that. (There will be a fully automatically transformation form synced libraries with Groove to Office 365). This function is not yet released. The old Groove Client has built in this functionality, if you have the latest version installed.

Number 2: own Replacement/update routine

So I see many rumors about the Update of the Next Generation Sync client. You will never see an update via Windows Update, Windows Server Update Service (WSUS) or Click to Run (C2R). The NGSC has a built in function, which will not be controlled by administrators, but from Microsoft. If you ever have hard about the Ring system in Windows 10, such an mechanisms is implemented in the NGSC. Each time your computer is started, and only once a day, the NGSC looks, if there is an new update AND Microsoft has give a release, then the client will download the new version and install it on this machine. No one must do anything.It’s automatic. I have different computers that are connected to different domains and different Office 365 tenants, and have received the different versions at different times. And yes, you may download the latest version manually and install it.

new Registry-Key

last week I have read on different cannels about a hidden new Registry Key, to get the Flyout menu. The name of the key was “TeamSiteSyncPreview”. If you set this key, go will get the new Flyout Menu. But the key also has additional functions. If you have set this Key in the registry, you now are able to sync document libraries from

  • Team sites in SharePoint Online
  • Groups in Office 365
  • Folders with files, which were “Shared with me”

But this functionality is not new. At 09/26/16 I have posted my first article:

Next Generation Sync Client Sync to all doc libraries in Office 365
Naming Convention in Explorer with the Next Generation Sync Client
Next Generation Sync Client – new Preview Version available
OneDrive for Business Next Generation Sync Client (all Versions)
Next Generation Sync Client new version 17.3.6705.1122
Office 365 OneDrive for Business, Team Sites and Groups – Overview

What annoys me is the fact that all are copying without transcripts  from each other and partly half-truths spread. Maintain clicks …


Now the new versions

Version 17.3.6720.1207

as I described above, Microsoft releases new version, that some people will not receive automatically. But Microsoft publish the new releases on a changelog website. You may see, which versions are out and a short description, what has been changed or what new functions has been implemented

At 1st of December several people around the globe received Version 17.3.6705.1122. And 14 days later we have a new version  17.3.6720.1207. This version was publised first with Windows 10 Insider Build 14986/14933. But then is was also publish to different tenants.

picture fromm ther german  ChangeLog: Version 17.3.6705.1122 in the US Version of the changelog website, Microsoft hat cut out Version 17.3.6705.1122 and replaced it with version 17.3.6720.1207.

The left picture is from the German website, which was not yet updated.

So I have my own Changelog and here you find both versions. But anyway. I have not find any changes in version 1207 (compared to 1122). But if you find something, let me know.

 

Version 17.3.6270.1207 (Preview)

for this version, no entry on Microsoft Changelog. You have to go to the Next Generation PreView Website, download the Installation of the NGSC manually and install it. Before you will do that, you should read

Transition from the previous OneDrive for Business sync client for SharePoint sites
Get started syncing SharePoint sites with the new OneDrive sync client – Preview

There you find the Donwload Link. Or you may look here, where I have summarize all different versions.

OneDrive for Business | Next Generation Sync Client (all Versions)

 

Summarize

If Microsoft will go with these speed of publishing new versions, The day for a final version will come shortly. I do wish a little bit more of technical description.

P.S.

I have voted with UserVoice for a better documentation for the Next Generation Snyc Client. If you like this idea, you may vote too.


Hans Brender: OneDrive for Business | neue Version 17.3.6743.1212

Next Generation Sync Client: synchronisiert zu OneDrive, OneDrirve for Business, Teamsites, Gruppen und "Mit mir geteilte Ordner"

Licht ins Dunkel zu bringen? Beim Next Generation Sync Client? Das ist nicht so einfach. Aber der Reihe nach:

Wenn Microsoft eine neue Version des Next Generation Sync Clients veröffentlicht, wird dieser nicht für alle Benutzer freigegeben. Das hat schon seine Richtigkeit, wir befinden uns mit dem Synchronisations-Client immer noch in der PreView-Phase. Auf der Ignite hat Microsoft angekündigt, bis zum Jahresende das Programm zu vollenden und allen Benutzern global zur Verfügung zu stellen. Bis dahin heißt es abzuwarten. Auch für die vielen Administratoren, die den alten Groove-Client endlich ablösen wollen.

Zwei Fakten

Nummer 1: Noch nicht fertig

Immer wieder darf ich es erklären. Die Version 17.3.6743.1212 oder 17.3.6720.1207 ist noch nicht die finale. Denn immer noch müssen wir für bestimme Funktionalität einen Registry-Key anlegen. (Das wird in der finalen Version nicht mehr notwendig sein. Microsoft hat versprochen, eine automatische Umwandlung der Groove-Synchronisation zu Office 365 zum Next Generation Sync Client zur Verfügung zu stellen). Diese ist in der jetzigen Version noch nicht enthalten. Der Groove-Client (wenn auf dem neusten Stand) ist dazu schon in der Lage, aber die Komponenten im NGSC fehlen noch.

Nummer 2: eigene Download-Routine

Im Netz schwirren  so manche Gerüchte einher. Der NGSC wir nicht per Windows Update oder WSUS oder C2R mit einer neuen Version versorgt. Er enthält einen eigenen Mechanismus, der nicht vom Administrator, sondern von Microsoft gesteuert wird. Ähnlich dem Ring-System von Windows 10, gibt dann Microsoft eine Freigabe für bestimmte Benutzer.  Auf jedem Rechner, auf dem der NGSC installiert ist, schaut diese beim Rechnerstart nach, ob es eine neue Version gibt und Microsoft dafür eine Freigabe erteilt hat. So kann es passieren, dass bestimmte Rechner die neue Version bekommen, andere nicht. Ich habe verschiedene Rechner, die  mit unterschiedlichen Domänen und unterschiedlichen Office 365 Tenants verbunden sind, und die zu unterschiedlichen Zeiten die unterschiedlichen Versionen bekommen haben. Natürlich kann man auch manuell eingreifen, und sich die neuste Version selbst herunterladen und installieren.

Neuer Registry-Key

In der vergangenen Woche musste ich an verschiedenen Stellen lesen, dass es einen vorher nicht bekannten Schlüssel gibt, bei dem man dann das Flyout-Menü bekommt. Der Key heisst “TeamSiteSyncPreview”. Der Schlüssel bewirkt das, aber er hat einen ganz anderen Zweck. Nämlich die Möglichkeit, eine Synchronisation von Dokumentenbibliotheken von

  • Team-Seiten in SharePoint Online
  • Gruppen in Office 365
  • Mit mir geteilte Dateien (besser gesagt, Ordner mit Dateien )
    zu ermöglichen. Darüber habe ich erstmals am 26.09.16 darüber geschrieben.

Next Generation Sync Client | Kompletter Zugriff zu Office 365
Namenskonvention im Explorer mit dem Next Generation Sync Client
Next Generation Sync Client – neue Version des Preview Clients
Next Generation Sync Client | neue Version 17.3.6705.1122
OneDrive for Business | Next Generation Sync Client (alle Versionen)
OneDrive for Business | mit mir geteilte Dateien synchronisieren
Office 365 | OneDrive for Business, Team Seiten und Gruppen – Überblick

Also nichts neues. Was mich dabei ärgert, ist die Tatsache, dass alle ohne Nachprüfung voneinander abschreiben und zum Teil auch Halbwahrheiten verbreiten. Hauptsache Klickzahlen erzeugen…


Kommen wir zu den neuen Versionen

Version 17.3.6720.1207

wir oben beschrieben, bestimmt Microsoft, wer wann welche Version bekommt. Dafür gibt es auch ein Changelog,, welches die unterschiedlichen Versionen aufzeigt und sogar eine kurze Beschreibung liefert, was sich in den jeweiligen Versionen geändert hat, bzw. neu dazugekommen ist.

Anfang Dezember erhielten viele Benutzer die Version 17.3.6705.1122. Und 14 Tage später gibt es die Version 17.3.6720.1207. Diese Version wurde zuerst über Windows 10 Insider Build 14986/14933 verteilt und ist jetzt ganz regulär an bestimmte Clients ausgerollt worden.

 

Bild aus dem deutschen ChangeLog: Version 17.3.6705.1122 Das Microsoft Changelog hat in der englischsprachigen Webseite die Version 17.3.6705.1122 komplett herausgenommen und durch die neue 17.3.6720.1207 ersetzt. Die deutsche Changelog Seite hinkt noch etwas hinterher.

Ich führe inzwischen meine eigene Changelog-Datei und hier gibt es noch beide Versionen. bedeutet aber auch: Nichts Neues in der neuen Version 1207 im Vergleich zu 1122. Jedenfalls ist mir nichts wesentliches aufgefallen. Wer etwas findet, kann mir das mitteilen.

 

Version 17.3.6270.1207  (PreView)

hierzu gibt es von Microsoft noch keinen Changelog Eintrag. Man muss schon auf die Preview-Seite von Microsoft gehen, und sich den Client selbst herunterladen. Vorher sollte man sich die Umstieg-Webseite  durchlesen.

Umstieg vom vorherigen OneDrive for Business-Synchronisierungsclient für SharePoint-Websites

Erste Schritte zum Synchronisieren von SharePoint-Websites mit dem neuen OneDrive-Synchronisierungsclient – Vorschau

Dort findet man dann den Download-Link. Oder aber hier, wo ich alle Next Generation Sync Client Version zusammengefasst habe:

OneDrive for Business | Next Generation Sync Client (alle Versionen)

Zusammenfassung

wenn Microsoft in diesem Tempo weiter Versionen und PreView Versionen zur Verfügung stellt, und die Benutzer weiterhin Feedback geben, dann kann es mit der finalen Version nicht mehr lange dauern. Leider lässt die Dokumentation zu wünschen übrig. Dass die deutschen Seiten von Microsoft hinterherhinken, dass mag noch zu entschuldigen sein. Schließlich muss der Inhalt noch übersetzt werden. Nicht zu entschuldigen ist jedoch, dass einfach Versionen herausgenommen werden, die draußen im Markt installiert sind. (US Version)

P.S.

Ich habe mir unter UserVoice von Microsoft eine verbesserte Doukumentation vom Next Generation Sync Client gewünscht. Wer das gut findet, der kann ja  dafür abstimmen.


Carsten Rachfahl [Hyper-V]: Update-ClusterFunctionalLevel schlägt fehl

Nachdem wir in der vergangenen Woche erfolgreich unser Hyper-V Failover Cluster und unseren Scale Out File Server auf Windows Server 2016 umgestellt haben, wollte ich gestern beide Cluster auf den Funktionslevel 9 hochstufen. Bei unserem Scale Out File Server hat das auch problemlos geklappt, doch beim Hyper-V Failover Cluster habe ich folgende Fehlermeldung bekommen.

PS C:Windowssystem32> Update-ClusterFunctionalLevel

Updating the functional level for cluster HVCluster.

Warning: You cannot undo this operation. Do you want to continue?

[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is „Y“): y

 

Update-ClusterFunctionalLevel : Updating the cluster functional level failed.

The cluster did not successfully complete the version upgrade

At line:1 char:1

+ Update-ClusterFunctionalLevel

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo          : NotSpecified: (:) [Update-ClusterFunctionalLevel], ClusterCmdletException

+ FullyQualifiedErrorId : Update-ClusterFunctionalLevel,Microsoft.FailoverClusters.PowerShell.UpdateClusterFunctionalLevelCommand

Auch ein Reboot der Hyper-V Hosts brachte keinen Erfolg. Nach kurzer Suche im Internet habe ich hier die Lösung gefunden. Die Ursache für den Fehler sind die beiden fehlenden Cluster Ressourcen  „MSMQ“ und MSMQ Triggers“ . Carsten hat in diesem Blogbeitrag beschrieben, warum diese Cluster Ressource Typen eventuell fehlen können. Frage ich die Cluster Ressourcen mit folgenden PowerShell Befehl ab

Get-ClusterResourceType

…….bekomme ich folgende Ausgabe:

Wie wir sehen können, die beiden Cluster Ressource Typen „MSMQ“ und „MSMQ Trigger“ fehlen tatsächlich.
Mit folgenden PowerShell Befehlen können die fehlenden Cluster Ressource Typen angelegt werden.

Wenn wir jetzt noch einmal die verfügbaren Cluster Ressource Typen mit dem PowerShell Befehl 

Get-ClusterResoureType  anschauen

sehen wir, dass die beiden neu angelegten Cluster Ressource Typen mit aufgelistet werden.

 So jetzt starten wir nochmals den Versuch, das Hyper-V Failover Cluster auf den Cluster Funktional Level 9 anzuheben.

 Update-ClusterFunctionalLevel

 

… und jetzt waren wir erfolgreich :-)

Der Beitrag Update-ClusterFunctionalLevel schlägt fehl erschien zuerst auf Hyper-V Server Blog.

faq-o-matic: Hyper-V von älteren Versionen nach Windows Server 2016 migrieren

Windows Server 2016 ist jetzt seit einigen Wochen verfügbar, und Kunden prüfen, wann und wie sie das neue System einsetzen können. Besonders für Hyper-V-Umgebungen stellt sich da die Frage, wie man vorhandene VMs auf die neue Version migriert.

Zwar trommelt Microsoft laut für das “Cluster Rolling Upgrade”, bei dem man mit wenig Aufwand und ohne Downtime auf die Version 2016 kommt. Aber: Das geht nur, wenn die betreffenden VMs bisher auf einem Cluster unter Windows Server 2012 R2 laufen. Wer eine ältere Version oder keinen Cluster hat, kommt damit nicht weiter.

Hier eine Übersicht über die möglichen Methoden.

In-place Upgrade

Grundsätzlich unterstützt Microsoft das direkte Upgrade eines laufenden Hyper-V-Hosts auf Windows Server 2016. Voraussetzung: Der Quell-Host läuft mit Windows Server 2012 oder 2012 R2.

Wer Hyper-V unter Windows Server 2008 oder 2008 R2 einsetzt, kann diese Methode nicht nutzen. Allenfalls wäre hier ein doppeltes In-place Upgrade möglich: Erst von 2008/R2 auf 2012/R2 und von dort auf 2016. Dadurch verdoppeln sich aber die Risiken und die Ausfallzeit.

Diese Methode sollte man nur einsetzen, wenn das Quell-Betriebssystem “sauber” läuft und keine weitere Software installiert ist. Außerdem sollte man natürlich prüfen, ob alle nötigen Treiber für Windows Server 2016 vorhanden sind.

Während des Upgrades stehen die VMs nicht zur Verfügung, es ist also eine Downtime nötig.

Cluster Rolling Upgrade

Diese Methode ist nutzbar, wenn die VMs auf einem Failover-Cluster unter Windows Server 2012 R2 laufen. Windows Server 2012 (ohne R2) reicht nicht.

Prinzipiell räumt man hierbei einen Clusterknoten frei, indem man alle VMs auf andere Knoten verschiebt. Dann installiert man diesen Server neu und nimmt ihn wieder in den Cluster auf – oder man ersetzt ihn durch einen neuen Server. Ab da kann man VMs von einem der 2012-R2-Hosts auf den 2016-Host verschieben. So geht es dann weiter, bis alle Knoten ausgetauscht bzw. aktualisiert sind. Am Ende stellt man die VM-Versionen auf den neuesten Stand um (derzeit 8.0).

Prinzipiell kann man die vorhandenen Knoten auch freiräumen und dann per In-place Upgrade aktualisieren, aber das bringt nur wenige Vorteile. Zudem gibt es derzeit Probleme bei dieser Variante des Verfahrens, man sollte also noch die nötigen Updates abwarten. Eine saubere Neuinstallation ist also vorzuziehen.

Diese Methode erfordert keine Downtime für die Anwender.

Cluster-Migrationsassistent

Der Cluster-Migrationsassistent unterstützt bei der VM-Migration von Windows Server 2012 oder 2012 R2 nach Windows Server 2016. Interessant ist er aber nur für 2012, denn von 2012 R2 kann man besser per Cluster Rolling Upgrade kommen.

Hierbei baut man parallel zu dem bestehenden 2012-Cluster einen neuen 2016-Cluster auf. Dort führt man dann den Assistenten aus (“Clusterrollen kopieren”). Dieser übernimmt die Konfigurationen der VMs, lässt diese aber sonst unangetastet. Im nächsten Schritt fährt man alle VMs und den 2012-Cluster herunter, koppelt das Storage ab und verbindet es mit den Knoten des 2016-Clusters. Dort kann man die VMs dann starten.

Die Methode erfordert eine (kurze) Downtime.

Shared-Nothing Live Migration

Von Hosts unter Windows Server 2012 oder 2012 R2 kann man laufende Maschinen direkt auf einen Host unter Windows Server 2016 migrieren. Das funktioniert auch mit Clustern.

Die Shared-Nothing Live Migration migriert sowohl die VMs selbst als auch die virtuellen Festplatten. Ein gemeinsames Storage zwischen beiden Versionen ist nicht nötig. Da alle VMs weiter laufen, dürfte dies die beste Methode sein, wenn man von 2012 oder 2012 R2 kommt.

Dieses Verfahren erfordert keine Downtime.

Migration mit Hyper-V Replica

Hat man Windows Server 2012 oder 2012 R2, dann kann man auch per Replica nach Windows Server 2016 migrieren.

Man richtet dazu unter 2012 oder 2012 R2 die Replikation für die betreffenden VMs ein und gibt den 2016-Host als Ziel an. Sind die VMs vollständig repliziert, dann führt man ein “Geplantes Failover” aus. Dieses scheitert im letzten Schritt, denn Hyper-V kann die Replikationsrichtung nicht umkehren. Das macht aber nichts, denn die eigentliche Umschaltung ist dann vorbereitet und alle Änderungen sind übertragen. Nun schaltet man die Quell-VMs ab und die Ziel-VMs ein. Am Ende entfernt man auf beiden Seiten die Replikation.

Diese Methode erfordert eine (kurze) Downtime für die VMs.

VMs kopieren und importieren

Hyper-V unter Windows Server 2016 kann VMs von allen seinen Vorgängern importieren. Dazu beendet man die Quell-VM und kopiert sie vollständig auf den neuen Host (VM-Konfiguration und virtuelle Festplatten). Dort ruft man die Import-Funktion auf und nutzt (idealerweise) die Option “direkt registrieren”. Sofort danach kann man die VM starten.

Diese Methode erfordert eine (kurze) Downtime für die VMs.

Host-Festplatten umkoppeln und VMs importieren

Dieses Verfahren ist eine Variante des “normalen” Imports. Es funktioniert ebenfalls mit VMs von allen Hyper-V-Versionen.

Man fährt die Quell-VMs und den “alten” Host herunter. Nun baut man die Festplatte(n) aus und verbindet sie mit dem neuen Host. Sofern es sich um LUNs aus dem SAN handelt, ändert man nur die Zugriffskonfiguration. Auf dem Quell-Host führt man dann ebenfalls einen Import aus, wieder mit der Option “registrieren”. Bei Bedarf kann man auf dem 2016-Host die VMs dann auf das endgültige Storage (live) verschieben.

Wichtig: Hier arbeitet man mit den Original-VMs und erzeugt keine Kopie! Ein Backup ist also unerlässlich.

Diese Methode erfordert eine (kurze) Downtime für die VMs.

VM-Backup und -Restore

Windows Server 2016 kann die Windows-Server-Backups seiner Vorgänger lesen und wiederherstellen. Diese Methode eignet sich also unabhängig von der Quell-Version.

Man sichert die VMs mit Windows Server Backup auf eine Freigabe oder ein Wechselmedium. Auf dem 2016-Host stellt man die VMs dann wieder her. Als kleine Hürde erweisen sich die Namen der VMs, die Windows Server Backup leider nicht korrekt ausliest. Hier hilft ein kleines PowerShell-Skript.

Diese Methode erfordert eine Downtime für die VMs.

Backup und Restore in der VM

Natürlich kann man auch “innerhalb” der VM ein Backup erzeugen und dieses in einer neuen VM auf dem Zielhost wiederherstellen. Damit ist man völlig unabhängig von den Host-Versionen. Der Aufwand ist aber relativ hoch.

Diese Methode erfordert eine Downtime für die VMs.

Überblick: Was eignet sich wann?

Die folgende Tabelle listet auf, von welcher Hyper-V-Version aus sich mit welcher Methode VMs nach Windows Server 2016 bringen lassen. Die Spalte “Downtime” gibt an, ob durch die Methode eine Downtime für die Anwender entsteht.

 

2008

2008 R2

2012

2012 R2

Downtime

In-place Upgrade

ja

ja

ja

Cluster Rolling Upgrade

ja

nein

Cluster-Migrations-Assistent

ja

ja

ja

Shared-Nothing Live Migration

ja

ja

nein

Replica

ja

ja

ja

VM-Import

ja

ja

ja

ja

ja

Host-Platten

ja

ja

ja

ja

ja

VM-Backup

ja

ja

ja

ja

ja

Gast-Backup

ja

ja

ja

ja

ja

Scolab: 2017 – Das Jahr, in dem die Glühbirne mit uns Kontakt aufnahm – Sharepocalypse 39

Big Data Heizdecken Verkaufsfahrt mit Cambridge Analytica. Frustrierter PlayStation-Spieler legte Teile des Internets lahm. Nächstes Jahr werden IoT-Glühbirnen Menschen töten. Big Data-Heizdeckenverkauf – Cambridge Analytica Das Magazin: Ich habe nur gezeigt, dass es die Bombe gibt Ein Brexit-Trump-Ex-post-Schlaumeier-Heldenepos Hat wirklich … Weiterlesen

Der Beitrag 2017 – Das Jahr, in dem die Glühbirne mit uns Kontakt aufnahm – Sharepocalypse 39 erschien zuerst auf Scolab.

Don't contact us via this (fleischfalle@alphasierrapapa.com) email address.