Citrix Workspace Environment Management (WEM) is the new name of the product formally known as Norskale VUEM.
In this post I’m going to show you how to install all the components unattended and lessons learned in MCS & PVS environments.
Prerequisite
Download Citrix Workspace Environment Management and extract it to the folder Citrix\Workspace Environment Management\4.0
Citrix Workspace Environment Management Infrastructure Services
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Write-Verbose "Setting Arguments" -Verbose $StartDTM = (Get-Date) $Vendor = "Citrix" $Product = "Workspace Environment Management Infrastructure Services" $PackageName = "Citrix Workspace Environment Management Infrastructure Services v4.00.00.00 Setup" $InstallerType = "exe" $Version = "4.0" $LogPS = "${env:SystemRoot}" + "\Temp\$Vendor $Product $Version PS Wrapper.log" $LogApp = "${env:SystemRoot}" + "\Temp\$PackageName.log" $Destination = "${env:ChocoRepository}" + "\$Vendor\$Product\$Version\$packageName.$installerType" $UnattendedArgs = '/s /v"/qn' Start-Transcript $LogPS CD $Version Write-Verbose "Starting Installation of $Vendor $Product $Version" -Verbose (Start-Process "$PackageName.$InstallerType" $UnattendedArgs -Wait -Passthru).ExitCode Write-Verbose "Customization" -Verbose Write-Verbose "Stop logging" -Verbose $EndDTM = (Get-Date) Write-Verbose "Elapsed Time: $(($EndDTM-$StartDTM).TotalSeconds) Seconds" -Verbose Write-Verbose "Elapsed Time: $(($EndDTM-$StartDTM).TotalMinutes) Minutes" -Verbose Stop-Transcript |
Citrix Workspace Environment Management Console
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Write-Verbose "Setting Arguments" -Verbose $StartDTM = (Get-Date) $Vendor = "Citrix" $Product = "Workspace Environment Management Console" $PackageName = "Citrix Workspace Environment Management Console v4.00.00.00 Setup" $InstallerType = "exe" $Version = "4.0" $LogPS = "${env:SystemRoot}" + "\Temp\$Vendor $Product $Version PS Wrapper.log" $LogApp = "${env:SystemRoot}" + "\Temp\$PackageName.log" $Destination = "${env:ChocoRepository}" + "\$Vendor\$Product\$Version\$packageName.$installerType" $UnattendedArgs = '/s /v"/qn' Start-Transcript $LogPS CD $Version Write-Verbose "Starting Installation of $Vendor $Product $Version" -Verbose (Start-Process "$PackageName.$InstallerType" $UnattendedArgs -Wait -Passthru).ExitCode Write-Verbose "Customization" -Verbose Write-Verbose "Stop logging" -Verbose $EndDTM = (Get-Date) Write-Verbose "Elapsed Time: $(($EndDTM-$StartDTM).TotalSeconds) Seconds" -Verbose Write-Verbose "Elapsed Time: $(($EndDTM-$StartDTM).TotalMinutes) Minutes" -Verbose Stop-Transcript |
Citrix Workspace Environment Management Agent
The product comes with a ADM/ADMX Group Policy Template that you can use to defined the broker server where you have the Infrastructure Service installed.
The problem with this approach are that normally the service itself starts before the GPO is applied. Also for PVS you want to redirect the Cache folder to the WriteCacheDisk. Please change the values under Customization:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
Write-Verbose "Setting Arguments" -Verbose $StartDTM = (Get-Date) $Vendor = "Citrix" $Product = "Workspace Environment Management Agent" $PackageName = "Citrix Workspace Environment Management Agent v4.00.00.00 Setup" $InstallerType = "exe" $Version = "4.0" $LogPS = "${env:SystemRoot}" + "\Temp\$Vendor $Product $Version PS Wrapper.log" $LogApp = "${env:SystemRoot}" + "\Temp\$PackageName.log" $Destination = "${env:ChocoRepository}" + "\$Vendor\$Product\$Version\$packageName.$installerType" $UnattendedArgs = '/S /v"VuemLocalUserPassword=\"P@ssw0rd\" /q' Start-Transcript $LogPS CD $Version Write-Verbose "Starting Installation of $Vendor $Product $Version" -Verbose (Start-Process "$PackageName.$InstallerType" $UnattendedArgs -Wait -Passthru).ExitCode Write-Verbose "Customization" -Verbose cmd /c "REG ADD "HKLM\Software\Policies\Norskale\Agent Host" /f /v "BrokerSvcName" /t REG_SZ /d "mgmt-01.ctxlab.local"" cmd /c "REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Norskale\Agent Host" /f /v "AgentCacheAlternateLocation" /t REG_SZ /d "D:\\Norskale"" Write-Verbose "Stop logging" -Verbose $EndDTM = (Get-Date) Write-Verbose "Elapsed Time: $(($EndDTM-$StartDTM).TotalSeconds) Seconds" -Verbose Write-Verbose "Elapsed Time: $(($EndDTM-$StartDTM).TotalMinutes) Minutes" -Verbose Stop-Transcript |
Database Configuration
Please consult my post Advanced Proof of Concept – Citrix Lifecycle Management Blueprint to learn how to configure the database or use this post from my CTP fellow Carl Stalhood.
.
Loadbalancing the AdminBroker is not recommended. I ran into issues when attempting this. Symptoms I experienced was that the “Monitoring” tab would time out.
I asked support and they confirmed that it’s not recommended:
Due to authentication issues, it is not recommended that you point the WEM admin console at your load balancer’s VIP. Instead, please point it directly at one of the brokers – if you have multiple WEM admins, the best way to make sure everything works fine is to point all consoles at a single broker.
Thanks for sharing your insights Nils Andreas.
Nils,
Make sure you create a VIP for Monitoring 8287 otherwise you will have trouble with the “monitoring” tab timing out or flaking out.
So in all you should have 4 WEM VIPs.
8286 – Agent
8285 – Agent Sync
8284 – Management
8287 – Monitoring
Hi Eric,
As of version 4.1 Citrix removed the VuemLocalUserPassword argument from Agent deployment.
And if you’re using BISF 6, it will set the AgentCacheAlternateLocation to the WriteCache drive.
Cheers,
Jeremy
Thanks Jeremy, I’ll certify BIS-F 6 for the Automation Framework 3.6 next week.