TKCluster
Tom Kunz
Linux has shown a lot of growth in the area of data-centric, high-availability
clustering. Most admins are already familiar with computational clusters, known
loosely as Beowulf clusters, which are implemented in the form of MPI, PVM,
LAM, MOSIX, and other process-sharing and process-distributing technologies.
There are also "Web service clusters", such as those distributed in years past
by TurboLinux and others. These were typically groups of similarly configured
servers that used DNS and round-robin IP address tricks to give the illusion
of Web server high-availability to end users.
Cohesive operation between the nodes, however, was still only achieved through
a shared-storage medium, such as Fibre Channel or shared SCSI, which are prohibitively
expensive for small businesses, or proprietary cluster hardware and software,
which is also prohibitively expensive. A database engine that serves a Web cluster
must still itself be clustered to achieve true high-availability. Application-level
high-availability tools (such as the MySQL database engine) that transparently
replicate themselves between servers, are also being used to provide some level
of redundancy.
The one area in which Linux still starves for attention is in the realm of
lightweight, easily configured, affordable high-availability -- a general-purpose
cluster. A general-purpose, high availability cluster must be "application agnostic"
-- it should not care what runs on it, whether it be Web server, mail server,
database server, or any future, yet-unknown type of service. The cluster should
give a uniform style of operation no matter what application is running.
In response to this, I have written TKCluster (when I initially wrote it,
I couldn't think of a good name for it, so I just prefixed "cluster" with my
initials).
|