Jak zaktualizować oprogramowanie układowe systemu za pomocą interfejsu API REST XCC Redfish dla serwerów ThinkSystem
Jak zaktualizować oprogramowanie układowe systemu za pomocą interfejsu API REST XCC Redfish dla serwerów ThinkSystem
Jak zaktualizować oprogramowanie układowe systemu za pomocą interfejsu API REST XCC Redfish dla serwerów ThinkSystem
Opis
Lenovo XClarity Controller (XCC) zapewnia obsługę standardowego w branży interfejsu API Redfish Scalable Platforms Management, którego można używać do uzyskiwania dostępu do danych i usług XCC z aplikacji działających poza XCC. Redfish używa semantyki interfejsu RESTful i ładunków zasobów JSON do zarządzania systemem za pośrednictwem protokołów internetowych.
W tym artykule opisano procedurę aktualizacji oprogramowania układowego systemu za pomocą interfejsu API REST XCC Redfish.
W tym artykule zostaną wykorzystane następujące metody HTTP:
- GET: żądanie odczytu – używane do żądania określonego zasobu lub kolekcji w celu sprawdzenia danych
- POST: żądanie działania – służy do inicjowania operacji lub tworzenia zasobów
Systemy stosowane
ThinkSystem (z wyjątkiem HR330A, HR350A, HR630X, HR650X), SR645, SR665
Wymagania wstępne
- Na stacji roboczej lub laptopie musi być zainstalowany klient Redfish.
- Klienci Redfish:
- Chrome: Postman, tester interfejsu API Talend
- Firefox: Klient REST
- Stacja robocza lub laptop musi mieć bezpośredni dostęp sieciowy do XCC na serwerze docelowym.
Procedury
Aby zaktualizować wersje oprogramowania układowego systemu za pomocą metody API XCC Redfish, wykonaj następujące czynności.
Pobierz żądane pakiety oprogramowania sprzętowego
- Pobierz odpowiedni pakiet oprogramowania sprzętowego dla swojego komputera ze strony wsparcia Lenovo .
- Rozpakuj pliki i skopiuj ich zawartość do wskazanego folderu.
Pobierz zainstalowane wersje oprogramowania sprzętowego
- Aby uzyskać dostęp do właściwości w kolekcji inwentarza oprogramowania sprzętowego, otwórz program Postman, wybierz metodę GET ① , a następnie wprowadź następujący żądany adres URL ② : https:// BMCIP /redfish/v1/UpdateService/FirmwareInventory
- Na karcie Authorization (Autoryzacja ) wybierz opcję Basic Auth (Podstawowe uwierzytelnianie) z menu Type (Typ) ③ , a następnie wprowadź dane uwierzytelniające BMC ④ . Kliknij Send (Wyślij) ⑤ .
Uwaga: Ten krok autoryzacji jest wymagany dla każdego żądania.
Przykład odpowiedzi
Jeśli żądanie zostanie zrealizowane pomyślnie, zostanie zwrócona wiadomość o treści podobnej do poniższej:
{ "Członkowie": [ { "@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/Disk1” }, { „@odata.id”: „/redfish/v1/UpdateService/FirmwareInventory/Disk2” }, { „@odata.id”: „/redfish/v1/UpdateService/FirmwareInventory/Disk3” }, { „@odata.id”: „/redfish/v1/UpdateService/FirmwareInventory/Disk4” }, { „@odata.id”: „/redfish/v1/UpdateService/FirmwareInventory/Disk5” }, { „@odata.id”: „/redfish/v1/UpdateService/FirmwareInventory/Disk6” }, { "@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": "Kolekcja inwentarza oprogramowania sprzętowego." }
- Na podstawie wyników listy Members znajdź punkt końcowy oprogramowania układowego systemu, który chcesz zapytać – na przykład /redfish/v1/UpdateService/FirmwareInventory/UEFI . Wprowadź go w polu URL, aby uzyskać informacje o UEFI.
{ "ReleaseDate": "2020-09-18T00:00:00Z", "RelatedItem": [ { "@odata.id": "/redfish/v1/Systems/1/ Bios " } ], "Identyfikator": "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”: „Informacje o oprogramowaniu układowym UEFI”.
W powyższych danych odpowiedzi zainstalowany UEFI to 60N-2.71 , a identyfikator oprogramowania to UEFI-IVE1-1.6 .
Zastosuj aktualizacje oprogramowania sprzętowego
Aby zastosować aktualizacje UEFI lub XCC , należy użyć metody POST.
Aktualizacje UEFI
- Wybierz metodę POST , a następnie wprowadź następujący żądany adres URL: https:// BMCIP /fwupdate
- Na karcie Body ( Ciało) akcji POST wybierz opcję binarny , a następnie wybierz obraz oprogramowania sprzętowego, który chcesz zaktualizować.
- Kliknij Wyślij .
- Jeśli żądanie zostanie zrealizowane pomyślnie, zostanie wyświetlony kod odpowiedzi status 202 Accepted . Treść wiadomości będzie podobna do poniższego przykładu:
W powyższym przykładzie odpowiedzi /redfish/v1/TaskService/Tasks/00fc5d1b-f3da-469a-a4b0-007e91baa55f to nowe zadanie, które właśnie zostało utworzone. Możesz użyć metody Get , aby zapytać o status aktualizacji z identyfikatorem zadania.
Żądany adres URL
https:// BMCIP /redfish/v1/TaskService/Task/ ID
Przykład odpowiedzi
- Uruchom ponownie serwer i ponownie wykonaj inwentaryzację oprogramowania sprzętowego. Wersja BIOS zostanie zaktualizowana.
Do ponownego uruchomienia systemu można również użyć metody POST .
Żądany adres URL
https:// BMCIP /redfish/v1/Systems/1/Actions/ComputerSystem.Reset
Żądana treść akcji POST:
{"ResetType":"Łagodny restart"}
# Możliwe wartości typu resetu systemu to: On/ForceOff/GracefulShutdown/GracefulRestart/ForceRestart/Nmu/ForceOn
Przykład odpowiedzi
Zostanie zwrócona następująca odpowiedź JSON:
Nic
Aktualizacje XCC
- Wybierz metodę POST , a następnie wprowadź następujący żądany adres URL: https:// BMCIP /fwupdate
- Na karcie Body ( Ciało) akcji POST wybierz opcję binarny , a następnie wybierz obraz oprogramowania sprzętowego, który chcesz zaktualizować.
- Kliknij Wyślij .
- Jeśli żądanie zostanie zrealizowane pomyślnie, zostanie wyświetlony kod odpowiedzi status 202 Accepted . Treść wiadomości będzie podobna do poniższego przykładu:
W powyższym przykładzie odpowiedzi, /redfish/v1/TaskService/Tasks/d9674179-39e2-4842-8cbe-5d2ce477e49b to nowe zadanie, które właśnie zostało utworzone. Możesz użyć metody Get , aby zapytać o status aktualizacji z identyfikatorem zadania.
Żądany adres URL
https:// BMCIP /redfish/v1/TaskService/Task/ID
Przykład odpowiedzi
- Uruchom ponownie serwer i ponownie wykonaj inwentaryzację oprogramowania sprzętowego. Wersja XCC zostanie zaktualizowana.
Do ponownego uruchomienia XCC możesz również użyć metody POST .
Żądany adres URL
https://BMCIP/redfish/v1/Managers/1/Actions/Manager.Reset
Żądana treść akcji POST:
{"ResetType":"Łagodny restart"}
# Możliwe wartości typu resetu XCC to GracefulRestart/ForceRestart
Przykład odpowiedzi
Zostanie zwrócona następująca odpowiedź JSON:
Nic