Whilst doing some housekeeping for a client recentlyI discovered that the SCCM inboxes were littered with bad mif files. Hmmm time to do some investigative work.
Bad MIF files occur in the following situations:
Each mif file can be opened in Notepad and I noticed that mif files being created in the C:\Program Files\Microsoft Configuration Manager\inboxes\auth\dataldr.box\BADMIFS\MajorMismatch folder were all coming from VDI devices and that the physicals were not generating the files. Ok so I've narrowed the problem down a little.
If you open a mif file you can get the hostname of the affected device. So I then took at look at the dataldr.log on the site server. The dataldr log file processes Management Information Format (MIF) files and hardware inventory in the Configuration Manager database in case you were wondering.
Each affected device was reporting the following warnings:
Ok so I thought there must be something wrong with the original installation of the client on the VDI master image if only virtual machines were affected. I cast my mind back to the original installation where I'd followed advice from The Citrix Blog.
'When you create cloned/streamed machines from that master image, the SCCM agent will automatically generate and store machine IDs that persist for the life of the VM. Your virtual desktops will register and behave exactly like their physical counterparts. One record per machine and that machine will continue to use the same ID across reboots. '
Great - set it and forget it - welcome news to the IT admin. Unfortunately this is not the case and the bad mifs are being generated because of this approach.
So how to fix.
It's simple but adds some extra steps to prior your VDI master image and you'll need to do this every time you update.
At this point shut down the master image and create your snapshot that will be deployed to end devices.
Note that I had to uninstall and reinstall the client the first time on my master image prior to running the steps above. I was then able to update my master image from then on with the steps outlined above.
Now when I deploy out the VDI devices in the estate they are no longer reporting bad mifs. One downside to this is that the WMI changes force the VDI's to run a full inventory at start up but I'm happy to live with this until there is a permanent fix to Citrix's 'Set it and Forgot it' option. You can see this in the clients InventoryAgent.log file.
Investigation over and my attempt to house keep on the server is going to plan. Also time to update my 'Implementing SCCM in a XenDesktop MCS VDI environment' post to reflect the change.