From Fedora Project Wiki
(Add documentation)
(add dependencies and contengy plan)
Line 48: Line 48:


== Dependencies ==
== Dependencies ==
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
 
* lvm2-cluster
* asterisk (openais plugin)
* qpidc (corosync libcpg user)
 
All packagers and upstreams have been informed upfront and worked together to achieve this goal.
 
All changes are already part of the Fedora archive as rawhide build 9 Jul 2009 (rawhide report: 20090709 changes confirms).


== Contingency Plan ==
== Contingency Plan ==
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "None necessary, revert to previous release behaviour."  Or it might not.  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
 
None necessary


== Documentation ==
== Documentation ==

Revision as of 18:53, 9 July 2009

Cluster

Summary

Update the corosync/openais/cluster/clvm stack to the latest stable releases. The new upstream versions brings a new and more powerful cluster stack to the end user.

Owner

Current status

  • Targeted release: Fedora 42
  • Last updated: 9 Jul 2009
  • Percentage of completion: 99%

Detailed Description

Upstream has been developing the new version of the stack with several goals in mind, including better scalability, higher perfomance, increased reliability, more hardware support, and lays down the path of better integration with other cluster solutions (such as heartbeat and pacemaker) by sharing the same core compoments.

Benefit to Fedora

Scope

How To Test

User Experience

Dependencies

  • lvm2-cluster
  • asterisk (openais plugin)
  • qpidc (corosync libcpg user)

All packagers and upstreams have been informed upfront and worked together to achieve this goal.

All changes are already part of the Fedora archive as rawhide build 9 Jul 2009 (rawhide report: 20090709 changes confirms).

Contingency Plan

None necessary

Documentation

  • The Corosync Cluster Engine
    • Provides a plug-in based cluster engine using the virtual synchrony communications model.
      • Well considered plugin model and plugin API
      • Ultra high performance messaging, up to 300k messages/sec to a group of 32 nodes for service engine developers
      • Provides most services for service engine developers
      • Standard on many Linux distributions for portable application development
      • Works with mixed 32/64bit user applications, 32/64 bit big and little endian support
      • Full IPv4 or IPv6 support
    • Default plug-in service engines and C APIs:
      • Closed Process Group Communication C API for cluster communications
      • Extended Virtual Synchrony passthrough C API for cluster communications at a lower level
      • Runtime Configuration Database C API for cluster configuration
      • Configuration C API for runtime cluster operations
      • Quorum engine C API for providing information related to quorum
    • Reusable C Libraries or headers tuned for high performance and quality
      • Totem Single Ring and Redundant Ring Multicast Protocol library
      • Shared memory IPC library with sync and async communications models usable by other projects
      • logsys flight recorder which allows logging and tracing of complex applications and records state in core files or at user command library
      • 64 bit handle to data block mapping with handle verification header
  • The openais Standards Based Cluster Framework which provides an implementation of the Service Availability Forum Application Interface Specification to provide high availability through application clustering:
    • Packaging and design changes
      • All core features from openais related to clustering merged into The Corosync Cluster Engine.
      • openais modified to work as plugins to the Corosync Cluster Engine
    • Provides implementation of various Service Availability Forum AIS Specifications as corosync service engines and C APIs:
      • Cluster Membership Service B.01.01
      • Checkpoint Service B.01.01
      • Event Service B.01.01
      • Message Service B.01.01
      • Distributed Lock Service B.01.01
      • Timer Service A.01.01
      • Experimental Availability Management Framework B.01.01
  • cluster is now based on both corosync and openais and offers:
    • pluggable configuration mechanism:
      • XML (default)
        • Configuration schema updated moved from Conga to cluster
      • LDAP
      • corosync/openais file format
    • Cluster manager (cman):
      • Now runs as part of corosync
      • Provides quorum to all corosync subsystems
      • Enhanced configuration-free running
      • Better handling of configuration updates
      • Quorum disk (optional) now supports mixed-endian clusters
    • fence / fence agents:
      • Improved daemon logging options
      • New operation 'list' that prints aliases with port numbers
      • Support for new devices and firmware: LPAR HMC v3, Cisco MDS, interfaces MIB (ifmib)
      • Fence agents produce resource-agent style metadata
      • Support for 'unfence' operation on boot
    • rgmanager:
      • Better handling of configuration updates
      • Uses same logging configuration as the rest of the cluster stack
    • clvmd:
      • Run-time switchable between cman or corosync/dlm cluster interfaces

Release Notes

Comments and Discussion