BlueQuartz

from Wikipedia, the free encyclopedia

Blue Quartz is an open source - user interface for virtual Web server . It is the further development of the Sun Cobalt OS. Blue Quartz 'relies on the free CentOS - Operating system on, one to Red Hat Enterprise Linux binary compatible Linux. BlueQuartz also allows Linux laypeople to install, administer and manage a Linux-based web server. The browser-based interface allows the server administrator to create domains and users, manage DNS , FTP access and e-mail accounts. The user interface is available in English, German, Danish and Japanese.

history

Cobalt Networks, Inc.

Cobalt Networks Inc. started in 1996 as a garage company with three employees (Mark Orr, Mark Wu, and Vivek Mehra). The objective was to develop an Internet server that was ready to plug in and delivered preconfigured - even by laypeople - and could be put into operation in a few minutes. In March 1998 this endeavor bore fruit with the launch of the Cobalt Qube.

This cube-shaped server was initially intended as a workgroup computer for small and medium-sized companies, as it offered both web and intranet services. In addition to e-mail, FTP and the web, the Qube also supports the SMB and AppleTalk protocols in order to function as a domain controller in local networks. After the Qube, a similar server in 19 "design and specially tailored for Internet service providers was developed. This product was called RaQ. The RaQ did away with groupware functions. Instead, it offered the possibility of operating up to 250 domains per server Both the Qube and the RaQ have come in different versions over the years, the final version of the Qube being the Qube 3. The final version of the RaQ being the RaQ550.

Sun Cobalt

After Sun had bought Cobalt Networks Inc. for two billion dollars, the further development of the servers formerly developed by Cobalt Networks came to an almost complete standstill.

Although, according to statistics from Netcraft , over 3 million hostnames were running on Cobalt servers in August 2002, Sun discontinued the sale of Cobalt RAQ and Cobalt Qube in 2003 without replacement .

Open source

In July 2003, Sun released the source code of the Qube 3 as open source and under a modified BSD license . In December 2003 the source code of the RaQ550 was released under a modified BSD license.

BlueQuartz project

Immediately after the source texts were published under the BSD license , the starting shot for the BlueQuartz project was given . The aim was to provide alternatives for the Qube 3, which is very popular in Japan, as well as for the RaQ550 based on the now free source code.

When choosing the new operating system, Fedora was initially used , but at the beginning of 2004 there was a switch to the recently released CentOS 4. In its early phase, BlueQuartz had to struggle with some problems, as the architecture on which it is based was partially documented by Sun very inadequately or more detailed documentation could only be provided later by former Sun employees . In addition, several other developers also tried their hand at the source code released by Sun and BlueQuartz had both commercial and open source competitors in the battle for users. In addition, there was the somewhat laborious procedure for installing BlueQuartz in its early phase. To do this, you first had to install and adapt the operating system. Then an installer was started, which reconfigured and adapted the operating system and installed the components of the browser-based user interface . In early 2005, Brian N. Smith of NuOnce Networks, Inc. released a free boot CD that installed and configured both the operating system and BlueQuartz. Only then did BlueQuartz gain increasing acceptance and was initially an option for all those who had to replace a RaQ550 with more modern server hardware.

Commercial interaction during the development of BlueQuartz

In mid-2005, the project manager of Projekt BlueQuartz (Hisao Shibuya) started as a lead developer at Turbolinux, Inc. - a Japanese Linux distributor. There, based on the source code published by Sun for the RaQ550 and from the sources of BlueQuartz, the Turbolinux Appliance Server 2.0, also called TLAS, was developed. TLAS 2.0 was released in March 2006.

Just as BlueQuartz had accelerated the development of TLAS, there was also an information flow in the opposite direction. Improvements to the commercial TLAS also found their way into the BlueQuartz source code. As a result, a conflict of interest emerged, because the BlueQuartz, which was available free of charge, was just as sophisticated and offered a range of functions comparable to that of TLAS 2.0, which cost around 950 US dollars.

Distribution of BlueQuartz

Initially, BlueQuartz was mainly used by former RaQ550 server operators - especially when it came to replacing outdated Sun Cobalt hardware with new ones. But over time, new users who had not previously used RaQ550 servers also joined. According to statistics (as of 04/2008) from Project BlueQuartz, more than 135,000 web servers worldwide run with BlueQuartz (the numbers were collected by counting update processes and may not be representative).

The developers

At the end of 2006, Brian N. Smith from NuOnce Networks, Inc. and Michael Stauber from Solarspeed Ltd. joined the original BlueQuartz developers Hisao Shibuya, Yutaka Yasuda and Makoto Oda. added, both of which have been offering additional software and services for Sun Cobalt servers and their successor systems since 2000. The team was further strengthened by Taco Scargo, a former Sun Cobalt employee.

Further development

Although CentOS 5 was already released in April 2007, the project management of Team BlueQuartz did not make any serious efforts to port BlueQuartz from CentOS 4 to CentOS 5. Separate efforts by individual developers in this direction found no support and little support.

As a result, the BlueQuartz development team split up and under new management an offshoot of the code - under the name BlueOnyx - was developed on a CentOS 5 basis. BlueOnyx contains numerous innovations and was published on December 31, 2008.

While Hisao Shibuya, Yutaka Yasuda and Makoto Oda continue to maintain BlueQuartz, BlueQuartz has an increasingly difficult position due to the departure of important developers and the competition with its successor BlueOnyx.

Basic architecture

Sausalito

The architecture developed by Cobalt Networks Inc. was called Sausalito. Essentially, Sausalito has a modular structure and functions can be retrofitted using modules (e.g. from third-party providers).

Sausalito consists of the following components:

The user interface (UI)

The BlueQuartz administration interface is programmed in PHP . The appearance of the administration interface can be adapted using so-called skins or themes. The UI runs on a customized Apache web server that is bound to special ports (port 81 - HTTP / port 444 - HTTPS). This web server runs as an unprivileged user 'apache'. However, it allows authenticated and privileged users to execute certain narrowly defined functions on the underlying operating system with superuser rights (root).

If an authenticated user - provided he has the appropriate rights - makes a change to the system (e.g. creates a new virtual website), Sausalito writes an entry in an internal database. This database is called CODB - or Cobalt Object Database.

CODB: Cobalt Object Database

The Cobalt Object Database is an object-oriented database for storing parameters, settings and data of the web server. Objects stored in the database belong to classes within which namespaces and contents can be freely defined using XML schemes. It is also possible to directly preconfigure via XML schemes which type of content can be written into a specific namespace within the class and which group of users has write access to this class. A namespace for which the type 'emailAddress' has been defined, for example, can only contain content that corresponds to a valid email address. CODB checks the transmitted data when saving content. On the one hand, it is checked whether the user is authorized for write access and, on the other hand, whether the data to be saved corresponds to the expected type.

CCE: Cobalt Configuration Engine

CCE (Cobalt Configuration Engine) is the interface between the administration interface and CODB (Cobalt Object Database). It takes over the authentication of the users and compares this with the mechanisms for user administration of the operating system. CCE also manages UI database queries in reading and writing.

CCE consists of a daemon that runs constantly in the background, as well as a client that can be used from the command line to carry out administrative functions.

Configuration files

CCE can be configured via configuration files in such a way that it carries out certain operations with superuser rights when certain database fields are created, changed or deleted. In order to carry out such privileged operations, after checking the authorization of the user, CCE starts a handler that carries out this operation.

Handlers

A handler is a script programmed in Perl or PHP that can perform certain narrowly defined tasks on the server's file system with superuser rights. For security reasons, these scripts can only be initiated by CCE itself. Handlers are used, for example, to create users or virtual websites or to adapt the server's configuration files.

Constructors

Similar to a handler, a constructor is a script programmed in Perl or PHP that performs certain tasks on the file system with superuser rights. However, a constructor usually only runs once when the server is started or when the CCE daemon is started. Constructors are used, for example, to read information about the operating system and its configuration and to save this in the Cobalt Object Database.

PHP and i18n

Since the communication between UI and CCE takes place via an adapted i18n module from PHP, PHP is one of the few components on a BlueQuartz that can only be updated to a limited extent or replaced with newer versions. Otherwise the communication between UI and CCE may be interrupted. If you still want to update PHP by several version jumps, we recommend installing the more recent PHP in a separate directory.

operating system

In general, the source code of BlueQuartz can easily be adapted so that it runs on any Linux or Unix derivative. All that is necessary is to make minor adjustments to the source code and to compile the source code for the new platform. Since all further functions of the BlueQuartz surface are modular, modules such as mailing list management, user management or the module for managing virtual websites can be omitted for your own projects based on BlueQuartz. This gives you a well thought-out and sophisticated framework for your own administration interface.

PKGs

PKGs are special packages that allow BlueQuartz to be equipped with additional software regardless of the operating system's update mechanism. PKGs consist of files that have been packed using tar and gzip . A PKG contains RPMs , a list of files to be installed and scripts that run when the PKG is installed or uninstalled.

Related projects

After the source code of the Qube 3 and the RaQ550 were published, various companies and groups tried to build a comparable solution based on this code. Not all were successful.

active

  • BlueOnyx Further development of Bluequartz
  • Aventurin {e} Linux virtualization solution based on BlueQuartz.
  • Strongbolt Linux BlueQuartz + CentOS Distribution for installation on original Sun Cobalt hardware.
  • Turbolinux Appliance Server 2.0 RaQ based on Turbolinux.
  • NetSHAKER BlueRack / Yasukawa Info. systems, Inc. Japanese, based on the RaQ550 code.
  • ClassCat Cute Server Appliance / ClassCat, Inc. Japanese, based on the RaQ550 code.
  • NetBSD on Cobalt servers in English, completely independent of the Linux projects.

Discontinued

  • Argon Renamed TLAS 2.0 pre-installed on hardware.
  • Efinity F-560 RaQ based on FreeBSD.
  • RaQDevil RaQ based on FreeBSD.

Web links

Individual evidence

  1. BlueQuartz: The Cobalt startup story
  2. Press release : Sun buys Cobalt Networks for two billion dollars  ( page no longer available , search in web archivesInfo: The link was automatically marked as defective. Please check the link according to the instructions and then remove this notice.@1@ 2Template: Dead Link / www.pressetext.com  
  3. Netcraft : Cobalt Shows Gains After Source is Opened
  4. TheRegister : Sun drives the final nail in Cobalt's coffin
  5. BlueQuartz: Release of the Qube 3 source code
  6. BlueQuartz: Release of the RaQ550 source code
  7. BlueQuartz mailing list: Complaints about insufficient documentation
  8. Turbolinux, Inc .: Press release on the publication of TLAS 2.0 ( Memento of the original from October 25, 2007 in the Internet Archive ) Info: The archive link has been inserted automatically and has not yet been checked. Please check the original and archive link according to the instructions and then remove this notice. @1@ 2Template: Webachiv / IABot / www.turbolinux.com
  9. Turbolinux, Inc .: TLAS 2.0 product page
  10. BlueQuartz: The team
  11. BlueOnyx : BlueQuartz on CentOS 5
  12. BlueOnyx : Split of the development team
  13. BlueOnyx : The team
  14. BlueOnyx : Announcement of BlueOnyx
  15. BlueOnyx : Announcement BlueQuartz 2.0
  16. Solarspeed Ltd. : Sausalito Developer's Guide (PDF) ( Memento of the original from March 7, 2007 in the Internet Archive ) Info: The archive link has been inserted automatically and has not yet been checked. Please check the original and archive link according to the instructions and then remove this notice. @1@ 2Template: Webachiv / IABot / data.smd.net
  17. Solarspeed Ltd. : The Qube 3 Software Architecture Developer's Guide (PDF) ( Memento of the original from March 7, 2007 in the Internet Archive ) Info: The archive link was inserted automatically and has not yet been checked. Please check the original and archive link according to the instructions and then remove this notice. @1@ 2Template: Webachiv / IABot / data.smd.net