Skip to content

A Java library and server to monitor hardware using the DMTF Redfish specification.

License

Notifications You must be signed in to change notification settings

RedHelixOrg/RedHelix-1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#RedHelix GitHub Repository Date October 11, 2015, Version 0.2

##Overview RedHelix is a Java library and a server to monitor hardware using the DMTF Redfish specification. The RedHelix server uses the Redfish specification to monitor multiple devices. It builds a in memory database representing the inventory and status of the devices and provides a Restfull API to query the history of the devices.

License

All RedHelix software is under the Apache 2.0 license.

Redfish vs. RedHelix

While both Redfish and RedHelix manage servers using a RESTful interface they differ on the Graphics User Interface, RESTful protocol and how concisely hardware is defined. For more detail look at Redfish vs. RedHelix

Development Status

  1. RedHelix Development Status
  2. RedHelix Development Guidelines

##Roadmap As of September 13, 2015 RedHelix is developing with the DMTF mockup files found in DSP2043_0.99.0. Development will proceed in this order.

  1. A browsers interface to RedHelixDb using AngularJs.
  2. Implement the Java threads used to monitor a single Redfish server and store the chassis information in the RedHelixDb database.
  3. Standalone server called RedHelixDb containing an in memory databases of the Chassis and Computer System.

Architecture

RedHelix is designed to run in a single Java Virtual Machine(JVM). The connection to manage servers implementing Redfish is accomplished using the Apache Olingo Olingo. library for version 4 of the OData protocol. The connection to the Web Browsers will use Google's AngularJS, an implemntation of JavaScript. As of RedHelix 0.1 this has not been implemented. RedHelix Architecture

An overview of the architecture is found at RedHelix Design

OEM Extensions

Redfish allows OEM extensions to the Chassis, Computer System, etc. It's not clear how these will be implemented. If you are implementing an OEM extension, even if it is not yet working, please contact me. I'll try and build a framework to allow it.

RedHelix Mockup

The output of the test program RedHelixClientReport when used with Redfish mockup file can be viewed How to read

Building

From the dir RedHelix-1/redhx-build-all run the command

The version number of the maven projects such as Olingo, spring is changed in the file RedHelix-1/redhx-build-all/pom.xml

mvn package

Running

After building the software in can run with the Redfish mock server using the command.

SQL Database setup

A connection to SQL database is necessary. For MySql Login in mysql under an account that has all privileges and run.

  1. CREATE USER 'redHelixAdmin'@'localhost' IDENTIFIED BY 'redHelixAdmin';
  2. GRANT ALL PRIVILEGES ON . TO 'redHelixAdmin'@'localhost' WITH GRANT OPTION;
  3. CREATE DATABASE RedHelixMoon;

If the SQL user name or password need to be changed edit the file:

./redhx-build-all/redhx-server-db/src/main/resources/hibernate.cfg.xml

Mockup Changes

From the dir redhx-build-all run:

  1. java -Dparam_protocol="http" -Dparam_hostname="localhost" -Dparam_port="9080" -jar ./redhx-server-util/target/redhx-server-util-0.1-SNAPSHOT.jar If the executable throws and exception indicating a premature End of File when parsing the JSON messages and a single line to the Redfish file server.js. The line to be inserted at line number 104 is

line 103: data = JSON.stringify(data, null, ' ');

line 104: data = data +" "; // a hack to so that the last char is read by function head() that is below.

About

A Java library and server to monitor hardware using the DMTF Redfish specification.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages