Skip to main content

Tools for Redfish

Since Redfish is a REST API, standard REST clients can be used to interact with the service. This includes popular tools such as curl, as well as native access from scripting languages like Python and PowerShell. Postman is another example of an easy to use HTTP REST client tool. The tool is available from https://www.getpostman.com/.

Lenovo provides some Python and PowerShell sample scripts to use Redfish. These are available as open source code on Lenovo’s Github page http://github.com/lenovo/

These scripts utilize Redfish API to manage Lenovo ThinkSystem servers. The list of scripts is growing over time. Currently, the scripts support hardware/firmware inventory, basic management of configuration and control, firmware updates, and alerts/eventing. The scripts can be used both remotely (out-of-band to the XCC Network) and locally (in-band on the ThinkSystem server, connecting to the XCC local host Network interface).

Other open source tools that support Redfish include Ansible, which added support for Redfish starting with version 2.7, in the form of three modules for Remote Hardware Management. These modules are tested on Lenovo ThinkSystem servers:

In addition, DMTF provides some open source tools for Redfish development and support. And the Redfish toolsets of DMTF grow and gain version updates over time. These are available at the DMTF Github page: https://github.com/DMTF

DMTF Redfish ToolDescription of Tool
Redfish Mockup Creator

A python3.4 program that creates a Redfish Mockup folder structure from a real live Redfish service

Redfish Service Validator

The Redfish Service Validator is a Python3 tool for checking conformance of any "device" with a Redfish service interface against Redfish CSDL schema

Redfish Tool

A Python34 program that implements a command line tool for accessing the Redfish API

Redfish Interface Emulator

The Redfish Interface Emulator can emulate a Redfish-based interface statically (GET) or dynamically (POST, PATCH, DELETE)

Redfish Mockup Server

A simple Python 3.4 program that can be copied into a folder at the top of any Redfish mockup and can serve Redfish requests on the specified IP/port.

Python Redfish Library

Python library for interacting with devices which support a Redfish Service