17
Following a Redfish to find a Software Defined Infrastructure, isn't it Ironic ? January 2016 Bruno Cornec, HPE EG EMEA Open Source and Linux Strategist René Ribaud, HPE SDI Software Architect

Redfish and python-redfish for Software Defined Infrastructure

Embed Size (px)

Citation preview

Page 1: Redfish and python-redfish for Software Defined Infrastructure

Following a Redfish to find

a Software Defined Infrastructure, isn't it Ironic ?

January 2016

Bruno Cornec, HPE EG EMEA Open Source and Linux Strategist

René Ribaud, HPE SDI Software Architect

Page 2: Redfish and python-redfish for Software Defined Infrastructure

Introducing myself

2

● Software engineering and Unices since 1988:

– Mostly Configuration Management Systems (CMS), Build systems, quality tools, on multiple commercial Unix systems

– Discovered Open Source & Linux (OSL) & made first contributions in 1993

– Full time on OSL since 1995, first as HP reseller then @HP

● Currently:

– OSL Technology Strategist, EMEA EG Innovation Solution Center aka HP/Intel Solution Center, Grenoble

– HP OSL Advocate and Converged Infrastructure Ambassador

– WW Linux Community Lead for the HP Open Source Profession

– POSS conference, OpenStack.fr and AFUL board member. Conferences at WW level at LinuxCon, Linux.conf.au, ...

– MondoRescue, Project-Builder.org, UUWL and PUSK Project Lead

– LinuxCOE, mrepo, tellico, rinse, fossology, collectl, ytnef, Ironic, python-redfish, alexandria contributor

– FOSSBazaar/SPDX and OSL Governance enthusiast

– Mandriva, Mageia, Fedora packager

● And also:

– Amateur singer (Alto / Tenor), recorder player since 1976 and Choir director since 1987, CD collector (5000+), Concerts, Photography

Page 3: Redfish and python-redfish for Software Defined Infrastructure

Introducing René

3

● HPE employee since 1998:

– Mostly Unix System (HP-UX, Linux) & Storage administration

– Software development skills

– Part of HPE ES ITO EMEA

● Currently SDI Solution Architect, EMEA EG Innovation Solution Center aka HP/Intel Solution Center, Grenoble

– Detached from ES to the Solution Center for a mission

– Contributor to python-redfish and alexandria

Page 4: Redfish and python-redfish for Software Defined Infrastructure

Making the new style of IT a reality

» 14+ years of success, world wide programs, including Cloud Center of Excellence, Big Data/IoT Center of Excellence, Open Source Solutions Initiative, SDI aka Software Defined Infrastructure, NVF Center of Excellence, EMEA Networking Customer Visit Center and more

» Complete IT (400+ systems, 3000+ network ports, 500+ TB storage)» Portfolio of 40+ ready to demo solutions with access to our ecosystem of Partners » Complete test & validation environment» Strategic partnership with Intel, 14-year long standing collaboration» Strategic partnership with Red Hat 7-year collaboration (OSSI)

» A unique proof point in the industry with a proven service offering

Grenoble

Mission: Accelerate the adoption of new and² innovative solutions by creating simple and rewarding end-to-end customer experiences that benefit our customers and partners, in a compelling and engaging collaborative environment. …more information available at http://www.hpintelco.net

EMEA Solution Innovation Center

Wor

ksho

pPo

CLi

ve d

emo

CoE

Page 5: Redfish and python-redfish for Software Defined Infrastructure

Operating System (OS)

Container A

Env. A

App. A

Container B

Env. B

App. B

VM B

Env. B

App. B

OS B

VM A

Env. A

App. A

OS A

Hypervisor

HW VirtualizationOS Virtualization

Single Kernel - Enhanced chroot - Direct access to I/O devices - Isolation

Flexibility (multi OS)Requires HW supportKernel module

Hardware

Operating System (OS)

App. A App. B

OS Resource Control

Single Kernel – Rresources cont.: shared cpu, memory, blkio, dedicated cpusets

% CPU% RAM

% CPU% RAM

CPU bind CPU bind

Hardware Hardware

performance good best good

Isolation & security normal good best

runtime flexibility best good normal

maintenance best normal normal

HW VirtOS VirtShare Dedicate

cgroups NUMA LXC / Docker

KVM

Various resources containment architectures

Page 6: Redfish and python-redfish for Software Defined Infrastructure

Operating System (OS)

Container A

Env. A

App. A

Container B

Env. B

App. B

VM B

Env. B

App. B

OS B

VM A

Env. A

App. A

OS A

Hypervisor

HW VirtualizationOS Virtualization

Single Kernel - Enhanced chroot - Direct access to I/O devices - Isolation

Flexibility (multi OS)Requires HW supportKernel module

Hardware

Operating System (OS)

App. A App. B

OS Resource Control

Single Kernel – Rresources cont.: shared cpu, memory, blkio, dedicated cpusets

% CPU% RAM

% CPU% RAM

CPU bind CPU bind

Hardware Hardware

performance good best good

Isolation & security normal good best

runtime flexibility best good normal

maintenance best normal normal

HW VirtOS VirtShare Dedicate

cgroups NUMA LXC / Docker

KVM

OpenStack control of compute resources

Ironic Magnum Nova

Page 7: Redfish and python-redfish for Software Defined Infrastructure

What is Ironic ?

● Ironic is the OpenStack bare-metal deployment project

– Usable as a Nova driver or Standalone since Kilo

– Provides common API across HW vendors and physical/virtual resources

– Uses drivers to abstract interactions with HW

Page 8: Redfish and python-redfish for Software Defined Infrastructure

What is Redfish ?● A DMTF standardisation effort

– HW Management REST API specification proposal (v1.00a) – DSP0266

– JSON and XML (Odata CSDL) based Schemas – DSP8010

– Mockup to be integrated in an existing web server to simulate a Redfish system– DSP2043

– Available at http://www.dmtf.org/standards/redfish

– Initially promoted by Dell, Emerson, HPE and Intel● In simpler terms ?

– This is an IPMI replacement (easier, more complete, more secure)

– This is a way to get and set HW configuration items on physical platforms using a RESTful API => easy and reliable automation

– The future management path of most platform

Page 9: Redfish and python-redfish for Software Defined Infrastructure

Why Redfish ?● Security

– Uses known and widely used methods (https, RESTful API)

● Better HW description

– Notions of Chassis (Blades), Multi-Node platforms (such as Moonshot)

● Supports Manufacturer extensions

– Like SNMP via private extensions described in additional schemas

● Standard across different manufacturers

– Ease management at scale for heterogeneous environments

– Tool or Tool-less access possibilities

Page 10: Redfish and python-redfish for Software Defined Infrastructure

Redfish Timeline● DMTF published Redfish 1.0 the 4th of August 2015

– Will increase adoption (already 50%+ of servers)

– Provides iLO type of features in a standard way

– JSON/Odata based schemas to describe resources

– Mockup to allow developers to test wrt Redfish

– Documentation, white papers, FAQ

– Available online at https://www.dmtf.org/standards/redfish

● Available in HPE Servers equiped with:

– ILO 4 (FW v2.30+)

– Moonshot Chassis Manager

Founding members

Additional sponsors

Page 11: Redfish and python-redfish for Software Defined Infrastructure

● A python library to manage Redfish compliant systems– Open Source project under the Apache License v2.0

– Initiated the 25th March 2015 during the 7th HPE TES in Grenoble.

– Available at:● https://github.com/devananda/python-redfish (official upstream)

● https://github.com/bcornec/python-redfish (Bruno's version)

● https://github.com/uggla/python-redfish (René's version)

– Discussions on [email protected]

– Python dependencies: python-requests & python-tortilla

● Easy integration of Redfish support into python based applications

● Potential consumers:– a Redfish client tool based on that library (preliminary work done as part of the project)

– Used by OpenStack Ironic to provide Redfish support

– Used by python scripts for Lab setup, SDI demos

– Used by Alexandria (CMDB as a Service)

– Future usages with cobbler, anaconda, ...

python-redfish description

Kick-off at TES (left to right): Bruno Cornec, Samer El-Haj Mahmoud, Devananda van der Veen, Scott Hinchley, René Ribaud, Vincent Misson (not on screen)

Page 12: Redfish and python-redfish for Software Defined Infrastructure

● Status:– Project still in infancy (v0.2)

– Core library ready:● Bios info,

● Power management

● Demos scripts available

– Client tool in progress

– Docker file for testing with DMTF mockup container

– Tests performed with:● DMTF mockup (0.95 & 1.0)

● ProLiant servers (0.95 & 1.0)

● Moonshot chassis Managers (0.95)

– Python dependencies already available in Mageia and Fedora

– Packages built with project-builder.org (rpm, deb to come)

● Roadmap:– v0.3: package build with project-builder.org, NICs collection, first client version, improved debug

– Work on Ironic needed interfaces (virtual media, PXE boot, HTTP boot, power management)

– Work on Alexandria needed interfaces (inventory)

python-redfish Status & Roadmap

Page 13: Redfish and python-redfish for Software Defined Infrastructure

Combining Ironic & Redfish● Ironic is the bare-metal deployment project of OpenStack

● Ironic can be used standalone (Redfish deployment server) or with OpenStack

● Ironic already has drivers for BMCs

– iLO, IPMI

– Integration == a Redfish driver, based on python-redfish, derived from the iLO one

● Create a standalone test environment based on Docker

– A Container for running Ironic standalone

– A Container for emulating a Redfish based platform (done)

– A series of test to activate the combination at software level.

+

Page 14: Redfish and python-redfish for Software Defined Infrastructure

Redfish in SDI● Demonstrations of Redfish in the SDI CoE

– Proposed at EG EMEA SDI Program Management

– Proposed as a central component for Hybrid-IT demos to EMEA Hybrid-IT VP

● Need a link with a CMDB to offer a fully integrated SDI solution...

+

Page 15: Redfish and python-redfish for Software Defined Infrastructure

Infrastructure Assets

Software

3Par IPMI iLORedfish

Docker IMC Ironic

API

HLM

Alexandria is a software that will help interconnect everything… and maybe automate a datacenter!

CMDB iTop

Combining Redfish & Alexandria

iTopAlexandria

https://github.com/uggla/alexandria

Alexandria

Drivers

Endpoint

Page 16: Redfish and python-redfish for Software Defined Infrastructure

Combining Redfish & Alexandria● Use case: manage a new server just installed in the DC

– Connect to power and BMC network at least

– Collect BMC credentials and network conf

– Create manually an entry for this new server in the CMDB with these params

– Use Redfish to connect to BMC and collect all other info needed by the CMDB

– Use Redfish to provide info to Ironic to deploy the machine

– Use cron to regularly maintain info in CMDB and Ironic up to date

● Working first on a solution with iTop as the CMDB, Redfish for inventory, to have a full Open Source SDI one

Page 17: Redfish and python-redfish for Software Defined Infrastructure

1/11/16 Private | Confidential | Internal Use Only

”Changes are never easy to make. There is comfort and safety in tradition, but change must come, no matter how painful or expensive it may be.”

Bill Hewlett

[email protected](Open Source and Linux Technology Strategist

at the HP/Intel Solution Center)

http://downloads.linux.hpe.com/

Linus Torvalds, Richard Stallman, Eric Raymond, Nat Makarevitch, René Cougnenc, Eric Dumas, Rémy Card, Bdale Garbee, Bryan Gartner, Craig Lamparter, Lee Mayes, Gallig Renaud, Andree Leidenfrost, Phil Robb, Bob Gobeille, Martin Michlmayr among others, for their work and devotion to the Open Source Software cause... and my family for their patience :-)

THANK YOU