Product SiteDocumentation Site

5.12. Инфраструктура кластера HA

This section highlights changes and additions to the clustering tools in Fedora 10.

5.12.1. Новые возможности

В этом разделе описаны детали новой кластеризации высокой доступности.
  • Движок кластера Corosync
    • Модальный движок кластера использует виртуальную модель синхронной коммуникации
      • Теперь рассмотрим модульную модель и модульный API
      • Ультра высокая эффективность шины данных, выше 300 000 сообщений в секунду на группу из 32 узлов для движка разработчиков.
      • Предоставляет наиболее
      • Standard on many other Linux distributions for portable application development.
      • Works with mixed 32/64 bit user applications, 32/64 bit big and little endian support.
      • Full IPv4 and IPv6 support
    • Provides the following plug-in service engines and C APIs
      • Closed Process Group Communication C API for cluster communication
      • 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

5.12.2. Packaging Changes

A lot of effort has been expended to cleanup the packages and to make them as complete, intuitive and modular as possible, allowing also external entities to reuse most of the infrastructure without the requirement to pull the whole stack in.
With the new package reorganization, users will find it easier to update their cluster. The introduction of fence-agent and resource agent packages will avoid the pain for users to restart cluster nodes for simple script updates.