Posts Tagged ‘windows’

Optimise your VDI image with a new OS optimisation tool

July 31st, 2013 No comments

VMware has released a new Fling called the VMware OS Optimization Tool for Windows 7.

One of my bugbears with the whole VDI industry is the I in “VDI”, Virtual Desktop Infrastructure. Many people often focus too much time and effort designing the infrastructure part of delivering virtual desktops: hypervisors, clusters, brokers, security, storage, networks, streaming, provisioning etc. and don’t pay enough attention to the actual OS build.

The OS build is absolutely critical for the success of any VDI project. If you don’t optimise your OS image you will use more CPU, memory and critically storage IOPS than you actually need which can ramp up your costs or cause your whole project to fail.


VMware has released the VMware OS Optimization Tool to assist with just this for Windows 7 desktops and VMware Horizon View. There are customisable templates to enable or Windows services and features to ensure you have optimum performance.

There is also a Remote OS Optimization Tool which allows you to connect to a remote Horizon View broker to optimise images.

Although this tool is specifically written for VMware View and uses VMware’s recommendations and best practices, the OS settings are as applicable when using Citrix XenDesktop or other brokers or in fact when running any Windows 7 workstation even without a broker when your users connect using just RDC.

If you are wanting to get more information on your current Windows desktop (not only limited to VDI) performance, I would also suggest looking at Helge Klein’s fantastic UberAgent for Splunk which gives you all sorts of information to help find out what’s taking too long.

To really ensure you cover all bases I would suggest using this new VMware tool in conjunction with other scripts and tools:

VDI Optimizer

VMware Horizon View Optimization Guide for Windows 7 and Windows 8

IT Blood Pressure’s EUC Tips

Quest vWorkspace Desktop Optimizer

Citrix Windows 7 Optimization Guide for Desktop Virtualization

Project VRC White Papers (free registration required)

How to Optimize XenDesktop Machines

Best Practice: Group Policy for Virtual Desktops Infrastructure (VDI)

VDI Group Policy Optimisation Template and Script

Upgrading Windows 2008 R2 editions from the command line

March 20th, 2013 No comments

windows-2008-r2-logoI had always thought you couldn’t update Windows Server editions from one to another without a reinstall as allegedly the base software wasn’t the same even though we all knew it was really just a file or two or registry key or two that needed to be changed.

This in fact wasn’t possible until Windows Server 2008 / Windows Vista SP1 which introduced Windows Edition-Servicing Command-Line Options using a built-in utility called the Deployment Image Servicing and Management (DISM) tool which doesn’t require any media to upgrade the edition and just needs a reboot.

I’ve recently had to do this with Windows 2008 R2.

You can’t use this on DCs, can only do upgrades, not downgrades and the supported Windows 2008 R2 upgrade paths are:

  • Windows Server 2008 R2 Standard -> Windows Server 2008 R2 Enterprise -> Windows Server 2008 R2 Datacenter
  • Windows Server 2008 R2 Standard Server Core -> Windows Server 2008 R2 Enterprise Server Core -> Windows Server 2008 R2 Datacenter Server Core
  • Windows Server 2008 R2 Foundation -> Windows Server 2008 R2 Standard

Read more…

Categories: Windows Tags:

VMworld Europe Independent #vBrownBag Tech Talk Sessions

October 12th, 2012 2 comments

The official VMworld Barcelona session catalogue was huge and full of VMware sanctioned content. However running in parallel there was a fantastic community run fringe event.

The #vBrownBag guys stepped up to the plate and spent a lot of personal time to put together a whole series of short Tech Talks where anyone with something to say could have the spotlight.

Now, this wasn’t some soap box in the corner of a room with some nutters yelling into a megaphone but a super organised, livestreamed sponsored event with some serious content.

There were VMware employees and engineers talking about how you can run some seriously awesome yet unsupported VMware configurations as well as some seriously brainy and very highly regarded community members who have a passion for virtualisation and in their own time put together presentations that they thought the VMware community would be interested in.

Luckily these were all recorded so you can take some time out and see for yourself what the VMware community has to contribute.

Read more…

How slim is your OS build? VDI’s biggest loser!

December 1st, 2010 3 comments

Going virtual is all about sharing resources. You are no longer constrained by one server or workstation running on one physical piece of hardware. The benefit is less physical kit to look after and better utilisation of resources but the detriment is when you share, you need to share nicely. In a shared environment one VM can be greedy and take more than its fair share and your other VMs suffer.

It’s not just sharing nicely that you need to consider but also building your VMs so they need less so there’s more to go around.

VDI is all about maximising the use of your physical hardware. To be cost effective (if you can with VDI!), you want to run as many workstations on a physical host as you can without sacrificing individual VM performance.

So, if your VMs are greedy with what they need you are going to be paying more for hardware. Wasting resources on physical workstations may not cost that much more but move your workstation into your datacenter and then see how much money you will be wasting.

Read more…

Windows 7 plays nicely with AMD to Intel conversion

November 9th, 2010 No comments

My home PC died an unceremonious death last week.  No fanfare, nothing dramatic…it just wouldn’t boot.  I went through the usual troubleshooting.  BIOS would load, it looked like everything was working, it could see all drives.  When I had a bootable DVD in the drive it asked nicely if I wanted to boot from DVD.  When bypassing this is just stopped with a lovely little blinking curser in the top left of the screen.

Must be hard disk I thought so spent some time putting an old one in and trying a restore of an image backup I take nightly of my OS drive (How Enterprise IT makes it into your home to have ultimate recovery!)

Wouldn’t see the old hard disk.  Booted off two different Ubuntu CDs which would go through initial startup and hang.  Ran Memcheck….memory all passed. Didn’t think it could be CPU as that generally doesn’t partially fail.

I tried reseating everything, pulling out all additional PCI cards, etc.  Landed up trying with only one of my two DVD drives (1 x SATA and 1 x IDE) connected and still Ubuntu wouldn’t boot.

So, it dawned that it must be a partially dead motherboard, a trusty 4 year old AMD Asus board that has served me well.  I went straight onto Ebay to see if I could get another as a direct replacement and found plenty of faulty ones for sale and a refurbished one for well over £100.

So, I decided to bite the bullet and go for an upgrade.

I decided on an Intel Core i7 Quad Core 950 CPU with 12Gb RAM and a Gigabyte Motherboard, perfect for running all those lab virtual machines.

Everything was delivered and I started the task of swapping everything over. It took quite a while actually to do the physical changing as the heatsink instructions were pretty bad with small black and white grainy photographs trying to show which way round the fan was meant to go.

I was even very keen and plugged in all additional riser cards and my USB devices and hit the power button.  My new PC booted but wouldn’t boot off the boot drive.  That was easily fixed by going into the BIOS and selected the boot device.  Next attempt and it started! I logged on and waited a few minutes for devices to be recognised and drivers installed, rebooted again and nearly everything was working.  I only had to install the Nic drivers separately. 

I do need to reactivate Windows but I’ve been given three days to comply.  I always wait until the last minute for this kind of thing just in case something does go wrong and I need to backtrack.

I must say at this point I was actually particularly impressed.  First of all with myself for getting everything correctly into the case and plugged together (I managed to scrape my hand on the case at some point…I never thought PC building was a blood sport!)

Most impressive however was that Windows 7 actually booted and didn’t have an issue having AMD ripped out from underneath it and Intel put in its place. Saying that I shouldn’t really be that impressed, I should have expected this to just work. Doesn’t windows CPU support rest with the Hard Abstraction Layer (HAL). As Abstraction is in the name you would expect there to be no issues but this certainly hasn’t been the case with previous versions of Windows when I’ve had to do this.

I then actually did some retrograde research at what other people suggest when doing the same thing and the overwhelming response from some very experienced prolific posters on hardware forums was to reinstall your OS to support a new CPU

I’m very happy to report this is not required now with Windows 7.

So kudos to Microsoft for getting the abstration thing working a little better. One of the reasons to go virtual is to have this hypervisor layer between the OS and your hardware so you don’t have to worry about changing the underlying physical kit to a new model / supplier / version, seems like the OS is growing up as well to be able to handle this all by itself.

I must say I am very happy to see this in Task Manager after a week of no PC!

Categories: Windows Tags: ,

Output Powershell console to a file using Transcript

September 22nd, 2010 1 comment

Sometimes it’s the simple things that really make a difference.

Often when writing any script you have to decide whether to output stuff to the screen or to a file.

What if you need to do both?

Normally you create additional scripting lines or a function to output the response from a cmdlet to a log file which you can review later.

Well I stumbled by accident across a very simple way to avoid this…just use the cmdlets Start-Transcript and Stop-Transcript which will output anything written to the screen into a text file.

$TranscriptFile = "c:\myoutput.log"
Start-Transcript -Path $TranscriptFile

Write-Host "I'm Transcripting!"

Connect-VIServer myvcserver


Invoke-Item $TranscriptFile
Categories: Powershell Tags: ,

Getting VM Time Zone settings with PowerCLI and WMI

August 23rd, 2010 No comments

VM performance troubleshooting is something every VM Admin needs to do.

Often these can be related to agents running within a VM and often these are set to run at a particular local time.

VDI deployments often have people from different time zones working different shifts connecting to VMs in a central site with the idea that a particular agent task will always run out of hours from when people work. This would obviously not happen if the guest local time zone was not set correctly.

PowerCLI to the rescue and a one-liner that connects to a particular set of VMs and uses WMI to find out what time zone is set.

Get-VM -Location (Get-Folder "Workstations-Call Center") | Where { $_.PowerState -eq "PoweredOn" } | select Name, @{ Name="Time Zone"; Expression={(Get-WmiObject -Class win32_TimeZone -Comp $_.Guest.HostName).Caption}}
Categories: PowerCLI, Windows Tags: , ,

Pimping your Powershell Profile

August 11th, 2010 1 comment

If you work on multiple systems and need to use powershell to manage them but they all have their own separate installation it can drive you mad having so many different console shortcuts to launch.

I have 3 at the moment, VMware vSphere PowerCLI, Citrix XenServer PowerShell SnapIn and NetApp’s Data ONTAP PowerShell Toolkit.

Each one installs slightly differently and then runs separately which is a pain.

VMware vSphere PowerCLI installs a PSSnapin and creates this shortcut:

C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -psc “C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\vim.psc1” -noe -c “. \”C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-VIToolkitEnvironment.ps1\””

Citrix XenServer PowerShell SnapIn installs a PSSnapin and creates this shortcut:

"C:\Program Files\Citrix\XenServerPSSnapIn\XenServerPSSnapIn.bat"

which runs

-PSConsoleFile XenServerPSSnapIn.psc1 -Noexit -Nologo

NetApp’s Data ONTAP PowerShell Toolkit requires you to copy files to the Module Path and then use Import-Module to load the snap-in.

So, Profiles to the rescue……powershell runs a startup script called your profile which is just a text file really.

What I really would like is to have a single profile that launches my session on some computers and starts all 3 snap-ins if they are installed.

That’s not a big ask, is it?

Well, lets start with setting up the profile on this particular computer to launch all 3 snap-ins but be clever and allow it to also be run from anywhere.

Read more…

Categories: Powershell Tags: ,