dwight-frustratedIf you’ve ever tried to tackle all the firmware on an m1000e/VRTX and its’ respective blades you probably know what a hot mess it can be – using various different methods to update different pieces of hardware, some requiring a Live CD, some requiring a boot-able USB key, some requiring you to extract an EXE and find secret payload files,  and some being installed through the GUI.  It’s a full time job just to keep track of all the different pieces of firmware and how they are installed.  Now in order to help minimize this Dell has introduced the Dell Repository Manager – an online repository that will fetch those updates that you need and serve them up to your CMC controllers for installation.  The CMC can then go and fetch these firmware updates from DRM and apply them in an ordered, staged, and automated fashion!

Oh, it sounds so picture perfect doesn’t it!  The fact of the matter is though if you have ever tried to work with any of these update/firmware management products, be it Dell, HP or anyone else you know that they are not as intuitive and easy to use as they advertise – that and they are constantly being updated and best practices are constantly changing!  It’s a moving target for sure!  That said taking the time to set it up properly still far outweighs the pain of having to hit the Dell support site, pulling down individual firmware packages and processing them manually – so why not spend the time now which will hopefully save you some time later – I’m lazy by nature, and have followed the following steps to make it work for me!

Install and Configure Dell Repository Manager

First up we need to setup the Dell Repository Manager (DRM) – you should be able to find the downloadable msi under the Systems Management portion of any of your supported Dell products on their driver download page.  The install itself requires just a few clicks of the ‘Next’ Smile

There is little configuration to do in order to get the DRM functional.  Basically we just need to sync the Dell online database with our local install of DRM.  To do so, select ‘Source->View Dell Online Catalog’.  In the dialog box shown simply click ‘Yes’ to update your database.

repo0

After a few minutes of ‘Reading Catalog’ and ‘Writing data to database’ we should be good to go to continue with the creation of our repository.

Creating your m1000e repository

Now it is time to create a new repository which will pull down the updates for the hardware existing within our m1000e.  In order to do this we will need to export the inventory of our CMC to a file to be used to import into the DRM.  To do this head to the Update tab within the CMC interface (Chassis Overview->Server Overview->Update).  Select ‘Update from Network Share’ under Chose Update Type and then click ‘Save Inventory Report’.

networkshareinv

Doing this should save a file (Inventory.xml) to your local harddrive – this file contains the inventory of the blades and what is inside of them in terms of hardware and needs to be copied over to your DRM server.  Now we can proceed to create a new repository based off of our Inventory.xml file as shown below…

repo1

Within DRM select Repository->New->Dell Modular Chassis Inventory.  Give your repository a proper name and description.

repo2

Select ‘Dell Online Catalog as our base repository.

repo3

Point to the location where you have copied the Inventory.xml file and ensure that ‘Latest Updates for all devices’ is selected.

repo4[4]

On the Summary screen ensure that all of the OS components are selected.  This just ensures that no matter what OS we have on the blades (Linux, Windows, ESXi) we will get the proper firmware packages needed to deploy.

After a few minutes we should be redirected back to our main screen of DRM with the focus on our newly created repository.  The next thing we need to do is to export this repository into some sort of deployable format that can be consumed by our servers and chassis.  To do so, make sure that all of the bundles listed are checked and select ‘Create Deployment Tools’ in the top right hand corner.

repo5

Here is where we determine what type of deployement tool to create – you can see we can create a bootable ISO, a SUU, etc.  Since we will be installing from a network share we need to create a catalog, so select ‘Create Custom Catalog and Save Updates’ and continue.

repo6

Provide a path as to where to store your repository, catalog, and updates and be sure to select to generate the ‘Full Repository’ as we will need both the catalog.xml file and the updates themselves – and ‘Next’.

Once completed the job gets submitted into the Job Queue and can take quite some time as it is pulling down all of the updates.  You can monitor this by browsing the queue at the bottom of the screen.  When it’s all said and done you should see a number of folders and the catalog.xml file in your specified location   Just a note here, if you don’t see Catalog.xml I’ve had a few instances where I needed to re-run this process, selecting only to export the catalog file – then, re-running the complete process again selecting the full repository – told you it was a hot mess!  Anyways, after you are done go ahead and setup a windows share somewhere on this system – doesn’t matter where it is, so long as you can browse to this folder using it.

Setup the CMC

At this point we are through with the DRM and need to go back to our CMC in order to create our network share.  This is done in the same location that we exported our inventory (Server Overview->Update), selecting ‘Update from Network Share’ as our Update Type and ‘Edit’ to setup our connection to our newly created CIFS share.

repo7

Enter in the information that pertains to your share using ‘CIFS’ as the protocol.  You will need the IP address of your DRM server, the share name that you have setup, any further directories underneath the share if applicable, the name of the catalog (always Catalog.xml unless you specified otherwise) as well as the proper domain and credentials to connect.  To test your connection to the server select ‘Apply’ and then ‘Test Network Connection’  Once successful click ‘Back to return to our update screen.

repo8

At this point we should be able to simply click ‘Check for Updates’ and have the CMC query our DRM for any updates available and display them if so.

repo9

And voila – you can now select whether you would like to reboot now to apply updates or wait until the next reboot and kick things off by clicking ‘Update’!  Easy peasy right?  Not really – but at least this should help save some time….

A few troubleshooting tips to watch for

No Server is Ready for Update message

If this is displayed next to your Network Share information than the first thing I would check is the version of your iDRAC on your blades.  In order to update from a network share your iDRAC must be at version 1.5 or higher, so if you are lower update it!  As for how to do that, the easiest way I’ve found to do so on a blade running ESXi is to enter the individual iDRAC web gui for a given blade, and browse to the Update section under iDRAC Settings.  This will look for a file and it’s always a crap shoot as to where that file is or which package to download depending on the current version of iDRAC you are on.  Since this most likely an older version of iDRAC (below 1.5) then you will most likely need the .d7 file.  Download the EXE for your server labeled iDRAC with Lifecycle controller and extract the files within it to a folder – inside this folder you should see a payload directory.  The file within that (firmimg.d7) is the file you will need to upload in order to update your iDRAC.  After updating there will be a brief iDRAC outage as it reloads – when back up try ‘Checking for updates’ again on the CMC and it should now work.

Cannot check for updates message

This message is displayed when there is no catalog.xml file located in your exported CIFS repository.  Check to see if it is there – if it isn’t, as mentioned earlier, re-run the Create Deployment Tools process and point to the same location, selecting Catalog file only.  Once that has completed start the Create Deployment Toools process again pointing to the same location, selecting Full Repository.  Check to make sure the timestamp on your catalog.xml file is updated.

Caution icon next to repository progress

This generally means that you have some updates that require confirmation to download.  Simply double click the job in the job queue, click ‘Confirmation Needed’, and click ‘Accept’.

Any other possible issue and error

Call Dell Smile