cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
73816
Views
40
Helpful
71
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:

huu_tutorial_interactive.mp4 (2)
Video Player is loading.
Current Time 0:00
Duration 0:00
Loaded: 0%
Stream Type LIVE
Remaining Time 0:00
 
1x
    • Chapters
    • descriptions off, selected
    • captions off, selected
      (view in My 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.

       

      11157.mp4
      Video Player is loading.
      Current Time 0:00
      Duration 0:00
      Loaded: 0%
      Stream Type LIVE
      Remaining Time 0:00
       
      1x
        • Chapters
        • descriptions off, selected
        • captions off, selected
          (view in My Videos)

          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.

           

          huu_tutorial_py_multi.mp4 (2)
          Video Player is loading.
          Current Time 0:00
          Duration 0:00
          Loaded: 0%
          Stream Type LIVE
          Remaining Time 0:00
           
          1x
            • Chapters
            • descriptions off, selected
            • captions off, selected
              (view in My Videos)

              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