cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
63897
Views
40
Helpful
70
Comments
Jeffrey Foster
Cisco Employee
Cisco Employee

The Cisco C-Series Cisco Integrated Management Controller (CIMC) software  delivers many new features and capabilities including enhancements to the Host Upgrade Utility (HUU). The Host Upgrade Utility enables users to update their CIMC, BIOS, LOM, RAID Controllers, PCI adapters and Cisco VIC cards from a single interface. In previous versions of HUU, an interactive menu-driven command line interface was the only option provided to update system BIOS, CIMC, adapter firmware, and LAN on Motherboard (LOM).

 

Enhancements to HUU include adding an interactive graphical user interface to HUU and adding non-interactive update capabilities for single-system and multiple-system updates for no touch upgrades of Cisco C-Series Server firmware. Updates can be applied using the bootable image in the HUU ISO which can be mounted via vMedia to boot host to HUU and triggered through the KVM using an interactive update interface. Other tools offering non-interactive updates include a Python update tool and a Microsoft Windows-based tool, both of which offering single-system and multi-system update capabilities.

 

The Host Update Utility (HUU) is a tool that helps users to update the various levels of firmware running on their system including:

  • CIMC
  • BIOS
  • LAN on Motherboard (LOM)
  • RAID Controllers
  • PCI Adapters
  • Cisco Virtual Interface Cards (VIC)

 

For more information on using the Interactive Utility or the Python Non-Interactive Utility, check out the Getting Started with HUU Guide available here.

 

Links to Getting Started Videos:

In this video we will use the native utility to update a single system using vKVM attached media and the new HUU Graphical User Interface to update a single system.

 

In this video we will use the Python Tool to update a single system by passing configuration flags and options through the CLI to a remote target. This is the recommended update process for a one-time update to a single system.

 

In this video we will use the Python Tool to update a group of systems using a configuration file. We will walk through the encryption setup process for the target CIMC as well as the remote share and how to reference these encrypted files in an update script. This is the recommended update process for updating multiple systems concurrently.

 

****NOTE: For IMC 3.x and above, Python >= 2.7.9 and OpenSSL >= 1.0.1 are required. For IMC 4.1(3) and above, Python 3 is required. 

 

Download the Utilities:

 

***New IMC 4.3(3.240022) utilities are posted! Scripts are updated on an "as needed basis" and do not necessarily match the latest release.

Comments
mkarmalm
Cisco Employee
Cisco Employee
ericwill
Cisco Employee
Cisco Employee

Thanks for letting us know of the broken link.  I have since attached the files here, and updated the links.

Not applicable

Great documentation guys.  Greatly appreciated.

Amir

runtastic
Community Member

Hello,

I always get this error:

ERROR: 2015-06-15 18:16:04,385 - Process-1 - 25867 - We failed to reach CIMC (XX.XX.XX.XX). Reason: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)

Cimc version 1.5(1f)

thanks

Jeffrey Foster
Cisco Employee
Cisco Employee

Is it the Python NI-HUU Utility you are seeing this with? Is this for one system or all systems?

marrosen
Community Member

In short, I'm seeing this error message: "huuFirmwareUpdater has incorrect DN:".

I suspect that my current firmware isn't supported by the utilities attached to this page.  If so, where do I get the latest?

Long story follows:

I've got  C3260 with firmware 2.0(9i) and I would like to upgrade to the latest and greatest ( 3.0(1c) at the time of this writing ) . 

[root@nfvi-tools-02 Python Tools v3.0.1]# ./update_firmware-3.0.1c.py  -a 10.5.8.20 -u admin -p password -m ucs-c3260-huu-3.0.1c.iso -i 10.5.8.11 -d / -t www -r bogus -w bogus -f 10.5.8.15.log  -y all -n 2


Total of 1 servers firmware to be updated.


Updating firmware.....

Firmware update failed on server with CIMC IP (10.5.8.15)

Update Summary:


---------------

Firmware update failed for CIMC - 10.5.8.15, Error - Object of class huuFirmwareUpdater has incorrect DN (sys/huu/firmwareUpdater)


I'm hoping the community knows of this problem.  In the meantime, I'll verify that the upgrade works through just CLI.  I can automate  the CLI as well, but I prefer the python/xmlrpc approach over expect.

Greg Wilkinson
Cisco Employee
Cisco Employee

Sorry for the issues here. Please refer to the v2 version of the tools posted above, as this should address the issues you had encountered. Also, please make use of the multiserver_config file when running upgrades across more than one system. Please let us know if you have any further questions!

smolz
Level 4
Level 4

any chance this works with ucs-e servers?

fst0
Community Member

I had high hopes for the python tools for exactly this use case (upgrading the firmware on many geographically dispersed ucs-e modules) but it seems it doesn't work out of the box.

After removing an option in the API call which apparently doesn't exist on E Series servers (updateType i think) i was able to start the script and test it with huu_3.1.3.iso.

It seemed to run fabulously, rebooted the server into the CIMC iso mounted from a www share without any intervention, but then it just sits at the EULA display and waits. IMHO the upgrade utility does not unterstand that it's supposed to run in unattended mode.

I would absolutely love to have the ability to upgrade the firmware on those server without touching every single one manually, it takes so much time and it's just busy work. It seems like there isn't a lot missing to make this happen, perhaps Cisco can provide an image which auto-accepts EULA? pinging grewilki jeffoste please consider this feature request.

karmakar
Cisco Employee
Cisco Employee

We have a home-grown script for UCSE as well. We have successfully used that on networks with 1000+ servers.

Pls. reach out to me karmakar@cisco.com, for a more detailed discussion on that.

breddy1
Level 1
Level 1

Hey I am getting this error when using this tool on UCS C220 M4.  I tried all the below and end up in the same error...

 ./update_firmware-4.0.1a.py -a <CIMC-IP> -u admin -p <Password> -m ucs-c220m4-huu-4.0.1c.iso -i <NFS-SERVER-IP> -d NFS-SHARE -t nfs -y all -S SECURE yes

./update_firmware-4.0.1a.py -a <CIMC-IP> -u admin -p <Password> -m ucs-c220m4-huu-4.0.1c.iso -i <NFS-SERVER-IP> -d NFS-SHARE -t nfs -y all -S SECURE no

./update_firmware-4.0.1a.py -a <CIMC-IP> -u admin -p <Password> -m ucs-c220m4-huu-4.0.1c.iso -i <NFS-SERVER-IP> -d NFS-SHARE -t nfs -y all

DEBUG: 2018-11-08 18:47:16,464 - Process-1 - 26677 - Found an entry in the work queue

INFO: 2018-11-08 18:47:16,464 - Process-1 - 26677 - Initiating Login to CIMC (<IP>)

DEBUG: 2018-11-08 18:47:16,464 - Process-1 - 26677 - Login request data==><aaaLogin inName="admin" inPassword=" "></aaaLogin>

DEBUG: 2018-11-08 18:47:16,464 - Process-1 - 26677 - Trying Login 0

DEBUG: 2018-11-08 18:47:16,464 - Process-1 - 26677 - Login request data==><aaaLogin inName="admin" inPassword=" "></aaaLogin>

ERROR: 2018-11-08 18:47:17,376 - Process-1 - 26677 - We failed to reach CIMC (<IP>). Reason: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:579)

 

 

Can someone please help ASAP..

Greg Wilkinson
Cisco Employee
Cisco Employee
What version of SSL are you running? Also what firmware version are you upgrading from?
breddy1
Level 1
Level 1

Thank for your response @Greg Wilkinson

Here is what I am using.

 

Python Version : Python 2.7.5

SSL Version: OpenSSL 1.0.2k-fips  26 Jan 2017

OS: RHEL 7.3

Upgrading CIMC 3.0 to CIMC 4.0

 

 

Greg Wilkinson
Cisco Employee
Cisco Employee

OK - great. As mentioned in the notes, you need to use Python 2.7.9 or later. Also, please use the scripts for the release you are currently running. If you are running 3.0, you can use the 3.0(3) scripts. If you still have issues, please let me know. 

breddy1
Level 1
Level 1

Thank you for your response @Greg Wilkinson .

 

I am trying to customize the XML code to fit our environment... and trying to update the FW using HUU via XML..

I am executing this ..

UpdateFW = """<configConfMo cookie={} inHierarchical="true" dn='sys/huu/firmwareUpdater'><inConfig><huuFirmwareUpdater dn='sys/huu/firmwareUpdater' adminState='trigger' remoteIp='10.x.x.37' remoteShare='/path/to/ucs-c220m4-huu-3.0.4d.iso' mapType='nfs' stopOnError='yes' timeOut='25' verifyUpdate='yes' updateComponent='all'/></inConfig></configConfMo>""".format(quoteattr(cimccookie))

 

and I get this ERROR...

<error cookie="" response="yes" errorCode="ERR-xml-parse-error" invocationResult="594" errorDescr="XML PARSING ERROR: Element &apos;huuFirmwareUpdater&apos;, attribute &apos;timeOut&apos;: [facet &apos;minInclusive&apos;] The value &apos;25&apos; is less than the minimum value allowed (&apos;30&apos;).Element &apos;huuFirmwareUpdater&apos;, attribute &apos;timeOut&apos;: &apos;25&apos; is not a valid value of the local atomic type.
" />

 

Could you please help...

 

 

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Review Cisco Networking for a $25 gift card