Remko Weijnen's Blog (Remko's Blog)

About Virtualization, VDI, SBC, Application Compatibility and anything else I feel like


19,840 views

I was deploying virtualized Citrix XenApp Servers on HP BL460c G6 servers and somehow the storage (direct attached) responded very slowly.

I had expected reduced performance (see my earlier post) since I didn’t have the  Battery Backed Write Cache module installed.
I did order them but had to start deployment before they arrived.

I did not however expect such an extreme bad performance. Deployment took ages or sometimes failed completely and when logging in to a VM it responded very sluggish.

Disk Latency

I looked in the vSphere console what the Disk Latency was. Latency under 10ms is usually considered good while a latency between 10 and 20ms is a potential performance problem.

I was shocked to notice that the Disk Latency was much higher with peaks toward 2.000 ms (2 seconds!):

DiskLatency

 

Read the rest of this entry »

  • 2 Comments
  • Filed under: Citrix, VMWare
  • 2,012 views

    I am currently deploying 64 Citrix XenApp servers with Altiris. The deployment consists of an OS Image, OS Configuration and finally Citrix XenApp and Applications.

    In the OS Configuration part the IP configuration needs to be applied and I decided to do this with a database.

    The database consists of 2 tables; one table with the per host settings and one table with the global settings (such as DNS).

    In the Altiris job both tables are read from an embedded VBScript and assigned to the NIC.

    Database configuration

    I created a database (SQL Server) called IPManagement with 2 tables:

    image

     

    Read the rest of this entry »

    4,569 views

    I ran into an error when I was upgrading hardware on an HP BL460c G6 Blade.

    After placing 2 new (larger) hard drives the Array Configuration would hang after saving the configuration (It just kept blinking “Saving Configuration.” forever.

    image

    After a reset the Smart Array Controller (P410) halted a very long time on Initializing and eventually failed.

    I retried the whole procedure with the same result but this time the controller reported: “previous lockup code 0xAB”.

    My next step would be a firmware update and this kb article from HP confirms that it was indeed a firmware issue: HP Serial Smart Array Controllers P410/411/212/712m/410i – May Hang with Lockup Error Code 0XAB Configured in Zero Memory Mode.

    This kb article also tells me why I didn’t have this error on another blade: that one had the Battery Backed Write Cache module.

  • 0 Comments
  • Filed under: General
  • 2,186 views

    On my blog I offer visitors the options to rate the articles I write using either thumbs up/down or a 1-10 star rating.

    I am interested in what content my readers like so these ratings (and of course comments you leave) indicate what kind of articles you like and which you don’t.

    However some people feel the need to abuse this, take a look at this:

    image

     

    Read the rest of this entry »

    6,727 views

    My blog has been down for a short period, if you tried to open WordPress would redirect to wp-admin.install.php and you would see this message:

    image

    I suspected it was a database problem so I went to phpMyAdmin and did a check on all tables:

    image

    Even though MySQL reported all tables to be okay, I tried to repair the wp_options table since this is a common issue with WordPress and indeed this fixed the problem!

    10,858 views

    So a few days ago I got new memory for a development box – an upgrade from 4 to 6 GiB (later on even 8 GiB). Much appreciated as you can imagine. After dismissing the BIOS warning about changed amount of memory (oh really? :mrgreen:), I booted into Ubuntu and happily looked at the memory stats. After that I booted into Windows (a Windows 2003 Server Standard, but I’ll just use Windows from here on) and was disappointed to see only 4 GiB available. This is apparently a limitation specific to the Standard edition.

    After some pouting, I decided to take action. Of course one of my first thoughts was to ask Remko, because he had done similar things for some other Windows versions. He pointed me to MmInitSystem, which was not an immediate hit, though. I loaded my kernel .exe into a disassembler to look at the details, but MmInitSystem was a lengthy and rather boring function. However, the advice was good and got me a good bit closer, especially when Remko also mentioned the use of ExVerifySuite in the logic that would set the limits. So I brought up the references to ExVerifySuite and – surprise surprise – only seven other functions used it and out of these only one was not recognized by name from the exports and debug symbols. And since the inspection of that function (at 0x00615FB0 in my kernel) proved that it was being called from MmInitSystem, this was an immediate hit.

     

    Read the rest of this entry »

    4,998 views

    A missing feature in the dUP2 Patch Generator has always been to correct the PE Checksum.

    After all if you write a clever search&replace patch but have to include the PE Checksum it doesn’t make any sense.

    But then I saw there’s a beta version of dUP2 that supports ome new features one of them being a fix checksum option!

    The beta (v2.22) can be found on diablo2oo2’s site: http://diablo2oo2.di.funpic.de/stuff/dup2.beta.rar

    image

  • 1 Comment
  • Filed under: General
  • 8,497 views

    Altiris has built in support for Sysprep when creating or distributing images.

    The documentation doesn’t mention some things that are worth knowing so I will try to address them in this post.

    Sysprep support can be added to Altiris during the install where it will ask you for the Sysprep install files (deploy.cab) per selected OS.

    If you didn’t add Sysprep during install you can copy deploy.cab to one of subfolders in the Sysprep folder. Eg for 32 bit Windows 2003 deploy.cab goes to Sysprep\DotNet\x86:

    image

    As I wrote earlier in this post it’s very important to use the correct Sysprep version as each OS has it’s own version.

    Read the rest of this entry »

  • 0 Comments
  • Filed under: Altiris
  • 10,058 views

    After compiling the VMWare VMXNET3 Driver for Linux I needed a driver for the Windows PE Image as well.

    Compared to what I needed to do for Linux this was a breeze!

    First we need the VMWare tools again so I grabbed windows.iso from /vmimages/tools-isomages.

    The driver files are in a cab file, VMXNET3.cab, extract this cab file somewhere and open the Altiris PXE Configuration tool.

    Select the Windows PE Entry and click Edit:image

    Then click Edit Boot Image:
    image

     

    Read the rest of this entry »

  • 1 Comment
  • Filed under: Altiris, VMWare
  • 4,608 views

    In the previous part we have already setup the Ubuntu Virtual Machine and we did a build of the kernel image.

    So now we can finally compile the driver, in my case I needed a driver for VMWare’s VMXNET3 Network Card.

    VMXNET3 is VMWare’s paravirtualized network driver and offers better performance with less host processing power compared to the default e1000 driver.

    First we need the source for the driver, we can obtain this from the VMWare Tools either from a running Linux VM or like I did by transferring the file linux.iso from /vmimages/tools-isomages from the vSphere server.

    In the iso file is a single file, VMWARETO.TGZ and after unpacking we get a folder called vmware-tools-distrib.

    In vmware-tools-distrib/lib/modules/source we find the vmxnet3.tar file that contains our sources. Copy the tar to the Virtual Machine and unpack it, then start a Terminal and cd to the directory where you unpacked the tar.

    The first time I attempted a compile I received an error indicating that the file autoconf.h could not be found. After I found this bug report I was able to fix this by creating a link:

    We can compile the driver with the make command, referencing the kernel image we created earlier:

    Read the rest of this entry »

    Donate


    Blogroll


    Categories


    Archives