Blog
Citrix Updates Citrix Receiver to Support CloudGateway and Substantially Improve End User Performance
Citrix will be releasing updates to Receiver to broaden and enrich the end user experience on a variety of endpoints. Updates will include Receiver mobile clients for Android and iOS as well as Receiver for Windows (3.1).
STOP error 0x0000DEAD on XenServer 6
Since we upgraded our LAB environment from XenServer 5.6 to XenServer 6, all our Windows Server 2008 R2 virtual machines are regulary crashing, and showing BSOD's with stop error 0x0000DEAD. Also, the event viewers on all servers were showing events similar to the one below:

When going through the memory dumps I noticed the issue was related to the network Citrix PV Ethernet driver, more specifically xenvif.sys, installed by XenServer Tools from XenServer 6. When an interface using this driver receives a rogue TCP packet, where the TCP header contains options but the IP packet length is too short to accommodate them, the system crashes. The fact that these packages exist suggest something else on the network is misbehaving.
Citrix recognizes this problem, but it will only be fixed in the next version of XenServer, 6.0.2, which will be released somewhere in March. Luckily there are two workarounds for this problem:
- Install XenServer Tools from XenServer 5.6
- Disable 'Large Receive Offload' on the driver properties for all interfaces using the Citrix PV Ethernet driver
Update: This powershell script disables Large Receive Offload for all interfaces using the Citrix PV Ethernet driver:
$root = 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}'
$items = Get-ChildItem -Path Registry::$Root -Name
Foreach ($item in $items) {
if ($item -ne "Properties") {
$path = $root + "\" + $item
$DriverDesc = Get-ItemProperty -Path Registry::$path | Select-Object -expandproperty DriverDesc
if ($DriverDesc -eq "Citrix PV Ethernet Adapter") {
Set-ItemProperty -path Registry::$path -Name LROIPv4 -Value 0
}
}
}
Best Practices for Virtualizing Exchange Server 2010 with Windows Server 2008 R2 Hyper V
The purpose of this paper is to provide guidance and best practices for deploying Microsoft® Exchange Server 2010 in a virtualized environment with Windows Server® 2008 R2 Hyper V™ technology. This paper has been carefully composed to be relevant to organizations of any size.
XenServer 6 Auto-Start VMs
In XenServer 6, Citrix made the decision to not include the option anymore to auto-start VM's when the XenServer host boots up. The reason is that this feature interfered with the HA and Failover capabilities, but nonetheless it was a nice feature for situations where only one XenServer host is used.
In XenServer 6 it is possible to auto-start VM's but it requires enabling the auto-start feature at the pool level and on each individual VM by using the CLI which is not very user friendly. Therefore, we have created a script that runs during startup of the host and will start any VM that has been tagged with the "autostart" tag. This allows for easy administration using XenCenter.
In order to install the script, copy the contents below to the end of the /etc/rc.d/rc.local file on the XenServer host, using for example WinSCP. Afterwards just tag the VM's you would want to auto-start using the tag "autostart". The VM's will be started with a 20 second delay between each VM.
# AutoStart VM's that are tagged with autostart tag
# Script created by Raido Consultants - http://www.raido.be
TAG="autostart" # helper function
function xe_param()
{
PARAM=$1
while read DATA; do
LINE=$(echo $DATA | egrep "$PARAM")
if [ $? -eq 0 ]; then
echo "$LINE" | awk 'BEGIN{FS=": "}{print $2}'
fi
done
} # Get all VMs
sleep 20
VMS=$(xe vm-list is-control-domain=false | xe_param uuid) for VM in $VMS; do
echo "Raido AutoStart Script : Checking VM $VM"
VM_TAGS="$(xe vm-param-get uuid=$VM param-name=tags)" if [[ $VM_TAGS == *$TAG* ]]
then
echo "starting VM $VM"
sleep 20
xe vm-start uuid=$VM
fi done# AutoStart Vapp's that have autostart in description
# Script created by Raido Consultants - http://www.raido.be
TAG="autostart"
# helper function
function xe_param()
{
PARAM=$1
while read DATA; do
LINE=$(echo $DATA | egrep "$PARAM")
if [ $? -eq 0 ]; then
echo "$LINE" | awk 'BEGIN{FS=": "}{print $2}'
fi
done
} # Get all Applicances
sleep 20
VAPPS=$(xe appliance-list | xe_param uuid) for VAPP in $VAPPS; do
echo "Raido AutoStart : Checking vApp $VAPP"
VAPP_TAGS="$(xe appliance-param-get uuid=$VAPP param-name=name-description)" if [[ $VAPP_TAGS == *$TAG* ]]
then
echo "starting vApp $VAPP"
xe appliance-start uuid=$VAPP
sleep 20
fi
done
Resizing a system or data disk in a virtual machine
I get a lot of questions of students and customers about resizing a virtual disk. This is the reason for this blog. The following procedure will guide you step by step through the process of resizing (increasing) a disk of a virtual machine. Before you make virtual hardware changes be sure you have taken a full backup of the virtual machine.
NOTE: If you do not want any troubles only increase the disk size. Decreasing can cause loss of data.
Flow
Increase Disk using diskpart
Step 1: Edit the virtual machine settings and increase the size of the disk (VMDK).

Step 2: Open the console of this virtual machine and start a command prompt.
Step 3: Start diskpart and execute following steps.
list volume à this gives you a list of the available partitions
select volume x à select the partition number you want to increase
extend à this will add the empty disk space into the partition. Now the partition has increased in size.
NOTE: On Windows 2008 this can be done via the Device Manager / Storage, but I have seen some weird things like showing incorrect partition sizes.
Increase Disk using Third Party tool
Since I have some great experiences with the Acronis Disk Director tool I will explain the steps to increase a disk using this tool. Another tool that can be used is e.g. GParted.
Step 1: Be sure you have a boot image (ISO) of the Acronis Disk Director Tool that supports your guest OS.
Step 2: Boot your virtual machine using the boot image ISO. Use the ESC button during booting your virtual machine to activate the "one time boo menu"

Step 3: Select the partition you want to increase and right mouse click on it. Then select "Resize Volume"

Step 4: Increase the disk space of the selected partitions by decreasing the unallocated space to 0

Step 5: After increasing the partition you have to commit the changes.

Step 6: Now you need to reboot your virtual machine after disconnecting the boot image.
SCCM and App-V integration on RDS: The File Type Association issue
When using SCCM 2007 to deploy App-V sequences to RDS servers, one of the major disadvantages is targeting: user-based targeting is not supported on RDS servers. This means every advertised App-V sequence will be accessible for every user. Offcourse shortcuts can be presented to users based on group membership, but File Type Associations are registered at machine level and apply to all users.
VMware Cloud Infrastructure & Management
Today, 12th of July VMware announced a new suite of products. Look here for news release.
In the near future I will blog about this new release in a sort of “How to” format to introduce the new features.
The suite consists out of following products.
VMware vCenter Site Recovery Manager 5.0
VMware vSphere Storage Appliance 1.0
vShield App 5.0 with Data Security
A new product most of the time means, a new set of licenses. VMware moved from 6 different licenses to 5, they removed the Advanced license. Lucky for the owners of this license (with a active subscription, they will be migrated to Enterprise. Look here for the license paper
Here a list of vSphere 5 introduction links
VMware Cloud Infrastructure: http://www.vmware.com/cloud-infrastructure/
The Console Blog: VMware Unveils vSphere 5 and the Cloud Infrastructure Suite
NTPRO: http://www.ntpro.nl/blog/
Kendrickcolemand: vCenter 5 - To Appliance or Not?, Using VMware AutoDeploy for ESXi
YellowBricks.com Live BLogging, vSphere 5.0 Clustering technical deepdive
UP2V: http://up2v.nl/
VmwareTips: VMware 2011 Mega Launch
Virtual Geek: Raising the Bar V = vSphere 5!
CRN VMware Adds Virtual Machine-Based Licensing In vSphere 5
vTexan: really cool things in vSphere5
VMware vCenter Error Call “PropertyCollector.RetrieveContents” for object “propertyCollector” on vCenter Server failed
A customer of us called me with a weird problem with a Template which was converted back to a Virtual Machine. See here the problem which occurs when the customer wanted to edit the settings of this VM.

The cause of this problem is that an ISO was mounted from a datastore which does not exist anymore.
To solve this problem, just connect to the ESX host where the VM is registered on. Edit the setting here and put the CDROM on “Client Device”.

Then check on which datastore the VM is located. Then unregister and register the VM again in the ESX host. Now you are able again to edit the setting of this VM via vCenter
Unable to remove VMware ESXi host in VMware vCenter
During a migration process from ESX to ESXi at a customer site we had a problem removing a server from the vCenter inventory.
We checked the permissions on this server and we saw that the user who wanted to remove the server was admin on datacenter level. Here the screen we got.

Knowing there is a PowerCLI command to remove a ESXi host from the vCenter, we walked that way with success.
I used this PowerCLI script to remove this server from the inventory after moving the server out of the cluster to the datacenter level.
Connect-VIServer vCenterServer
Remove-VMHost "HostThatCannotBeRemovedViaGui" –confirm:$false
Disconnect-VIServer –confirm:$false
Blocking PDF Printers on Xenapp
By Default, users connecting to a XenApp server will have their client printers automatically mapped using the citrix universal print driver. All client printers are mapped including any PDF printers the client has installed. This might give you unwanted network traffic as it is much slower to print to PDF on a client mapped printer compared to a PDF printer installed on the Xenapp server. Also we have seen issues at customers where those 'special' printers were mapped and giving problems, even crashing the print spooler.
The solution is to create a list of printer drivers that are blocked so that these printers are not created automatically in the session. This is the procedure to block these drivers:
Within Citrix Delivery Services console, create or edit a User policy. Within this policy navigate to Printing > Drivers > "Printer Driver mapping and compatibility" 
Edit the Printer mapping and compatibility and add the printer drivers you want to block. Use "Do Not Create" as the action.

Here is a list of common printer drivers you can block:
- Send To Microsoft OneNote Driver
- Microsoft Office Document Image Writer Driver
- pdfFactory 2
- Amyuni Document Converter 400
- Microsoft XPS Document Writer
- PDFCreator
- CutePDF Writer
- Send To Microsoft OneNote 2010 Driver
- ‹ Previous page
- 1
- 2
- Next page ›