Recently, I was working on a vSphere 4.1 upgrade to vSphere 5.5 and of course, first thing first; I had to update all the physical servers to the latest versions of BIOS, firmware, drivers…
At a first glance, this seems an easy procedure. I’m thinking to use the Dell iDrac console to update most of the stuff but I soon realized that I wasn’t able to update NIC firmware and BIOS through the iDrac.
When you go to the Dell Support web site to download the drivers for a specific model of server, you’ll realize that Dell is offering at least 4-5 different troubleshooting and updater utilities… Some of them are as big as 7.5GB ISO files! The problem with these utilities is that they are not really well documented and it takes a lot of effort to prepare and use them. Here are a couple of examples;
Dell Server Update Update Utility 7.4
“Server Update Utility ISO: Dell Server Updates includes Dell SUU, a one-to-one utility to update BIOS, firmware, and drivers to the latest version. SUU allows you to compare the current version of the components on the system to the version available on the media and allows you to choose the components for upgrade or downgrade. SUU ISO updates cannot be applied on systems running pure 64-bit operating system.”
As this file is a huge ISO file (7.5GB). You’ll need a double layer DVD to burn the ISO or a USB key and a utility to create a bootable usb from an ISO file. FYI, I ended up skipping this tool as I was never able to boot on the DVD…
Dell Support Live Image 2.0
“Support Live Image is a CentOS 6.2 image that packages a collection of utilities and diagnostic tools for Dell PowerEdge servers, Dell PowerEdge C servers, and Dell PowerVault storage Systems. It provides an environment for the tools to run to troubleshoot hardware-related issues and gather system configuration information. The results of the diagnostic tests and configuration information are sent to the technical support team to identify and resolve an issue.”
Basically, this is a live Linux CentOS distribution which lets you boot your servers with it and you can download the drivers and apply them through terminal if you know what you are doing in linux. I’ve already used this tool in the past and if your physical servers have access to an Internet connection when you boot with this tool, you’ll be able to update pretty much everything but manually.
Dell OpenManager Server Administrator 7.4
“Dell OpenManage Server Administrator (OMSA) is a software agent that provides a comprehensive, one-to-one systems management solution in two ways: from an integrated, Web browser-based graphical user interface (GUI) and from a command line interface (CLI) through the operating system.
OMSA is designed so that system administrators can manage server systems both locally and remotely on a network. It also interfaces with OpenManage Essentials (OME) console, which allows for monitoring of the systems in your data center from a single interface.”
If you’ve already worked with a Dell server, I probably don’t have to explain what “OpenManage” tool is for. It’s an embedded tool you can either install as a plug-in in your vpshere environment or install it directly on a system to manage servers trough a web browser. Dell is also offering this tool as a bootable ISO where you can boot your servers directly on this tool. Again, I wasn’t able to update anything with this tool.
Dell Lifecycle Controller
“With the launch of the Dell PowerEdge 12th generation servers on Feb 27th, 2012, Dell has enhanced our embedded management without the need to install a software based agent within the host operating system. At the heart of the 12th generation servers embedded management is the iDRAC7 with Lifecycle Controller technology, which allows users to perform useful tasks such as configure BIOS and hardware settings, deploy operating systems, update drivers, change RAID settings, and save hardware profiles. Together, they provide a robust set of management functions that can be leveraged throughout the entire server lifecycle.”
If your environment is ready (you have setup Repositories for your drivers) and you have access to this feature on your servers (license wise), there is no doubt that this is the easiest tool to use.
AND… the easiest method!
Dell Repository Manager Application
“Dell Repository Manager is an application that allows you to create customized bundles and repositories on systems running the Microsoft Windows operating system. The customized bundles and repositories are made up of Dell Update Packages (DUPs) based on certain specified criteria. DUPs are software utilities provided by Dell to update specific software components on Dell PowerEdge systems. Using Repository Manager ensures that your Dell PowerEdge system is equipped with the latest BIOS, driver, firmware, and software updates.”
As of writing this article, this tool is at version 184.108.40.206. By the way, this tool is the easiest if you only have a couple of servers to update like me, if you have more than 8-10 servers, I would look elsewhere for a more automated updating mechanism as with this tool, it requires a couple of manual manipulation on the server side.
The basic idea behind this tool is to create a custom bootable ISO file with all the firmware and bios updates bundled onto the ISO. All you have to do is to choose your models of servers and ask the tool to create a bootable ISO for you. The tool than downloads the latest updates from the internet, creates a linux based bootable ISO with a start-up script that starts the update of your servers as soon as you boot to the media. The rest is taken care of by your custom ISO.
Here is the overall procedure of how to use this tool.
- First, let’s download “Dell Repository Manager” from this link;
- Install it on a Windows computer. It doesn’t have to be a server. You can install it on your workstation. You’ll need to install “.Net Framework 4.5.1” to be able to install this version.
- Once “Dell Repository Manager” is installed on your system. Start the program.
- Go to “Repository”, “Create”, “Create New Repository”. This will bring up the “Create New Repository” wizard.
- Give a name to your repository. I’ll call it PowerEdgeR520 as I’ll use this repository exclusively for PowerEdge R520 models. Click “Next”.
- The next page is asking you if you already have any repositories to use them as a baseline or choose “Dell Online Catalog” to get the latest updates. So make sure you choose “Dell Online Catalog” and click next.
- On the next page, choose the type of servers you want to include in your drivers. In my case, I’ll only choose “PowerEdge Rack” servers. Click “Next”.
- On the next page, you’ll be given different types of OS and architecture choices. We’ll use “Linux (32-Bit and 64-bit). Click “Next”.
- On the next page, you’ll be able to choose particular server models based on your previous selection. For this example, I’ll only include PowerEdge R610 servers. Click “Next”.
On next window, you can choose which bundle versions you want to include in your package. I prefer to have the latest versions so I’ll leave the “ONLY include most recent and custom bundle(s)” option selected. Click “Next”.
On the next window, you can include optional components into your custom bundle if you want to have more “complete” ISO, you can include things like “driversets” to use on top of a running operating system. Usually, you do not need that part. I’ll just click on “Next” without selecting any optional components.
On the final window, review your selections and click on “Finish”.
At this point, let “Dell Repository Manager” do its thing. It will make sure that it downloads all the necessary files from the internet.
Once all the files are ready, you should now see a bundle under your “Bundles” tab in Repository Manager.
Select the custom bundle from the list and click on “Export” button. This will bring up the “Export Bundle” wizard as shown in the previous screenshot. From the options, choose “Bootable ISO (Using Linux Bundle)”. Click “Next”.
The wizard will check to see if all the plugins are in place. If not, you’ll be given instructions to install them. Once the required plugins are found, click on “Next”.
The wizard will now ask you to choose a folder on your computer to save the final ISO file. I’m using my C:\ drive in the root for that.
On the next window, the wizard will ask you if you want to replace the default startup script to install your updates. I would not change anything in that section unless you know what you are doing and you are an “EXPERT” in linux scripting. Otherwise, leave everything by default as it works just fine for everything. Click on “Next”.
Review your selections and click on “Finish” to start creating your bootable ISO.
You can see the progress of ISO creation under the “Jobs Queue” section as shown in the following screenshot. Once it’s “succeeded”, you are ready to burn the ISO with your favorite ISO burner program into a CD or DVD. You can also choose to apply the ISO image onto a USB key although, I never tried that approach.
To finalize, I used ImgBurn to create a bootable image.
You can now boot your servers with that media and if you choose to boot on the media, you’ll have the option to continue and update your system as shown on the following screenshot.
In my case, it took about 30 minutes to update all component drivers & firmware updates per server. During that time, the only thing you will see on the screen is a bunch of dots and probably some stuff that don’t apply to your server. Hopefully, at the end you will come to that screen;
I’ve struggled enough to find that procedure and I decided to share my experience from here. Ohh by the way, yes I could also call up Dell and they would probably either do it for me or point me to the right direction, right away… But there is no fun of doing that J