Download - Redfish & python redfish
REDFISH & PYTHONREDFISH
A standard way to manage servers
Session AgendaLight out managementIntelligent Platform Management InterfaceRedfishThe need for automation / scalabilityPython Redfish
What is Lights-out management ?
Lights-out managementRemote device
MonitoringManagement
Lights-out managementRegardless device power
Lights-out managementRegardless operating system availability
Lights-out managementHow is this done ?
Lights-out managementMain management possibilities
Lights-out managementExample temperature monitoring
Lights-out managementProprietary solutions
AMI MegaRACCisco CIMCDell DRACHP iloIBM Remote Supervisor AdapterOracle ILOM
Intelligent Platform ManagementInterface
A step to unify light out managementCurrently the only way to manage heterogeneous hardwareAvailable from client tools thanks to toolIPMIutil
Intelligent Platform ManagementInterface
But with some constraintsLow level specificationsHard to use for end usersNot all light out features supported and hard to extendSecurity concernsComplex to manage on high integrated servers
The need for automation / scalability
The need for automation / scalabilityScale out servers architecture with commodity serversRepetitive configurationEnd user friendlyAvailable from anywhere, with any platformSecuritySoftware Defined Infrastructure market trend
Here comes Redfish !
What is RedfishA powerful and user friendly IPMI alternative
Standard proposed by the Distributed Management Task ForceInitially promoted by Dell, Emerson, HP and Intel
Redfish v1.0 (3 Aug 2015)rd
ContentLight out management using a Rest API specificationJSON / Odata based schemas to describe resourcesA mockupDocumentation, white papers, FAQAvailable online at https://www.dmtf.org/standards/redfish
Redfish real life examplesUsing simple http get
Grab Bios versionGet server model and cpu models
Using simple http postSet a bios parameter using a simple http postReset serverChange next boot to the network
all of this, whatever the platform
HP Redfish 1.0 hardware supportThis is available now !
Ilo v4Firmware 2.30
Python Redfish
A python library to manage RedfishOpen source projectInitiated by a small group of people (Bruno, Devenanda, René,Sammer, Vincent)Available at https://github.com/uggla/python-redfish
Python RedfishInitial goals
Provide a library to easily add Redfish support into applicationsProvide a Redfish client tool based on the library
Python RedfishUltimate goals
Integration into Openstack IronicIntegration into CMDB tools (cf project)World domination ! :)
Alexandria
Python Redfish
StatusProject in infancyCore library development ready
Python RedfishStatus
First power management features implementedBios management features implementedCode samplesClient development in progress
Python RedfishStatus
Docker file producing a ready to use container with Redfish mockup.python-redfish dependencies rpm available into Mageia and FedoraThis presentation
Contributors welcomed
Python RedfishTested on
Redfish 1.0 mockup / proliantRedfish 0.9.5 mockup / proliant / moonshot
Python RedfishExternal dependencies
(thx Damien)Requeststortilla
Python RedfishLibrary usage example
Import
Create a redfish object
Retrieve API version
Retrieve power status
import redfish
remote_mgmt = redfish.connect(URL, USER_NAME, PASSWORD, verify_cert=False)
remote_mgmt.get_api_version()
remote_mgmt.Systems.systems_list[0].get_power()
Python RedfishLibrary usage example
Get bios parameter
Set bios parameter
Reboot system
remote_mgmt.Systems.systems_list[0].bios.get_parameter("AdminPhone")
remote_mgmt.Systems.systems_list[0].bios.set_parameter("AdminPhone","xxx")
remote_mgmt.Systems.systems_list[0].reset_system()
THANK YOURené Ribaud <[email protected]>