Hyrax Admin Interface

From OPeNDAP Documentation
Jump to: navigation, search

This is a place to start discussing peoples desires/needs for a Hyrax Administrators Interface (HAI).

1 Background

Members of the Hyrax users community are developing robust, highly available data services in operational settings, and have asked for an administrators interface that will allow them to monitor, control, reconfigure, and debug the Hyrax frontend and backend servers from a single console.

Additionally, to support external services integration with the Hyrax data catalog and service, Hyrax needs to provide an administration interface for service configuration and data catalog changes (e.g. adding new data sets to a catalog). Example of an external service integration with Hyrax is an organisation's digital library service for registering and maintaining access to data products. Once the user registers a new data set including data location and data access rights, the user may select an access service and protocol such as Hyrax OPeNDAP or WMS. This external service will connect to a Hyrax service using the Hyrax Administrators Interface to add a new data set to the catalog.

This page is the starting point for organizing the design work for the Hyrax Administrators Interface (HAI).

2 Definitions

The administrator is the human that operates the HAI.
The user is a human that uses client software such as Kepler, Matlab OPeNDAP Ocean Toolbox, a web browser, and others to make requests (HTTP, SOAP, etc.) of the Hyrax server.
Operator Console
The 24x7 operator's console to monitor and control the data services as well as the user data requests, and receive service notifications.
Administrator Console
The system administrator's console to monitor, control, reconfigure, and debug the Hyrax frontend and backend servers, and receive service notifications.

3 Logging and Control Features

3.1 Secure log-in for administration - Implementation

Provide an secure login services for Hyrax that allow an administrator to login to (and eventually control) the server.

3.1.1 Use Cases Administrator Logs into the Hyrax Admin Interface
First draft checked into SVN. In order to do this it simply required a carefully defined set of security constraints in the web.xml for Hyrax in addition to configuring and enabling tomcat to use SSL.--ndp 13:53, 28 April 2011 (PDT)

3.2 Control the server (starting, stopping, reconfiguration) - Implementation


Provide a secure user interface that allows an authorized user to start, stop, and reconfigure the server.

3.2.1 Use Cases Stop and Start a BES
BES Control Design Page

Prototype complete Examine BES processes

Prototype complete

3.3 Access to the running logging information - Implementation

Provide a secure user interface that allows an authorized to view (and eventually control the granularity of) the servers logging output.

3.3.1 Use Cases View OLFS and BES logs
First draft of the OLFS log viewer checked into svn. Log monitoring can be stopped and started via a web based gui. The gui needs to support modifying what is getting logged (which packages/classes) and at what log level (debug,info,warn,error,all). --ndp 13:53, 28 April 2011 (PDT)

Prototype complete Control OLFS debugging

Prototype complete Control BES debugging


Design: Control BES Debugging

3.4 Add new datasets to the server - Design & prototype implementation

3.4.1 Use Cases

This topic is a bit of red herring since users cannot add datasets to Hyrax and adding datasets to a server can be accomplished by storing the data files anywhere a BES can read them (including using symbolic links). However, what BOM wants is maybe better characterized as 'authorization'. This is covered in our design for the authentication and authorization services (link below). Add a new dataset to the Hyrax catalog

4 User Management Features

Response size limits done; Design for authentication done

4.1 Limit response sizes for non-authenticated users - Implementation

Provide a mechanism that allows the administrator to configure hyrax so that users that are not authenticated will only be allowed to receive data responses that are smaller than an adjustable threshold size.

4.1.1 Use Cases

4.2 Secure user sessions - Design

Secure user sessions involves two basic activities: Authentication (Ac) and Authorization (Az). Authentication is the process in which the server identifies a particular user. Authorization is the process that determines what a user can do or see on the server.

DAP: Authentication Discussion

4.2.1 Use Cases User gets an authenticated session. User gets a secure session. Authentication mechanism compatibility with OC and Java DAP libraries (This is a high priority case)

4.3 Create administration interface to control users' capabilities - Design

Description here...

4.3.1 Use Cases Manage user access rules. Limit response sizes.
Design: Limit Response Sizes

Prototype partly complete

5 NetCDF File Support

5.1 Features

  1. Support for linking the handler with the new API (Adds chunking and compression) - Implementation Complete
  2. Support for the new API features that are compatible with DAP2 - Implementation

6 Deliverables

7 Period of use

The API features are to be permanent features in the Hyrax data service for use in building administrator and operator console applications to support an operational data service. The operational Hyrax data service is to support various service level access (SLA) requirements and provide timely, reliable data delivery with transaction logging.

8 Additional Desired Hyrax Admin Interface Features