Citrix XenDesktop 5.6 – Desktop Studio DB Connection fails after installing Hotfix Update 4

Written by Thomas Poppelgaard. Posted in Citrix, Microsoft, SQL, XenDesktop

I am doing a HDX 3D Pro POC in Oslo with Morten Waler, and we bumb into an critical issue with a vanilla Citrix XenDesktop 5.6 Controller, after applying Hotfix update 4 for Citrix XenDesktop 5.6.

If you install a fresh new Citrix XenDesktop 5.6 Controller installation and apply the latest Hotfix update 4, normal you would have a button in the XenDesktop Studio dashboard saying if you want to upgrade the database this is the case with Hotfix update packages before Hotfix update 4. With Hotfix update 4 applied on a vanilla XenDesktop environment there is no upgrade database button, and if you configure the environment and create “Desktop Groups” and assign users to them, you will get and DB connection error.

Doug Nuveen from the Citrix forum, came up with this solution:

  • Uninstall Desktop Studio
  • Uninstall Broker Service
  • Uninstall Broker Powershell Snap-In

Next, install the same components from the XenDesktop 5.6 iso.

Here comes the critical part, CREATE YOUR FIRST DESKTOP GROUP! There is clearly some bug in Hotfix Update 4 that does not enable the DB Upgrade button in the Dashboard if you dont have any Desktop Groups when you run the update.

Next, install the updates from Hotfix Update 4.

  • Broker Service
  • Broker Powershell Snap-In
  • Desktop Studio from XD560DStudioWX64002

Open Desktop Studio and go to Dashboard, you should now see a button to upgrade. Hit it, select Automatic. BAM! It’s all good. Well for us that is, other users are reporting that they have problems doing the upgrade automatic and manual.

Source

Kudos to Doug Nuveen & Morten Waler for confirming this issue and the above solution works ;)

A message to Citrix

Citrix, could you please test your XenDesktop Hotfix Update’s on your vanilla systems, before you ship them to the market.

The Ultimate RES Software BuildingBlock for Citrix

Written by Thomas Poppelgaard. Posted in Provisioning, SQL, Uncategorized, XenApp, XenDesktop

Short info about RES Automation Manager

The RES Automation Manager is a small-footprint, yet highly scaleable infrastructure management platform that allows you to make changes to any kind of Windows server or computer, without having to create a single script or policy. Automation Manager (abreviated AM) is driven by a userfriendly and easy-to-use management console, that allows for massive parallel operation: Multiple admins can schedule multiple jobs on multiple AM agents all at the same time. While retaining the ability to interface with Active Directory for the purpose of managing AD objects, RES Automation Manager itself does not need AD as a prereqisite to run. This means you can manage machines even outside of your own domain. AM supports multiple administrative roles, which will allow you to securely define exactly who can create or run jobs on what target computers. You can add the Service Orchestration Module to AM, which will allow you to deliverIT as a Service. (source resguru)

The Ultimate RES Software BuildingBlock for Citrix

Mr. Luca Lo Castro and Max Ranzau (resguru.com) have created this most awesome Run Books for RES Automation Manager.

The Runbook does the following:

  • Unattended installation of Citrix Provisioning Server 6.0 (PVS)
  • Unattended installation of Citrix XenApp 6.5 (XA)
  • Unattended installation of Xen Desktop 5.5 (XD)
  • Preparation of a Windows 7 image (application of best practices, per Citrix’s recommendations.

This is quite valuable for anyone who installs these products for a living, no matter if you are a consultant, a Citrix SE or perhaps a Citrix admin. Note * SQL express is used in this Building block, for enterprise environments i would use a SQL server std/ent or HA.

The cool part is that ALL of the above is done in less than 45 minutes! Add that to the approx. 15 minutes it takes to stand up the RES Automation Manager infrastructure, and ask yourself this: How long does it take you to stand up a XenDesktop + PVS + XA environment under normal circumstances? I trust you see my point. So what are the prerequisites for all this? You’ll need the following:

  • Your 3 .ISO files, respectively for PVS, XA and XD. If you haven’t got them, download them from MyCitrix.com
  • A server (200x, doesn’t really matter), which will hold your DBMS for Automation Manager and be a mount point for your ISO’s. Let’s call itServer1. If you can run a compatible datastore for Automation Manager, this could be your laptop!
  • Mount the ISO’s on this server using Daemon Tools or similar. Alternatively, if you are using a VM, you can just mount the ISO’s directly on the virtual machine as DVD drives. Finally if you already have the ISO’s extracted somewhere, you can just share those folders. Either way, make sure you share the individual mount folders, so the contents of each ISO is available as a \\server1\share UNC path.
  • You will also need 3 blank x64 Server 2008R2 servers. And I do mean blank. For example, not manually install the .Net 4 client profile ahead, as it will mess up the unattended installation of SQL Express. These servers will be the target servers for PVS, XA and XD. Lets call these machines Server A, B and C
  • Finally you’ll need a blank Windows 7 machine. This is the machine which will be prepped for use with PVS (registry hacks applied, services configured etc) as the golden image.

To get things stood up, here are some guidelines to get you started:

  1. Download and install the RES Automation Manager aka AM. Refer to theGetting Started guide.
  2. Deploy the AM Dispatcher to Server1
  3. Deploy the AM Agents to the 3 blanks Servers A..C
  4. Import the buildingblock, which you will find at the end of this article.
  5. In the AM console, go to Repository | Run Books
  6. Rightclick on the Citrix POC-Sales runbook and select Schedule Job
  7. Fill out the parameters for the runbook as described below
  8. Hit OK, then hit the local Starbucks.. :)

The parameter screen needs a bit of explanation, because if you don’t fill things in right, then of course “interesting” things may happen. You know the drill: BS in, BS out. So let’s have a look at a screen I’ve already filled out below. Click to enlarge:

The table below explains each field and what you need to enter.

Field Description
customer This is the name of the site where you are installing the proof-of-concept. This will be displayed as the Farm name
SetupNumber
newXA Hostname of one of the 3 blank Server2008R2′s which is to become the XenApp 6.5 server. Just use NETBIOS name
newXD Hostname of one of the 3 blank Server2008R2′s which is to become the XenDesktop 5.5 server. Just use NETBIOS name
newPVS Hostname of one of the 3 blank Server2008R2′s which is to become the Provisioning Server 6.0. Just use NETBIOS name
securitycontext This is a combined field of domain\username + password credentials to be used for the installation. Normally you would use the equivalent of a Domain Admin for this.
domain Supply the FQDN of the current domain to which we are installing into, such as yourdomain.com
licserv Where the Citrix License server is installed. This has to be a Server 2008R2. IIS will be installed here to support the license server
components Here you can chose one of 4 options: 1) install just the license server, 2) Install just the Web Interface, 3) Install XenApp, and 4) Install XenApp + WebInterface
exmode Here you select either to Create a new farm from scratch, or Join an existing one
version Chose here what flavor of XenApp you want to install: Advance, Enterprise or Platinum
optimization This section lets you chose one or more optimization methods to be applied to the Windows 7 image. These are documented in (link needed)
sqldatafolder This is the path to where the SQLexpress will create the datastores. For regular POC scenarios, this doesn’t need to be modified
sqlInstancename Name of the SQL instance to be created. More info needed ???
sapassword specify the sa password for the new SQLexpress datastore
TerminalServerLicenseServer Specify the hostname of the TS License server. This is strictly not necessary for a short term demo environment as you’ll have temporary licenses to work with. This is used when enabling Terminal Services in Application mode
TSLicenseMode When enabeling TS in Application mode you have to chose what licensing method. You can specify here either PerUser or PerDevice.
PVSpath The \\server\share UNC path to the share that contains the mounted ProvisioningServer .ISO or the contents of it.
XApath The \\server\share UNC path to the share that contains the mounted XenApp .ISO or the contents of it.
XDpath The \\server\share UNC path to the share that contains the mounted XenDesktop .ISO or the contents of it.

How to Restore a XenDesktop 5 Database on a SQL 2008 Server

Written by Thomas Poppelgaard. Posted in SQL, XenDesktop

Summary

This article contains information about restoring a XenDesktop 5 database on a SQL 2008 Server

Requirements

It is assumed that the administrator has basic knowledge for SQL administration or has appropriate resources to assist with the execution of the SQL statement command.

Background

When using Microsoft SQL Server, consult the Database Server product documentation for scheduling automated backups of the Data Store. In most cases, daily backup is sufficient to prevent loss of farm data.

In this scenario, it is expected that the Citrix Data Store is unavailable until the procedure is complete. Therefore, complete all the steps in the following procedure within the same change window.

Notes:

  • It is strongly recommended that no administrative changes be attempted until the Database is back online and verified.
  • All Management Consoles should be closed.

Review throttling and idle pool settings as soon as you restore the DB to mitigate the possibility of boot storms

The following environmental data is used as an example:

Procedure

  • Restore the most recent database backup onto the target server.

Refer to the Copying Databases with Backup and Restore web page of Microsoft msdn library for more information

  • Verify that all DDCs have valid logins for their machine account in the form DomainName\Computername$ on the database server. If verified, move to Step 3.
  • To create machine logins for all DDCs on the database server, complete the following procedure:
  • Start SQL Server Management Studio or SQLCMD,
  • Run the CREATE LOGIN [DOMAIN\MACHINE$] FROM WINDOWS query, as displayed in the following screen shot:

Note: Use upper-case for the Domain and Computer Name
  • Each DDC Machine Login should have a corresponding user account under the restored Database. Locate these accounts and verify that their Database role membership is set to the following role, as displayed in the screen shot:
  • ADIdentitySchema_ROLE
  • chr_Broker
  • chr_Controller
  • ConfigurationSchema_ROLE
  • DesktopUpdateManagerSchema_ROLE
  • HostingUnitServiceSchema_ROLE
  • MachinePersonalitySchema_ROLE

  •  Redirect DDCs to the new database:
  • At each DDC, open a PowerShell window and run the following commands where <dbserver> is the name of your SQL server, which is the instance if defined and <dbname> is the name of the XenDesktop database. This process loads the Citrix PowerShell Snap-in, clear the database connection and then configure the correct connection for each service:

    Add-PSSnapin Citrix.* Set-ConfigDBConnection -DBConnection $null Set-AcctDBConnection -DBConnection $null Set-hypDBConnection -DBConnection $null Set-ProvDBConnection -DBConnection $null Set-pvsvmDBConnection -DBConnection $null Set-brokerDBConnection -DBConnection $null Set-ConfigDBConnection -DBConnection “Server= <dbserver>;Database= <dbname>;Trusted_Connection=True”
    Set-AcctDBConnection -DBConnection “Server= <dbserver>;Database= <dbname>;Trusted_Connection=True”
    Set-HypDBConnection -DBConnection “Server= <dbserver>;Database= <dbname>;Trusted_Connection=True”
    Set-ProvDBConnection -DBConnection “Server= <dbserver>;Database= <dbname>;Trusted_Connection=True”
    Set-PvsVmDBConnection -DBConnection “Server= <dbserver>;Database= <dbname>;Trusted_Connection=True”
    Set-BrokerDBConnection -DBConnection “Server= <dbserver>;Database= <dbname>;Trusted_Connection=True”

Note: It is important to verify that all the preceding Set-<service>DBConnection commands have returned a result of OK. In case, when the result is other than OK for any of these commands, it might be necessary to enable logging or tracing to determine the cause of the connection failure.

The XDDBDiag utility can be used to verify the consistency of your database after the move.

If any Virtual Desktop Agents were running when the DDC services were shut down in Step 1, then it could take up to 10 minutes before the Virtual Desktop Agents re-registers. No other action should be necessary.

More Information

Refer to the following Knowledge Center articles for more information:

Source

Using Marathon everRun MX 6.1 with XenDesktop 5 Service Pack 1

Written by Thomas Poppelgaard. Posted in SQL, XenDesktop, XenServer

Introduction

XenDesktop 5 relies on the use of an SQL database to store “state information”: which Virtual Desktop groups are available, which Virtual Desktop Appliances are in use, and which users are using them.

Because of the real-time nature of this “state information”, it is not appropriate for updates to be lost or delayed in the event that the SQL database becomes unavailable. For this reason, some users may feel that they need a highly available SQL database to support their business needs, and HA (High Availability) can be an important requirement for these deployments.

This document explores the possibility of using Citrix XenServer and Marathon everRun MX 6.1 to support a highly available Microsoft SQL Server.

Executive Overview

A number of tests were performed to see whether Marathon everRun MX 6.1 could support a highly available Microsoft SQL Server for use by XenDesktop 5 Service Pack 1.

These tests included setting up a constant stream of SQL traffic between a XenDesktop 5 Service Pack 1 broker, and the SQL Server. High Availability events such as loss of a host or loss of network connectivity were then induced to see if the SQL traffic could be interrupted.

The result of the tests showed that Marathon everRun MX was able to handle the High Availability events, and was able to keep the SQL Server running without service interruptions, loss of data, or loss of in-flight transactions that might have caused problems with XenDesktop 5 Service Pack 1.

Performance tests were not appropriate with the available hardware.

Marathon everRun MX 6.1 (description by Marathon Technologies)

Marathon’s everRun MX is a software product that provides zero-downtime fault tolerant protection for Windows application operating in a XenServer pool. With everRun installed, the administrator uses a wizard-based GUI to simply select and protect a VM. Once protected, everRun provides continuous, uninterrupted application availability. Unlike traditional failover technologies there is no downtime or restart of the VM required. In the event of a failure, the application automatically continues without loss of data or interruption of network sessions and all in-flight transactions are completed. everRun protects any Microsoft application without requiring scripting, modification or specialized administrative skills. In addition, everRun’s disk mirroring technology permits use of local disk storage without the requirement for costly and complex shared storage devices.

everRun operates by running redundant VM’s operating across 2 XenServer hosts. Marathon’s Lockstep technology synchronizes the redundant VM’s so they execute identically. In the event of a failure, the surviving VM simply continues to operate without interruption. When a failed component is repaired, redundancy is transparently and automatically re-established .

For full details of Marathon everRun MX see http://www.marathontechnologies.com

Read the full document here

Scaling to 1,000 XenApp6 servers in a single farm

Written by Thomas Poppelgaard. Posted in App-V, HDX, SCCM, SQL, Whitepapers, Windows Server 2008R2, XenApp

Introduction

XenApp is an on-demand application delivery solution that enables any Windows application to be virtualized, centralized and managed in the datacenter and instantly delivered as a service to users anywhere on any device. This means subscribers can use whatever device they choose—laptop, tablet, smartphone—but still access familiar Windows desktops and business applications that the service provider manages. XenApp enables service providers to centrally manage a single instance of each application and deliver it to users for online and offline use, providing a high-definition experience. It delivers 99.999 percent application availability and is proven with 25 million applications in production and over 100 million users worldwide.

Citrix XenApp 6 introduces exciting new enhancements for advanced management and scalability, a rich multimedia experience over any network and self-service applications with universal device support from PC to Mac to smartphone. With full support for Windows Server® 2008 R2 and seamless integration with Microsoft® App-V, XenApp 6 provides session and application virtualization technologies that make it easy for service providers to centrally manage applications using any combination of local and hosted delivery to best fit their unique requirements.

This whitepaper examines the architecture and design of the Citrix XenApp solution and its ability to provide a scalable and high availability infrastructure while delivering on-demand access to applications (SaaS) and desktops (DaaS) from the cloud.

Download white paper here

Recent Comments

Thomas Poppelgaard

|

Hi Steve normal I install the GRID driver to device and when its workin, I disable the default VGA device.

Have you applied latest hotfix to the XS6.1 there are some crucial hotfixes to the GPU pass-through, that could crash the GRID’s, when you power on a VM with GPU pass-through.

Steve

|

Just a quick question on your setup. We just got a system similar to yours (R720, 2xGrid K2 cards, XenServer 6.1, XenApp 6.5). The GRID K2 driver installs (320.00), but the device shows up as stopped in device manager. Did you use any special options when installing the nVidia driver? Or somehow remove the default VGA device?

Dan

|

Hi Thomas,
Some features in your screenshots (eg create appointments and contacts) seem to be missing from the iOS version of @WorkMail that got released in April, do you know if these features are still coming in a future release? The Android client is far more functional by comparison.
Regards
Dan

Christian Eilskov

|

You can see the DHCP options here:

http://www.wyse.com/kb and search for 21501

You can transfer a image using Wyse Device Manager(WDM), the same goes for smaller updates like new ICA client and so.

Thomas Poppelgaard

|

Thank you Barry =)
The deep compression codec for Citrix XenDesktop HDX 3D Pro will be intergrated for Citrix XenApp in Excalibur so there is a big difference with bandwidth consumption. This means that XenApp in Excalibur will be the best platform for user density and works great over WAN with high latency as HDX 3D Pro have been known to deliver for several years. Yes i know of cases with WAN optimization, I will gather these and share them.

Best regards
Thomas

Feeds from Citrix Blog :