Cómo actualizar el firmware del sistema mediante la API REST de XCC Redfish para servidores ThinkSystem

Cómo actualizar el firmware del sistema mediante la API REST de XCC Redfish para servidores ThinkSystem

Cómo actualizar el firmware del sistema mediante la API REST de XCC Redfish para servidores ThinkSystem

Este es un artículo traducido automáticamente. Haga clic aquí para ver la versión original en inglés.

Descripción

Lenovo XClarity Controller (XCC) brinda soporte para la API de gestión de plataformas escalables Redfish, que es un estándar de la industria y se puede utilizar para acceder a los datos y servicios de XCC desde aplicaciones que se ejecutan fuera de XCC. Redfish utiliza semántica de interfaz RESTful y cargas útiles de recursos JSON para realizar la gestión del sistema a través de protocolos basados en la Web.

Este artículo presenta el procedimiento utilizado para actualizar el firmware del sistema mediante la API REST de XCC Redfish.

En este artículo se utilizarán los siguientes métodos HTTP:

  • GET: solicitud de lectura: se utiliza para solicitar un recurso o una colección específicos para verificar datos
  • POST: solicitud de acción: se utiliza para iniciar operaciones o crear recursos

Sistemas aplicables

ThinkSystem (excepto HR330A, HR350A, HR630X, HR650X), SR645, SR665

Prerrequisitos

  • Debe tener instalado un cliente Redfish en su estación de trabajo o computadora portátil.
  • Clientes de Redfish:
  • Chrome: Postman, probador de API de Talend
  • Firefox: Cliente RESTClient
  • La estación de trabajo o computadora portátil debe tener acceso de red directo a XCC en el servidor de destino.

Procedimientos

Utilice los siguientes pasos para actualizar los niveles de firmware del sistema utilizando el método API XCC Redfish.

Descargue los paquetes de firmware deseados

  1. Descargue el paquete de firmware apropiado para su máquina desde la página de soporte Lenovo .
  2. Descomprima los archivos y copie el contenido a una carpeta específica.

Recuperar las versiones de firmware instaladas

  1. Para acceder a las propiedades en la colección de inventario de firmware, abra Postman, seleccione el método GET y luego ingrese la siguiente URL solicitada : https:// BMCIP /redfish/v1/UpdateService/FirmwareInventory
  2. En la pestaña Autorización , seleccione Autenticación básica en el menú Tipo y, a continuación, ingrese las credenciales de BMC . Haga clic en Enviar .

inventario

Nota: Este paso de autorización es necesario para cada solicitud.

Ejemplo de respuesta

Si la solicitud es exitosa, se devolverá un cuerpo de mensaje similar al siguiente:

 { "Miembros": [ { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/BMC-Primary" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/BMC-Backup" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/UEFI" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/LXPM" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/LXPMWindowsDriver" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/LXPMLinuxDriver" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Ob_1.Bundle" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Slot_4.Bundle" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Ob_5.Bundle" }, { "@odata.id": "/redfish/v1/ UpdateService/FirmwareInventory/Ob_4.Bundle" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Ob_1.1" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Ob_1.2" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Slot_4.1" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Disco1" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Disco2" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Disco3" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Disco4" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Disco5" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/Disco6" }, { "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/PSU1" } ], "@odata.type": "#SoftwareInventoryCollection.SoftwareInventoryCollection", "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory", "Members@odata.count": 20, "@odata.etag": "\"af76d20eb1af2e197f855\"", "Name": "SoftwareInventoryCollection", "Description": "Recopilación de inventario de firmware". }
  1. En el resultado de la lista de miembros, busque el punto final del firmware del sistema que desea consultar (por ejemplo, /redfish/v1/UpdateService/FirmwareInventory/UEFI) . Introdúzcalo en el campo URL para obtener la información de UEFI.
 { "Fecha de lanzamiento": "2020-09-18T00:00:00Z", "Elemento relacionado": [ { "@odata.id": "/redfish/v1/Systems/1/ Bios " } ], "Id": "UEFI", "Estado": { "HealthRollup": "OK", "Estado": "OK", "Estado": "Habilitado" }, "Fabricante": " Lenovo ", "Nombre": "Firmware:UEFI", "Versión": "60N-2.71", "SoftwareId": "UEFI-IVE1-6", "Elemento relacionado@odata.count": 1, "@odata.type": "#SoftwareInventory.v1_2_3.SoftwareInventory", "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/UEFI", "Actualizable": verdadero, "@odata.etag": "\"3d193e9f3c0c2725df0\"", "LowestSupportedVersion": null, "Description": "La información del firmware UEFI". }

En los datos de respuesta anteriores, la UEFI instalada es 60N-2.71 y el ID del software es UEFI-IVE1-1.6 .

Aplicar actualizaciones de firmware

Utilice el método POST para aplicar actualizaciones UEFI o XCC .

Actualizaciones de UEFI

  1. Seleccione el método POST y luego ingrese la siguiente URL solicitada: https:// BMCIP /fwupdate
  2. En la pestaña Cuerpo de la acción POST , seleccione binario y luego seleccione la imagen de firmware que se actualizará.

actualización

  1. Haga clic en Enviar .

enviar

  1. Si la solicitud es exitosa, se mostrará el código de respuesta 202 Aceptado . El cuerpo del mensaje será similar al siguiente ejemplo:

202 aceptados

En el ejemplo de respuesta anterior, /redfish/v1/TaskService/Tasks/00fc5d1b-f3da-469a-a4b0-007e91baa55f es la nueva tarea que se acaba de crear. Puede utilizar el método Get para consultar el estado de actualización con el ID de la tarea.

URL solicitada

Identificación de tarea https:// BMCIP /redfish/v1/TaskService/Task/

Ejemplo de respuesta

Tarea completada

Tarea 2

  1. Reinicia el servidor y vuelve a realizar el inventario de firmware. La versión BIOS se habrá actualizado.
    También puede utilizar el método POST para realizar un reinicio del sistema.

URL solicitada

https: //BMCIP/redfish/v1/Systems/1/Actions/ComputerSystem.Reset

Cuerpo solicitado de la acción POST:

{"ResetType": "Reinicio elegante"}
# Los valores posibles del tipo de reinicio del sistema podrían ser On/ForceOff/GracefulShutdown/GracefulRestart/ForceRestart/Nmu/ForceOn
acciones de poder

Ejemplo de respuesta

Se devolverá la siguiente respuesta JSON:

Ninguno

[Volver al inicio]

Actualizaciones del XCC

  1. Seleccione el método POST y luego ingrese la siguiente URL solicitada: https:// BMCIP /fwupdate
  2. En la pestaña Cuerpo de la acción POST , seleccione binario y luego seleccione la imagen de firmware que se actualizará.

actualización

  1. Haga clic en Enviar .

Actualización del XCC

  1. Si la solicitud es exitosa, se mostrará el código de respuesta 202 Aceptado . El cuerpo del mensaje será similar al siguiente ejemplo:

Se aplicó la actualización de XCC

En el ejemplo de respuesta anterior, /redfish/v1/TaskService/Tasks/d9674179-39e2-4842-8cbe-5d2ce477e49b es la nueva tarea que se acaba de crear. Puede utilizar el método Get para consultar el estado de actualización con el ID de la tarea.

URL solicitada

https:// BMCIP /redfish/v1/TaskService/Tarea/ID

Ejemplo de respuesta

Actualización de XCC completada

Actualización del XCC completada 2

  1. Reinicie el servidor y vuelva a realizar el inventario de firmware. La versión XCC se habrá actualizado.
    También puede utilizar el método POST para reiniciar XCC.

URL solicitada

https://BMCIP/redfish/v1/Managers/1/Actions/Manager.Reset

Cuerpo solicitado de la acción POST:

{"ResetType": "Reinicio elegante"}
# Los valores posibles del tipo de reinicio XCC podrían ser GracefulRestart/ForceRestart

Ejemplo de respuesta

Se devolverá la siguiente respuesta JSON:

Ninguno

[Volver al inicio]

Video

información adicional

Artículos relacionados

ID del documento:HT511484
Fecha de publicación original:11/20/2020
Fecha de última modificación:08/26/2024