ClusterStack
Launchpad Entry: server-maverick-clusterstack
Created: 26 May 2010
Contributors: AnteKaramatic
Packages affected:
Summary
This specification focuses on fully integrated cluster stack. It defines which tools are going to be used to define high availability and load balancing cluster system.
Release Note
Pacemaker, with corosync as a messaging layer, is now default cluster resource manager. Other components of cluster stack include DRBD and keepalived. Support for CLVM, OCFS2 and GFS2 is included.
Rationale
Up till now, default cluster system in Ubuntu was Red Hat Cluster System. Even though it's a good platform, not many system administrators use it in Ubuntu. Most of the administrators rather use heartbeat. Heartbeat 3.0 isn't a full cluster suite anymore.
There's an intention to bring all Linux clustering options more closer to each other. Pacemaker was chosen as a base for this project. So, Ubuntu needs to keep track with upstream and define it's cluster stack according to decisions made at the Cluster Summit in Prague, 2008.
Use cases
- Rick wants fail over cluster for his MySQL service. He installs predefined cluster stack and configures MySQL service.
- Matt already has Red Hat Cluster Suite setup in Ubuntu 10.04 and he wants to migrate to Ubuntu 10.10 and this new cluster stack we offer.
Design
Components of cluster stack
- pacemaker
- openais
- corosync
- cluster-glue
- cluster-agents
- redhat-cluster-suite
- drbd
- keepalived
- heartbeat
Pacemaker
Pacemaker is core of new cluster stack. It's job is to start, stop and monitor resources which cluster provides. It can use corosync or heartbeat3 as a messaging and membership layer.
For Maverick, corosync will be default messaging and membership layer. Pacemaker with heartbeat as a messaging layer will also be provided.
OpenAIS
OpenAIS provides extensions to Corosync which are required for clustered file systems, such as GFS2 and OCFS2.
Corosync
Corosync is a messaging layer between cluster members. Corosync Cluster Engine allows any third party to implement plugin cluster services using the infrastructure provided.
Red Hat Cluster Suite
Until now, Red Hat Cluster Suite was the supported cluster stack in Ubuntu. It's also based on corosync. We should provide migration documentation or tools for those that want to move from Red Hat Cluster Suite to Pacemaker.
Parts of RHCS, such as locking library, are required for clustere filesystems. One of supported file systems, GFS2, comes from RHCS.
DRBD
DRBD is a block device that enables network RAID1 mirrors. Default cluster stack in Ubuntu should provide tools for managing clusters with DRBD devices.
Cluster-glue, Cluster-agents, Heartbeat
These are libraries and binaries which are required for Pacemaker. Among them are resource agents and stonith binaries.
Keepalived
This is and will continue to be supported load balancing solution.
Implementation
Please look at whiteboard of server-maverick-clusterstack.
Test/Demo Plan
"This need not be added or completed until the specification is nearing beta."
Unresolved Issues
One of the libraries depends on obsolete and unmaintained libesmtp5 library. We need to find a workaround for it or build the library wihtout the support for smtp.
BoF agenda and discussion
UDS-M notes
== Goals == * Upstartify Cluster Stack initialization scripts * Find a solution for an upstart bug (no exit codes) * should be fixed in Maverick * Upload new version of rhcs built with support for pacemaker * Demote cman, rgmanager (keep libdlm, gfs and co.) * Create cluster task for tasksel * Corosync * Pacemaker * ifenslave * Documentation * multiple levels of fencing * Improve bonding in installer * UEC/Eucalyptus OCF RA's * needs investigation * Cloud Loadbalancing solution * different session * Puppet == Requests == * PVFS2 (pvfs.org) * Monitor cluster stack
ClusterStack (last edited 2010-05-26 10:44:44 by 82)