Skip to main content

Update From Repository

Update server firmware from a remote repository

Overview

Note
CIFS/NFS/HTTPS/Onboard Firmware History functionality requires XCC Premier license.

XCC has introduced updating firmware on a server using the Update Bundles (Service Packs) package. This feature simplifies the process by using a single API or Redfish client tool to update all firmware in the system, including both OOB and IB firmware packages. The process involves identifying applicable firmware packages, downloading and extracting them from a remote HTTP/HTTPS server or uploading them to BMC internal storage via a web browser, or mounting them from a CIFS or NFS shared directory.

The metadata (JSON format) files need to be placed in the root directory of the network shared file system if using CIFS or NFS mount, with firmware payloads specified in the metadata. The server's microSD device can store historical repositories, allowing users to roll back firmware levels.

If the firmware packages contain any payloads that do not support out-of-band firmware update, the BMC will start the server and configure it to boot from the embedded OS image installed in BMC before performing the update.

Update Bundle and metadata

The Update Bundle (Service Packs) is a compressed file of a firmware bundle. It contains one or multiple firmware packages for the components in a system. XCC’s Update from Repository feature consumes the Update Bundle file. The unzipped bundle file contains metadata and payload binaries. JSON metadata files provide information to XCC about the kind of firmware images the bundle file contains, and payload binaries provide the firmware images.

Firmware repository inside XCC

The Update Bundle can contain multiple firmware packages, and XCC reserves 2GB of space in its flash for new features. When a new bundle is received, XCC cleans up old data. Some platforms use a MicroSD card to provide additional storage, and XCC moves the last Updated Bundle to the SD card's historic repository. The firmware history repository can store up to three bundles, and users can use the Firmware Rollback feature to revert to a previous bundle.

Note
  • If the Update Bundle only includes the OOB firmware package available to the system, XCC does not change the system power state. To update PCI device firmware, it requires the system to be powered on.

  • If the Update Bundle includes the IB firmware package available to the system, XCC stores the system power state before updating and restore the power state after the Update Bundle is updated. During the update process, XCC reboots the host into the embedded OS.

  • If the Update Bundle includes a prerequisite level of UEFI firmware and the current installed UEFI version does not meet or is behind that level, XCC powers off the system to perform a UEFI firmware update first.

  • If the Update Bundle includes a prerequisite level of XCC firmware and the current installed XCC version does not meet or is behind that level, XCC reboots first after upgrading itself.

Update with WebGUI

With Update from Repository, user can configure XCC to sync server firmware with a remote CIFS/NFS/HTTP/HTTPS firmware repository, or use the Internal Storage or Onboard Firmware History. The firmware repository should contain packages including binary and metadata files, or Update Bundle metadata JSON and corresponding binary files. XCC parses the metadata JSON files to pick out firmware packages that support OOB update for this specific system hardware then starts a batch update.

To update from repository, complete the following steps:

  1. When using Internal Storage, click Import Firmware Package and browse for the firmware package (.tgz or zip format).
  2. When using HTTP or HTTPS, enter the firmware package URL.
  3. When using CIFS or NFS, enter the remote repository information and click Mount.
    • Example of a CIFS remote share: (use forward slash instead of backslash)
      //fileserver.mycompany.com/repository
    • Example of a NFS remote share: (hostname or IP address are both valid)
      192.168.100.120:/home/user1/repository
  4. Click Update System to start the batch update.
  5. Click View Details to see updating status.
    • Green check mark : The firmware’s upgrade has finished successfully.
    • Red X mark : The firmware’s upgrade has failed.
    • Updating: The firmware is undergoing the process of upgrading.
    • Cancel: The firmware’s upgrade is cancelled.
    • Waiting: The firmware’s upgrade is waiting to be deployed.
    Note
    Click Stop Updating will cancel the updates in queue after the current installation package update is complete.
  6. When using CIFS or NFS, click Unmount to disconnect from the remote repository.
  7. If the update requires the XClarity Controller to be restarted in order to take effect, a warning message will be displayed. For details on how to restart the XClarity Controller, see Power actions.
Note
If the system has MicroSD card installed, you can see the update history of the Update Bundle and select the index of the Update Bundle to perform firmware rollback. The process is similar to updating from repository, except the historical Update Bundle is placed inside MicroSD.