Como atualizar o firmware do sistema usando a API REST do XCC Redfish para servidores ThinkSystem

Como atualizar o firmware do sistema usando a API REST do XCC Redfish para servidores ThinkSystem

Como atualizar o firmware do sistema usando a API REST do XCC Redfish para servidores ThinkSystem

Este é um artigo traduzido automaticamente, por favor clique aqui para ver a versão original em inglês.

Descrição

Lenovo XClarity Controller (XCC) fornece suporte para a Redfish Scalable Platforms Management API padrão da indústria, que pode ser usada para acessar dados e serviços XCC de aplicativos em execução fora do XCC. O Redfish usa semântica de interface RESTful e payloads de recursos JSON para executar o gerenciamento do sistema por meio de protocolos baseados na Web.

Este artigo apresenta o procedimento usado para atualizar o firmware do sistema usando a API REST do XCC Redfish.

Os seguintes métodos HTTP serão usados neste artigo:

  • GET: solicitação de leitura – usada para solicitar um recurso ou coleção especificado para verificar dados
  • POST: solicitação de ação – usada para iniciar operações ou criar recursos

Sistemas aplicáveis

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

Pré-requisitos

  • Um cliente Redfish deve ser instalado em sua estação de trabalho ou laptop.
  • Clientes da Redfish:
  • Chrome: Postman, testador de API Talend
  • Firefox: RESTCliente
  • A estação de trabalho ou laptop deve ter acesso direto à rede do XCC no servidor de destino.

Procedimentos

Use as etapas a seguir para atualizar os níveis de firmware do sistema usando o método XCC Redfish API.

Baixe os pacotes de firmware desejados

  1. Baixe o pacote de firmware apropriado para sua máquina na página de suporte Lenovo .
  2. Descompacte os arquivos e copie o conteúdo para uma pasta especificada.

Recuperar as versões de firmware instaladas

  1. Para acessar as propriedades na coleção de inventário de firmware, abra o postman, selecione o método GET e insira a seguinte URL solicitada : https:// BMCIP /redfish/v1/UpdateService/FirmwareInventory
  2. Na aba Authorization , selecione Basic Auth no menu Type e então insira as credenciais do BMC . Clique em Send .

inventário

Observação: esta etapa de autorização é necessária para cada solicitação.

Exemplo de resposta

Se a solicitação for bem-sucedida, um corpo de mensagem semelhante ao seguinte será retornado:

 { "Membros": [ { "@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\"", "Nome": "SoftwareInventoryCollection", "Descrição": "Coleção de inventário de firmware." }
  1. Na saída da lista Members, encontre o endpoint do firmware do sistema que você deseja consultar – por exemplo, /redfish/v1/UpdateService/FirmwareInventory/UEFI . Insira-o no campo URL para obter as informações UEFI.
 { "ReleaseDate": "2020-09-18T00:00:00Z", "RelatedItem": [ { "@odata.id": "/redfish/v1/Systems/1/ Bios " } ], "Id": "UEFI", "Status": { "HealthRollup": "OK", "Health": "OK", "State": "Enabled" }, "Manufacturer": " Lenovo ", "Name": "Firmware:UEFI", "Version": "60N-2.71", "SoftwareId": "UEFI-IVE1-6", "RelatedItem@odata.count": 1, "@odata.type": "#SoftwareInventory.v1_2_3.SoftwareInventory", "@odata.id": "/redfish/v1/UpdateService/FirmwareInventory/UEFI", "Updateable": true, "@odata.etag": "\"3d193e9f3c0c2725df0\"", "LowestSupportedVersion": null, "Description": "As informações do firmware UEFI." }

Nos dados de resposta acima, o UEFI instalado é 60N-2.71 e o ID do software é UEFI-IVE1-1.6 .

Aplicar atualizações de firmware

Use o método POST para aplicar atualizações UEFI ou XCC .

Atualizações UEFI

  1. Selecione o método POST e insira o seguinte URL solicitado: https:// BMCIP /fwupdate
  2. Na guia Corpo da ação POST , selecione binário e, em seguida, selecione a imagem de firmware a ser atualizada.

atualização fw

  1. Clique em Enviar .

enviar

  1. Se a solicitação for bem-sucedida, o status do código de resposta 202 Accepted será exibido. O corpo da mensagem será semelhante ao exemplo a seguir:

202 aceitos

No exemplo de resposta acima, /redfish/v1/TaskService/Tasks/00fc5d1b-f3da-469a-a4b0-007e91baa55f é a nova tarefa que acabou de ser criada. Você pode usar o método Get para consultar o status da atualização com o ID da tarefa.

URL solicitada

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

Exemplo de resposta

tarefa concluída

tarefa 2

  1. Reinicie o servidor e execute o inventário de firmware novamente. A versão BIOS terá sido atualizada.
    Você também pode usar o método POST para executar uma reinicialização do sistema.

URL solicitada

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

Corpo solicitado da ação POST:

{"ResetType":"Reinício Elegante"}
# Os valores possíveis do tipo de reinicialização do sistema podem ser On/ForceOff/GracefulShutdown/GracefulRestart/ForceRestart/Nmu/ForceOn
ações de poder

Exemplo de resposta

A seguinte resposta JSON será retornada:

Nenhum

[Voltar ao topo]

Atualizações XCC

  1. Selecione o método POST e insira o seguinte URL solicitado: https:// BMCIP /fwupdate
  2. Na guia Corpo da ação POST , selecione binário e, em seguida, selecione a imagem de firmware a ser atualizada.

atualização fw

  1. Clique em Enviar .

Atualização XCC

  1. Se a solicitação for bem-sucedida, o status do código de resposta 202 Accepted será exibido. O corpo da mensagem será semelhante ao exemplo a seguir:

Atualização XCC aplicada

No exemplo de resposta acima, /redfish/v1/TaskService/Tasks/d9674179-39e2-4842-8cbe-5d2ce477e49b é a nova tarefa que acabou de ser criada. Você pode usar o método Get para consultar o status da atualização com o ID da tarefa.

URL solicitada

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

Exemplo de resposta

Atualização do XCC concluída

Atualização XCC concluída 2

  1. Reinicie o servidor e execute o inventário de firmware novamente. A versão do XCC terá sido atualizada.
    Você também pode usar o método POST para reiniciar o XCC.

URL solicitada

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

Corpo solicitado da ação POST:

{"ResetType":"Reinício Elegante"}
# Os valores possíveis do tipo de reinicialização XCC podem ser GracefulRestart/ForceRestart

Exemplo de resposta

A seguinte resposta JSON será retornada:

Nenhum

[Voltar ao topo]

Vídeo

Informações adicionais

Artigos relacionados

ID do documento:HT511484
Data de publicação original:11/20/2020
Data da última modificação:08/26/2024