EBox

From Wikipedia, the free encyclopedia

eBox Platform
(Part of the GNU/Linux family)
Screenshot

eBox Platform running on a PPC Linkstation
Developer
Warp Networks
Web site: www.ebox-platform.com
Release information
Release date: November 30, 2005 info
Current version: 0.8.99 (February 13, 2007) info
Source model: Open Source
License: GPL
Kernel type: Linux 2.6
Support status
Supported
The correct title of this article is eBox. The initial letter is shown capitalized due to technical restrictions.
This article concerns the software framework. For the eBox automobile see AC Propulsion eBox

eBox Platform is an open source framework and distribution, based on the GNU/Linux operating system, intended to manage services in a computer network.

It offers a layer of abstraction and management, accessible through a simple web interface, and also a simplified development environment for new features or customization.

eBox is licensed under GPL and started as an open-source, collaborative project of two companies[1]. It also takes part on Morfeo Project[2]. On 16th November 2006 eBox was officially approved as a NEOTEC project, receiving public funds from the CDTI (a Spanish public organisation, under the Ministry of Industry, Commerce and Tourism) to complete the development of version 1.0[3].

Contents

[edit] Overview

[edit] Features

eBox Platform features are:

  • Open source
  • User friendly
    • Easy to use graphical frontend
    • High level abstraction of networking and workgroup services
    • Context aware help, warning and error reporting
    • Internationalization and multilanguage support
    • eBox Platform Live-CD
  • Efficient management
    • Integration
      • Centralized configuration storage system, exporting and importing to XML format
      • Transactional configuration changes
      • Log registry incorporated
    • Automation
      • Continuous monitorization of services availability and autocorrection of failures
      • Automatic backup
    • Component based installation and update
  • Hardware independent

[edit] Services

[edit] Development

eBox Platform uses an open source model, with all the source code available for its users.

[edit] Design

eBox is a web application using Apache webserver as foundation and Mason components as building blocks, mainly written in object oriented Perl, with some Javascript for visual improvements.

Its design incorporates modern programming techniques as:[4]:

  • Design patterns: an Observer design pattern is used mainly to integrate different modules across eBox Platform. E.g. each service reports about which ports it needs to be open. Besides this, a Singleton holds global configuration and behaviour details.
  • Presentation and logic decoupling: user interface uses CSS and Ajax, and include several Mason components, as a generic table used to configure services. Program logic is held inside library packages and CGI-like code.
  • Fault tolerance: errors and warnings are managed through software exceptions, flowing from core to its handling routine.

It also offers debugging facilities, integrating the layout of the execution stack of the Perl 5 interpreter.

Each service's process is monitored so if it dies, it is respawned automatically.

[edit] Open Source Components

eBox is built upon common Open Source components:


The main programming language used is the Open Source Perl, on top of Mason engine.

Documentation uses Docbook-XML to generate HTML pages. API reference uses Natural Docs.

eBox Platform Live CD is built using Morphix. The whole distribution uses Debian and Debian Installer for non-live media.

[edit] Community

Main eBox community work and support takes place at eBox users' mailing lists, with an English speaking and a Spanish speaking one.

There is also a very active group of Linkstation users which succedeed in porting eBox to PowerPC[5].

[edit] Documentation

[edit] Users

  • Installation guide: holds instructions about different installation methods like CD and Debian packages, and how to get source code and run eBox from scratch
  • User's guide: aimed at software users, introduces some concepts and terminology, and explain different services and use cases

[edit] Developers

  • Developer's guide: targeted at software developers and translators, it explains basic API, module backend, component interaction, web fronted and includes a small example about how to build a sample module from the ground up
  • API reference: class and method's description and parameters

[edit] References

  1. ^ GestiĆ³n libre para las empresas. Retrieved on 2007-03-04.
  2. ^ eBox at Morfeo Project. Retrieved on 2007-03-04.
  3. ^ eBox as a NEOTEC project. Retrieved on 2007-03-09.
  4. ^ eBox developer's guide. Retrieved on 2007-03-04.
  5. ^ eBox on FreeLink-Debian. Retrieved on 2007-03-04.

[edit] See also

[edit] External links

[edit] Official

[edit] Other