Browsed by
Schlagwort: PVS

Aufbau einer Citrix Provisioning 6.1 Umgebung – Teil 3

Aufbau einer Citrix Provisioning 6.1 Umgebung – Teil 3

In meinem heutigen Teil aus der PVS Serie möchte ich die Erstellung des MasterImages beleuchten.
Die meisten Screenshots werde ich mehr oder weniger unkommentiert anfügen da es sich, gerade im ersten Teil des Beitrags, lediglich um einen Installationswizard handelt welcher in den beiden ersten Blogposts bereits besprochen wurden.
Kurze Erklärung zum hier gezeigtem Vorgehen:
Auf dem XenApp-BasisServer werde ich die TargetDeviceTolls der aktuellsten Provisioning Services DVD (in diesem Fall 6.1) installieren.
Es gibt alternativ die Möglichkeit über den ServerRollenManager in XenApp die Rolle „PVS Target“ zu installieren um anschließend den Server über den RollenManager Wizard vorzubereiten um dann das mitinstallierte XenConvert manuell auszuführen. <- Dies ist nicht Bestandteil dieses Beitrags!
Gezeigt wird die Installation der Clienttools über das PVS Installationsmedium. Hintergrund ist hier schlicht und einfach die Aktualität der zu installierenden Komponenten.
Es wird auf die aktuellen und passend zur Serverinstallation gehörenden Clienttools zurückgegriffen und nicht auf (oftmals veraltete) Software die im XenApp mitgeliefert wurde.
Weiterhin kann dieser Blogbeitrag auch als Grundlage für das generelle Provisionieren angesehen werden, da ich an dieser Stelle die XenApp Komponente außen vor lasse.

Starten der „Target Device Installation“

Schritt_01.png
Schritt_01.png

Auswahl „Installation“

Schritt_02.png
Schritt_02.png

Standard Wizard

Schritt_03.png
Schritt_03.png
Schritt_04.png
Schritt_04.png
Schritt_05.png
Schritt_05.png
Schritt_06.png
Schritt_06.png
Schritt_07.png
Schritt_07.png

An dieser Stelle ist das Abschlussfenster der Installation erreicht.
Wichtig hierbei ist der unten gezeigte Haken zum starten des Image Wizards. Diesen sollte man nicht setzen und erst einmal den Server neu starten…

Schritt_08.png
Schritt_08.png
Schritt_08_neustart.png
Schritt_08_neustart.png

Nach dem Neustart findet man den Imaging Wizard im Startmenü und wird wie folgt nach dem Öffnen begrüßt:

Schritt_09.png
Schritt_09.png

Im ersten Schritt wird die Verbindung zur PVS-Farm hergestellt.

Schritt_10.png
Schritt_10.png

Als nächstes muss die Wahl getroffen werden ob eine vorhandene vDisk genutzt werden soll oder eine neue erstellt.
Klare Empfehlung: Jetzt eine neue Disk erstellen. Ich bevorzuge eine komplette Neuanlage über den Wizard.
Entscheidet man sich zur Nutzung einer bereits angelegten DIsk, so musss man sicherstellen, dass diese an kein TargetDevice gebunden ist. Demnach auch nicht an eine ggfs. vorbereitete Maschine auf dem PVS-Server.

Schritt_11.png
Schritt_11.png

Nun gilt es dem Kind einen Namen zu geben. Hier ist es angebracht einen aussagekräftigen Namen für das goldene Image zu finden 😉
Um gleich eine ggfs. aufkeimende Diskussion zur Frage fixed/dynamic Disk zu kontern kommt HIER ein Blogbeitrag im Citrix Blog zu diesem Thema. Ich habe, speziell für die Testumgebung, eine dynamische Disk gewählt um Platz zu sparen…

Schritt_12.png
Schritt_12.png

Der entsprechende Lizensierungstyp der Microsoftlizenzen muss direkt bei der Erstellung des Images mit angegeben werden. Nutzt man kein Volume Licensing ist „None“ zu wählen.

Schritt_13.png
Schritt_13.png

Nun wird eine passend skalierte Disk angelegt um die Konvertierung entsprechend durchführen zu können. Hier besteht weiterhin die Möglichkeit den freien Plattenplatz in der VHD zu reduzieren.

Schritt_14.png
Schritt_14.png

Im nächsten Fenster werden die nötigen Daten zum Anlegen eines PVS-Targets abgefragt. Wichtig hier ist die MAC-Adresse der zu nutzenden NIC. Sollte man eine Multihome-Umgebung betreiben so muss hier unbedingt die NIC des „Streaming-LANs“ angegeben werden.
Die Collection ist eine Art OU auf dem PVS-Server, sollte hier noch keine Collection angelegt sein, so kann man das Target auch später in eine Collection verschieben (Drag&Drop in der PVS-Console)

Schritt_15.png
Schritt_15.png

Eigentlich nur die Zusammenfassung der bisher getätigten Eingaben. Wichtig hier ist allerdings der recht unauffällige Button „Optimize for PVS“, diesen sollte man unbedingt anklicken um das unten gezeigt Fenster zu öffnen.

Schritt_16.png
Schritt_16.png

Alle hier gelisteten Punkte sind empfohlene Einstellungen welche beim konvertieren zur vDisk angewandt werden sollten.

Schritt_17.png
Schritt_17.png

Im Anschluss wird ein Reboot mit einer Anpassung an der Bootreihenfolge gefordert.
Der Server sollte nach dem Herunterfahren im PXE-Boot starten um dabei vom PVS-Server zum booten von der lokalen Festplatte aufgefordert werden. Bei diesem Schritt wird die vDisk angebunden um dem TargetDevice lokal zur Verfügung zu stehen. Dies ist notwendig um die eigentliche Festplatte 1:1 auf die vDisk zu kopieren.

Schritt_18.png
Schritt_18.png

Der parallele Blick in die PVS-Konsole:

Schritt_19.png
Schritt_19.png
Schritt_20.png
Schritt_20.png

Direkt nach dem Reboot startet der Konvertierungsjob

Schritt_21.png
Schritt_21.png

Das grüne Icon in der PVS Konsole signalisiert einen erfolgreiche Start des Targets während das Schloss die Bindung der Disk an das Target anzeigt:

Schritt_22.png
Schritt_22.png
Schritt_23.png
Schritt_23.png

Ein erster Blick ins Storage zeigt die drei Dateien welche zu einer vDisk gehören: VHD (Festplatte), pvp (Property Datei) und eine lok (enthält die Informationen zur Bindung (das Schloss im Screenshot oben))

Schritt_24.png
Schritt_24.png

Langsam geht es auch mit dem Fortschrittsbalken vorwärts 😉

Schritt_25.png
Schritt_25.png

DIe VHD wächst ebenfalls…

Schritt_26.png
Schritt_26.png

Erfolgreicher Durchlauf der Konvertierung

Schritt_27.png
Schritt_27.png

Erneuter Reboot wird gefordert. Diesen führe ich NICHT durch, statt dessen fahre ich den Server herunter!

Schritt_28.png
Schritt_28.png

Blick in das Kontextmenü des TrayIcons (FestplattenIcon neben der Uhr) im TargetDevice
Den Scrennshot habe ich vor dem geforderten Neustart gemacht, dies erkennt man unter anderem an der Zeile „Boot from“ – Es ist noch von der lokalen Festplatte gebootet.

Schritt_29.png
Schritt_29.png

In den folgenden Schritten erstelle ich eine VM in der PVS-Konsole, füge diese ins AD ein und binde die gerade erstelle vDisk an diesen Server an. Dieses Vorgehen habe ich mir angewöhnt da ich als Master TargetDevice gerne einen reinen PVS-Client habe welcher komplett losgelöst von der konvertierten Maschine ist! Natürlich kann man auch einfach den erstellten Server nutzen indem man die Properties des Targets auf vDisk-Boot umstellt und neu startet.

Schritt_30_1.png
Schritt_30_1.png
Schritt_30_2.png
Schritt_30_2.png
Schritt_31.png
Schritt_31.png
Schritt_32.png
Schritt_32.png
Schritt_33.png
Schritt_33.png

Wenn wir diesen Server nun starten haben wir unser Master-Device und können an diesem weitere Updates einspielen oder Anpassungen vornehmen bevor wir diese Disk verteilen.
Mehr dazu im nächsten Teil…

Aufbau einer Citrix Provisioning 6.1 Umgebung – Teil 2

Aufbau einer Citrix Provisioning 6.1 Umgebung – Teil 2

Nachdem ich im letzten Blogbeitrag: Aufbau einer Citrix Provisioning 6.1 Umgebung – Teil 1 bereits die grundlegende Infrastruktur sowie die Installation des PVS-Servers beschrieben habe erfolgt nun die Konfiguration des selbigen.
War die Installation des Servers sowie der Verwaltungskonsole eigentlich ein mehr oder weniger „Weiterklicken“, so muss man sich ab nun die ersten Gedanken zu Umgebungsgestaltung machen.
Sollten Ftragen zu den Schritten offen bleiben, einfach als Kommentar posten…

Bevor man nun startet und seine PVS-Umgebung aufbaut sollte man auf jeden Fall einen Blick in das Knowledge Center werfen um dort die nötigen Patche für den PVS zu besorgen.
Da das Patchen im allgemeinen und speziell bei den unterschiedlichen Grundkonfigurationen (Hardwaretypen usw) mindestens einen ganzen Blogbeitrag einnehmen würde überspringe ich diesen Part hier mit dem Hinweis auf den obrigen Link zum Knowledge Center.

Provisioning Services Configuration Wizard
Den Configuration Wizard startet man bequem über den entsprechenden Startmenüeintrag und man wird dann mit folgendem Screen begrüßt:

Schritt 1
Schritt 1

Wie versprochen kommt im nächsten Schritt direkt eine Frage welche es zu beantworten gibt. Da ich bereits einen DHCP-Server in meiner Umgebung laufen habe, wird entsprechend auf einen extern existierenden DHCP-Service verwiesen:
Schritt 2
Schritt 2

Den DHCP-Service lasse ich auf einen dafür vorgesehenen Server laufen, dies ist meiner Meinung nach der beste Weg da ich DHCP grundsätzlich in dieser Umgebung nutze und daher diesen Service an eine entsprechende Maschine übertragen möchte. Anders verhält es sich mit dem PXE-Service.
Ich setze im PVS-Target-Bereich (gebunden an den DHCP-Bereich in dem die entsprechende NIC der Server liegt) keinen anderen PXE-Service ein.
Damit ist der PVS für mich grundsätzlich auch der Host des PXE-Services.
Die in der Maske angegebenen DHCP-Optionen 66/67 bitte schon einmal im Hinterkopf behalten.
Schritt 3
Schritt 3

Thematisch gesehen haben wir somit den ersten Schritt, nämlich die Konfiguration des Client-Boots abgeschlossen und gehen über in das Erstellen der PVS-Farm.
Der Wizard macht diesen thematischen Wechsel wenig spektakulär und switcht sofort in die nächste Frage.
Wollen wir eine Farm erstellen, einer bestehen Farm beitreten oder „lediglich“ eine bestehende Farm konfigurieren?
Schritt 4
Schritt 4

Farm definiert sich bei Citrix unter anderem über den gemeinsam genutzten Datensammelpunkt, der Datenbank.
Da wir uns auf das Erstellen einer neuen Farm geeinigt haben müssen wir nun einen DB-Server und eine entsprechende Instanz benennen auf der die Datenbank angelegt werden soll. Sollten wir, was sich in der Produktion empfiehlt, einen Failoverpartner für die Datenbank hinzufügen wollen, so kann dies in der selben Maske erledigt werden.
Schritt 5
Schritt 5

Der logische nächste Schritt ist das Abfragen des Datenbanknamens, sowie die Namen für die Farm, Site und Collection. Weiterhin wird auch bereits nach einem gewünschten Zugriffsszenario gefragt.
Ich halte es für geschickt einen AD-Gruppe anzulegen und diese dann hier sofort als Farmadmins zu benennen.
Schritt 6
Schritt 6

Mit diesen Daten ist nun auch genug Info zur Anlage der Datenbank geflossen. Im nächsten Schritt legen wir den Speicherort der VHDs fest, indem wir den Store-Pfad bestimmen.
Auch wenn man, so wie ich, für Master- und ReadOnly-Disks verschiedene Speicherorte nutzt, hier kann man nur einen Pfad angeben:
Schritt 7
Schritt 7

Wie immer wird der Lizenzserver festgelegt, wobei man hier direkt einen Testconnect aufbauen kann.
Schritt 8
Schritt 8

Meldung bei falsch konfiguriertem Lizenzserverzugriff:
Schritt 8 Fehlermeldung
Schritt 8 Fehlermeldung

Um den Streaming- und den Soap-Dienst lauffähig zu bekommen wird ein entsprechend privilegiertes Konto benötigt.
Zur Auswahl stehen der Local System Account und der Network Service Account, weiterhin kann auch hier ein frei gewältes, selbst angelegtes Dienstkonto aus der AD-Domain genutzt werden.
Insofern der PVS auf das SAN zugreifen muss, muss der LocalSystemAccount gewählt werden.
Persönlich empfehle ich an dieser Stelle den eigenen Diensteaccount.
In diesem Testszenario nutze ich den Network Service Account und aktiviere die Checkbox zur Datenbankkonfiguration.
Schritt 9 NetworkService
Schritt 9 NetworkService

Da wir dem PVS erlauben die provisionierten Computerkonten im AD zu verwalten wird im nächsten Schritt das max. Passwortalter definiert. Hier lassen wir den Standard von 7 Tagen bevor das Passwort refresht wird:
Schritt 10
Schritt 10

Nun wird es wieder ein wenig spannender, daher erst der Blick auf den Screenshot und anschließend in die Erklärung.
Schritt 11
Schritt 11

Hier aktivieren wir nur die Netzwerkkarte welche zum Streamen der VDisks genutzt werden soll! Hier lauscht der Dienst und hier werden auch die Rechner „betankt“.
Als nächstes wird der erste, von 20 genutzten, Port benannt welcher vom Streaming Service zur Kommunikation genutzt werden soll. WICHTIG!!! Alle PVS Server die in der entsprechenden Site gruppiert werden müssen hier den selben Startport definiert bekommen. Ansonsten ist eine Übernahme des Services bei zB Ausfall eines Servers nicht möglich.
Weiterhin, da wir gerade bei Portzuweisungen sind, wird hier der Kommunikation zur PVS-Konsole noch ein Port mitgegeben. (Am besten gleich auf Standard lassen)

ARDBP32.bin!
Der mitinstallierte TFTP-Server liefert uns an dieser Stelle die Location des Bootstrapfiles. Den Namen sollte man sich merken, er wird später noch benötigt:

Schritt 12
Schritt 12

Anschließend definieren wir noch den/die StreamServer welche(r) vom Bootstrapfile „angesprochen“ wird/werden um die Targets mit der VDisk zu versorgen.
Schritt 13
Schritt 13

Hier noch kurz der Einblick in die Advanced Settings welche nur im Fall von Fehlverhalten, Problemen geändert werden müssen.
Schritt 13 Advanced
Schritt 13 Advanced

Den Abschluss des Wizard bildet eine Zusammenfassung der getätigten Einstellungen.
Tip: Den Inhalt der Infobox sollte man sich rauskopieren um damit die Grundlage seiner Doku zu erhalten.
Schritt 14
Schritt 14

Soo… durchatmen und abwarten bis folgende Abschlussmeldung erscheint:
Schritt 15
Schritt 15

Nun wagen wir einen ersten Blick in die PVS-Konsole, dazu starten wir den entsprechenden Startmenüeintrag und gelangen in folgendes Fenster:

Schritt 16
Schritt 16

Wenn der Port zur Konsolenverbindung vorhin nicht geändert wurde und der aktuell angemeldete User in der angegebenen Admingruppe ist kann man sich unter Angabe des Servernamens (oder bei Konsolen-Installation auf dem PVS mit „localhost“) verbinden.
Schritt 17
Schritt 17

Anpassung DHCP
Bevor wir die DHSP Optionen 66/67 bearbeiten noch ein kleiner Tip. Ich halte es für sehr praktisch die PVS-Server auch schon beim PXE-Boot über DNS RoundRobin anzusprechen um a. Last zu verteilen und b. auch hier ansatzweise Redundanz hinzubekommen.
Daher trage ich alle PVS Server mit einem entsprechenden Hostnamen im DNS ein.

Schritt 18
Schritt 18

Dies hat auch den Vorteil, dass man zB später die DHCP Optionen nicht mehr editieren muss wenn man einen Server hinzufügt, rausnimmt,…
Im DHCP-Server legt man anschließend die Optionen 66/67 fest.
Schritt 19
Schritt 19

Gefüllt sieht das Ganze dann wie folgt aus:
Schritt 20
Schritt 20

Geschafft!!!

Nun machen wir noch einen kleinen Leerlauf zum testen.
Startet man einen Server mit PXE-Boot sollte unten gezeigter Fehler vom PVS Server presentiert werden.
Dies liegt daran, dass die MAC-Adresse des Servers nicht in der PVS-DB hinterlegt ist.
Was aber zumindest eine erfolgreiche Verbindung bedeutet 😉

Schritt 21
Schritt 21

Aufbau einer Citrix Provisioning 6.1 Umgebung – Teil 1

Aufbau einer Citrix Provisioning 6.1 Umgebung – Teil 1

In den nächsten Tagen werde ich Schritt-für-Schritt die Installation und Konfiguration einer Citrix Provisioning 6.1 Umgebung zur Provisionierung eines XenApp6.5 Servers posten.
Beginnen will ich mit der Installation des PVS6.1 Servers inkl. der Verwaltungskonsole.
Als Basis dazu verwende ich Windows Server 2008 R2 mit SP1 und den letzten Security Updates als PVS und logischerweise als XenApp Server.
Das ganze Szenario spielt sich auf meinem Windows 8 Notebook mit installierter Hyper-V Rolle ab. Entsprechend langsam und an einigen Stellen kompliziert lief das ganze Testszenario bis dato.

Die Umgebung besteht aus einem AD-DomainController welcher zusätzlich DHCP- und DNS- sowie Lizenz-Server ist, einem Citrix-Lizenzserver sowie einem XenApp6.5 DataCollector. Als SQLServer wird eine ExpressEdition auf dem PVS genutzt.
<- All diese Komponenten sind bereits vorinstalliert…

Installation des Provisioning Services Servers
Nach dem Hinzufügen des Installationsmediums startet der Installationswizard automatisch mit der Abfrage der gewünschten Aktivität. Hier wählen wir die Serverinstallation aus:

Schritt 1
Schritt 1

Die Serverinstallation beinhaltet neben dem eigentlichen Server auch den benötigten Lizenzserver. Da dieser essenzieller Bestandteil jeder Citrixumgebung ist sollte spätestens JETZT ein Lizenzserver installiert werden (Ich habe diesen wie bereits erwähnt schon installiert)
Wichtig: Man sollte bevor man ein neues Citrixprodukt installiert immer auf die aktuellste (mindestens auf die mitgelieferte) Version upgraden.

Schritt 2
Schritt 2

Begrüßungsbildschirm:

Schritt 3
Schritt 3

Lizenzbestimmung:

Schritt 4
Schritt 4

Festlegen für wen die Installation nutzbar sein soll:

Schriit 5
Schritt 5

Installationspfad:

Schritt 6
Schritt 6

Auswahl ob vollständige oder angepasste Installation:

Schritt 7
Schritt 7

Übersicht über die Komponenten bei der „Custom Installation“:

Schritt 8
Schritt 8

Installationsstart:

Schritt 9
Schritt 9

Nach kurzer Warte- und Installationszeit erfolgt die Abschlussmeldung:

Abschluss
Abschluss

Zum Abschluss der Installation erfolgt der Hinweis auf die fehlende Konsole. Ich habe diese anschließend gleich mit auf das System installiert. In der Produktionsumgebung kann man diese Konsole aber auch auf eine Verwaltungssystem auslagern oder natürlich auch zusätzlich installieren:

Schritt 10
Schritt 10

Installation der Provisioning Services Konsole
Starten des Wizards:

Schritt 11
Schritt 11

Auch an dieser Stelle muss man den Lizenzbestimmungen zustimmen:

Schritt 12
Schritt 12

Abermals wird abgefragt wer das Produkt nutzen darf:

Schritt 13
Schritt 13

Programmpfad:

Schritt 14
Schritt 14

Auch bei der Konsole gibt es eine Komplet- bzw. angepasste Installation:

Schritt 15
Schritt 15

Auswahl der Pakete bei der angepassten Installation:

Schritt 16
Schritt 16

Start der Installation:

Schritt 17
Schritt 17

Abschluss:

Schritt 18
Schritt 18

Nach erfolgreicher Installation haben wir nun einen konfigurationsbereiten Citrix Provisioning Server vor uns.
Im nächsten Blogbeitrag werde ich den Server konfigurieren sowie Anpassungen an der Infrastruktur vornehmen.

XenApp5 Vorbereitung für PVS

XenApp5 Vorbereitung für PVS

Will man einen XenApp5-Server provisionieren muss man diesen mit dem Citrix-eigenen „Sysprep“, dem XenAppPrep, vorbereiten.
Dieser Schritt muss allerdings nicht nur bei der Initialen Provisionierung der Disk erfolgen sondern bei jeder Änderung an der Private-Disk.
Hierzu rufe ich in meiner Umgebung folgendes Script auf und dabei „räume“ ich auch noch ein wenig in der Umgebung auf…
Das ganze hat sich aus diversen Diskussionen, Foren- und Blogbeiträgen, sowie Best-Practises entwickelt und sieht mittlerweile wie folgt aus:

Hier noch der „WMI-Rebuilder“ welcher im obrigen Script als wmi.cmd aufgerufen wird:

%d Bloggern gefällt das: