LoginVSI PowerShell – Automate Tests


I have a PowerShell function that preps my lab and another executes a single LoginVSI test.  Now, I need to fully automate my LoginVSI testing to perform multiple tests without any interaction.  I need to do the following: Perform a test for each Master VM I specify For each Master VM, test specific workloads For each workload, test specific Virtual Apps and Desktops policies Perform each test twice, for 60 minutes each If I have 1 master VM, 2 workloads, and 3 different policies, and I want each test to run twice, this script will run a total of 12 … Continue reading LoginVSI PowerShell – Automate Tests

Citrix Hypervisor PowerShell – Reset VM


This XenServer PowerShell script resets a XenServer VM by doing the following: Shuts down the VM down and waits for the VM to power off Reverting to the “Baseline” snapshot (creates one if one not already created) Starts the VM Waits for VM to be in a running state, (waits until the VM’s Netlogon Windows service is running) Continue reading Citrix Hypervisor PowerShell – Reset VM

LoginVSI PowerShell – New-CitrixVSITest


Being able to automate a LoginVSI test saves a lot of time, but there is more to testing than just the LoginVSI portion. We must remember to get the environment prepared for a LoginVSI test. For a Citrix XenApp and XenDesktop test, I always need to do the following: Prepare environment Remove the first VM from maintenance mode and power on Identify the XenServer host for the VM If needed, start capturing metrics on the XenServer host Wait for the VM to register with the XenApp and XenDesktop delivery controller Remove all remining VMs from maintenance mode, start and wait … Continue reading LoginVSI PowerShell – New-CitrixVSITest

LoginVSI PowerShell – Invoke-VSITest


LoginVSI automates performance testing and I need to automate LoginVSI. By calling this one function, I can invoke a single LoginVSI test. At a high-level, the test does the following Prepare test These items simply get the environment ready for a LoginVSI test. It includes doing the following: Delete any old test files on the LoginVSI server Create log file if one does not exist Disable RDP connection warning message when connecting to my launcher machine Start LoginVSI Session Monitor if not already running Connect to LoginVSI Launcher Start LoginVSI test One thing I added was to monitor the LoginVSI … Continue reading LoginVSI PowerShell – Invoke-VSITest

Pooled Desktops with Local Host Cache


Local host cache, within XenApp and XenDesktop, utilizes a local DB to store configuration information. This local DB is continuously updated by the master SQL DB. When connectivity to the SQL DB fails, the controller automatically switches to the local DB. When the link to the SQL DB is restored, the controller automatically switches back.

Local host cache allows users to make new connections to published apps and desktops.  However, local host cache can’t replace all functionality of the master SQL DB.  For instance, power options (starting and stopping VMs) are not available.  This can be a concern for implementations that rely on pooled desktops (desktop that is temporarily assigned to a user. When the session ends, the desktops is rebooted and is available for any other user).

The power options for a pooled desktop is the problem with local host cache. In the default behavior with local host cache, when a user logs off, the pooled desktop goes into maintenance mode.  It is now unavailable for any other user.

If the outage only lasts a short amount of time, this isn’t much of a concern. But if the outage lasts hours, or an entire day, we could potentially run out of powered on VMs.

Now, because I said this is the default behavior it should make you believe that there is an alternative.  And there is. Continue reading “Pooled Desktops with Local Host Cache”