Expand virtual machines hard disk – automation 7 Comments

Sometimes, at some customers's place, with an infrastructure already in place (XenApp with PVS or XenDesktop VDI pooled with PVS) the D: drive is too small. The drive where you redirect Windows Event Logs, Logs (UPM for example and/or other applications - services) This is a drive where page file is often redirected as well and even memory dump file generated. PVS cache can also be on this drive : Cache on device RAM with overflow on Hard Disk When RAM is zero, the target device write cache is only written to the local disk. When RAM is not zero, the target device write cache is written to RAM first. When RAM is full, the least recently used block of data is written to the local Write Cache disk to accommodate newer data on RAM. The amount of RAM specified is the non-paged kernel memory that the target device consumes. Cache on device Hard Disk The cache on local HD is stored in a file on a secondary local hard drive of the device. It gets created as an invisible file in the root folder of the secondary local HD. The cache file size grows, as needed, but never gets larger than the original vDisk, and often not larger than the free space on the original vDisk. It is slower than RAM cache, but faster than Server cache and works in a HA environment. The lack of space on this drive will bring some slowness in user's session and this drive needs to be expanded a bit to get back a normal user experience. To expand these disks two actions need to be done : Expand the Virtual Machine hard disk - in this example vmware Virtual Machines Expand the disk within the Operation System (Windows) In addition to the following script, psexec tool (Microsoft Sysinternal) is used to execute remotely the diskpart command listed in a text file (diskpart.txt) which is upload to the Virtual Machines. Targeted Virtual Machines need to be powered on. Psexec.exe and Diskpart.txt needs to be in the same folder as the Powershell script, of course you can specify their path as it suits your need.   This script is using XenDesktop / XenApp command to list all the Virtual Machines with SessionSupport value equal to SingleSession, it means the VDI only in my case. If you want to check the lust of Virtual Machines…

XenDesktop XenApp 7.x – vmware / ad / delivery group notes and descriptions sync 9 Comments

Several times i had the need to synchronise Virtual Machine notes (vmware) with Active Directory Computer description. As in big environment, different team are managing each of these components, the need to be able to link an Active Directory computer account to a vm with XenApp / XenDesktop delivery group has often been seen as useful. Delivery group name : Desktop123 Virtual Machine note (vmware) : Desktop123 Active Directory account Description : Desktop123 The idea is to simply synchronise the information through the platforms so everyone knows quickly what machine does what. In this particular example that was about XenApp Servers and XenDesktop VDI. You will need a machine where : XenDesktop 7.x SDK (Powershell is installed) vmware PowerCli installed RSAT role deployed as well Thank to Rodolphe Herpeux who simplified the first version of this script I wrote.

Netscaler 10.5 and Storefront 2.5.2 Configuration 13 Comments

Citrix Netscaler 10.5 is out since a couple of weeks now, and if you want to read what's new about this new release just click on the [link] because there are so many things I won't list everything here. I will use this blog to refresh the "how to" I already did about Netscaler and I will go through the basic setup, certificate request, import and Access Gateway configuration to plug my XenDesktop 7.5 lab. First, you need to download your Netscaler (download if you're using a VPX appliance). You can find the appliance corresponding to your hypervizor : vmware ESX Microsoft Hyper-V Citrix XenServer KVM You can download it here : [link] - myCitrix account is required One you boot up the appliance, after give the basic information like IP address, subnet and getway, you can fireup the GUI through your favorite browser. You need to logon and follow the step by step screenshots : The basic configuration is done. now time to add a certificate for the Access Gateway, creating a private key, a CSR and finally importing the pem certificate.   Don't forget to change the nsroot password. Now the certificate part is done (thanks to Digicert for my lab) you can go ahead to the next step and configure your Strorefront server to create a new store ready to connect with the Netscaler Access Gateway. Storefront part is easy and quick to do, you can now continue by creating the Access Gateway using the new wizard and following these steps : Here you go, just a reboot to have the Access Gateway up and running. I had few issue in the end with Application Firewall with Google Chrome and Safari from a Mac OSx computer, you need to enable the learning mode to check what need to be change in Application Firewall rules and allow connexion to you Access Gateway. You can customize the Netscaler Access Gateway logon page and your Storefront very easily, Eric one of my CTP friends did a very short and nice blog about that [link] and a very detailed blog written by Feng Huang Citrite here [link] This blog will give you a good overview on what needs to be done to set up an Access Gateway with Storefront, for those who don't have time to make test, now you know !

Cloudify my lab with Windows Azure 13 Comments

As I got an unlimited access to Windows Azure I wanted to check out how I could extend my lab into it and use it to store VMs workload (at first). Here what you need : Citrix NetScaler VPX (tested with NS10.1: Build 122.17.nc & NS10.1: Build 123.9.nc) Windows Azure Access Homelab (running on vSphere 5.5) Of course, you need licence for everything... Considerations : Before configuring a CloudBridge tunnel between a CloudBridge appliance in datacenter and  Microsoft Azure, consider the following points: The CloudBridge appliance must have a public facing IPv4 address (type SNIP) to use as a tunnel end-point address for the CloudBridge tunnel. Also, the CloudBridge appliance should not be behind a NAT device. (or you'll have to setup a route for your LAN computers, I'm explaining how to at the end of this blog) Azure supports the following IPSec settings for a CloudBridge tunnel. Therefore, you must specify the same IPSec settings while configuring the CloudBridge appliance for the CloudBridge tunnel. IKE version = v1 Encryption algorithm = AES Hash algorithm = HMAC SHA1  You must configure the firewall in the datacenter edge to allow the following. Any UDP packets for port 500 Any UDP packets for port 4500 Any ESP (IP protocol number 50) packets IKE re-keying, which is renegotiation of new cryptographic keys between the CloudBridge tunnel end points to establish new SAs, is not supported. When the Security Associations  (SAs) expire, the tunnel goes into the DOWN state. Therefore, you must set a very large value for the lifetimes of SAs. You must configure Microsoft Azure before specifying the tunnel configuration on the CloudBridge appliance, because the public IP address of the Azure end (gateway) of the tunnel, and the PSK, are automatically generated when you set up the tunnel configuration in Azure. You need this information for specifying the tunnel configuration on the CloudBridge appliance. First thing first, you need to use your Windows Azure account and follow the next step to begin to configure the IPSec tunnel by creating a local network In the left pane, click NETWORKS. In the lower left-hand corner of the screen, click + NEW. In the NEW navigation pane, click NETWORK, then click VIRTUAL NETWORK, and then click ADD LOCAL NETWORK. In the ADD A LOCAL NETWORK wizard, in the specify your local network details screen, set the following parameters: NAME  VPN DEVICE IP ADDRESS In the lower right corner of the screen,…

Citrix XenDesktop 7 – Create Persistent Hypervisor Connection and Hosting Unit, Unattended 13 Comments

I blogged about how to automate Citrix XenDesktop 7 deployment and database creation, and how to join and existing XenDesktop 7 site unattended, but now to continue and go a bit further in the automation process, I needed and wanted to know how to automate Hosting Configuration by Adding Connection and Resources to the DDC in an unattended way. This blog will cover creation process for XenServer 6.x and vCenter (vSphere) 5.1 since I don't have access to a Hyper-V (yet), I went over Citrix eDoc to check how I could do this and I found here : [link] Thanks to Livio for some PowerShell help :) It helps to understand whet need to be setup and after few tests I ended up writing this script to automate this part :   This script have been tested with Citrix XenDesktop7 and XenServer 6.2 and vSphere 5.1

This is the personalized installation I do when I deploy vmtools on the VMs with VDA to install on it. Don't forget to install vmtools before Citrix Virtual Desktop Agent ! It always good to have this information shared because I had a lot of question regarding vmware vmtools installation with Citrix XenDesktop VDAs. Toolbox – Enable – Used for functions like time synchronization and clean shutdown of guest. Memory Control Driver – Enable - Driver for improved memory management in the virtual machine. This driver is available and recommended if you use VMware vSphere. Excluding this driver hinders the memory management capabilities of the virtual machine in a vSphere deployment. Thin Print Driver – Disable - Handled by Citrix printing in VDA. Paravirtual SCSI – Disable – Used in high I/O operation with SAN and mostly is applicable to Server VMs and not VDA. This driver is for PVSCSI adapters, which enhance the performance of some virtualized applications. Mouse Driver – Enable – Needs the mouse driver as it improves fixes in glitches with the mouse. File System Sync Driver – Disable - Driver for the synchronization of the file system within the virtual machine. For example, for preparation of backups. Only used if you have dedicated VMs and used agents in VMs to backup VMs. In VDA environments most common settings is profile management in which data is moved to a share as opposed to being local on VMs. Shared Folders – Disable – Directory for data exchange between host system and guest system. Currently only works with VMware Workstation and have seen it cause a lot of synchronization issues. SCSI Driver – Enable – Installs and improves BusLogic SCSI driver. If you use LSI Logic this driver is not required. SVGA Driver – Disable – We want to use the Citrix VGA adapter and not the VMware VGA. Use CTX 123952 (below) as work around if using Windows 7. Audio Driver – Enable – Needs audio driver to playback sound. This sound driver is required for all 64-bit Windows guest operating systems and 32-bit Windows Server 2003, Windows Server 2008, and Windows Vista guest operating systems if you use the virtual machine with VMware Server, Workstation, or Fusion. VMXNet NIC Driver – Enable - Network card driver for the VMXNet VMware network card. Improves network performance of the virtual machine, especially in gigabit environments. Furthermore the CPU…

Power and Capacity Management, a bit further 2 Comments

Power and Capacity Management is a great feature for XenApp, I use it more and more for Activlan customers in new implementation we do. Last week I had to find how to automate a workload and server capacity reporting by email. To remind you what is Power and Capacity Management here is a short explanation : Citrix XenApp Power and Capacity Management can help reduce power consumption and manage XenApp server capacity by dynamically scaling up or scaling down the number of online XenApp servers. Consolidating sessions onto fewer online servers improves server utilization, helps minimize power consumption, and helps provide sufficient capacity to handle server loads. As users log on to the system and reduce the idle capacity (the amount of capacity available for additional sessions), other servers in the workload are powered up. As users log off and idle capacity increases, idle servers are powered down. This helps optimize capacity for XenApp workloads. Scheduling provides an automated approach. An administrator defines specific times for powering on and powering off workloads. For example, a schedule powers on servers at 8 in the morning and powers them down at 7 in the evening, from Monday through Friday. The administrator can manually override capacity and schedule settings to accommodate unexpected demand. Load consolidation and power management operate in unison; load consolidation ensures sessions are not spread across online servers, which provides a better opportunity to power off excess servers later, using power management. Use Power and Capacity Management to observe and record utilization and capacity levels. Console monitoring and report generation provide valuable information, even if you do not enable power management and load consolidation. Power and Capacity Management respects all configured XenApp server settings, farm settings, and policies. This is my lab console : I had to figure out how to generate report automatically with Citrix Power and Capacity Management, there is an option to generate report within the PCM console but nothing to send these report automatically by email. When you generate report through the console you can obtain pretty good graphs and table : These reports look good and this is exactly what I needed to generate. CPM is using SQL Reporting Services so it shouldn't be that hard to generate an email from these report. I'm not a SQL expert or whatever but I've done the following change to set two subscriptions. open a web browser and…

Today I got an annoying issue when I was trying to edit settings from a Virtual Machine. It happens after I converted a template to a VM to make to change but every time I tried to edit the VM I got this error message : Error:The server fault 'SystemError' had no message. Error Stack Call "PropertyCollector.RetrieveContents" for object "propertyCollector" on vCenter Server "xxxxxxx.domain.local" failed. Not very nice message and not very "understandable" for me... Anyway, I needed to edit these settings and to do so, you can follow the next steps. Use it at your own risk ! First I removed the VM from the inventory, right click on the VM and chose "Remove from Inventory" Then, browse the datastore where VM files are stored and I right clicked on the .vmx file To add back into the inventory by following the regular wizard. At the end I've been able to edit the VM settings. Resources : VMDude (Frédéric Martin) made a Powercli module to resolve this issue : link vmware KB : link

Part 1/3 Synergy Barcelona 2011 – Personal Cloud 1/3 Part 2/3 Synergy Barcelona 2011 – Private Cloud 2/3 Part 3/3 Synergy Barcelona 2011 – Public Cloud 3/3 Public Cloud The last cloud of 3 (Personal Cloud, Private Cloud and Public Cloud) has been announced to be used in a very easy way, the same way as the creation of a GMail or a Hotmail email account. The way to make this easy connection available is Citrix CloudBridge, this product allow you to connect your datacenter to any cloud with full transparency, security and performance. Citrix CloudBridge will run on network layer 2 and 3 to provide fast and secure IP transaction. The beta version will arrive soon, no more information for now. And then another new product (maybe more like a new NetScaler feature) Citrix NetScaler CloudConnectors will secure the connection all the way down to the client devices has been announced but no release date yet. About what we need to build a cloud, Mark Templeton underline we will soon need to all being ready to build, connect Cloud Infrastructures and Cloud Providers. Most of the enterprise are doing server virtualization ++ built for traditional enterprise apps & client-server compute including a traditional management, then enterprises will need to move on cloud platforms designed around big data, massive scale & next-gen cloud apps with an autonomic management and an open, value added stack. This is where Citrix CloudPortal will enter the game, a layer on to of CloudStack. Citrix vision for the future is 3 clouds, Personal Cloud to empower people, Private Cloud to aggregate and deliver apps and data, Public Cloud to build and connect infrastructures. The 3 PCs. Citrix clearly claims to be the number one partner you need to think when you want to cloudify you network, application, data and devices. And want to lead the new IT to impact the business needs. This is it, I had to live my Synergy remotely from Paris, and this are all the information I could get from Synergy Live and Twitter. Next step will be to digest, analyze and put everything together. I think we have enough new material to play until next Synergy. Part 1/3 Synergy Barcelona 2011 – Personal Cloud 1/3 Part 2/3 Synergy Barcelona 2011 – Private Cloud 2/3 Part 3/3 Synergy Barcelona 2011 – Public Cloud 3/3

In a new mission, I had to learn a new environment based on Citrix XenDesktop 4, Provisioning Services 5.6 and vmware vSphere 4.1. This week, I had a weird issue, I didn't change anything, I just didn't understood why suddenly VMs stopped to be available, in fact VMs were available but for some reason, it was impossible for everyone to access it through the Web Interface. VMs were working well XenDesktop brokers were fine Web Interface was ok Citrix License Server was up and running with correct license vmware vSphere was ok as well, VMs were running without any problem on it On the Web Interface, the following message was display while trying to launch a XenDesktop virtual desktop : "xxxxx is currently unavailable. try reconnecting and, if the problem persists, contact your administrator." On the DDC, XenDesktop Desktop Delivery Controller, I found event logs with ID 1301, source : Citrix Desktop Delivery Controller, with the following description : "The delivery controller failed to broker a connection for user xxxxx to desktop group yyyyy. The delivery controller cannot find any available virtual desktops. Please add more virtual desktops to the desktops group. If the problem is due to existing virtual desktops not becoming available, refer to Citrix Knowledge Base article CTX117248 for further information." It look like a communication problem between XenDesktop DDCs and vmware Virtual Center, so I checked every component, DDCs, Virtual Center.... I found nothing really relevant. So the next step was to enable extended logs on the DDC side, after a short search on Citrix website I found how to do do with CTX117452. I got a lot of logs, but after one day scratching my head to try to understand why without changing anything I had such behavior, I just had bunch of logs but I was missing something... Here is a short part of the pool_log.log file : I also took a log in the virtual desktops pool properties to check if everything was alright... It wasn't :   All the VMs within the Citrix Delivery Service Console were disassociated with Active Directory and a message confirm I had communication problem between vmware Virtual Center and Citrix XenDesktop : "Virtual machines could not be retrieved from the hosting infrastructure" and then a pop-up saying : "Error occurred whilst validating the list of virtual desktops. For more information about each error, hover the mouse over…