ݺߣ

ݺߣShare a Scribd company logo
Quo vadis Linux-HA?



Developments in Linux
   Clustersoftware
   Michael Schwartzkopff
  misch@schwartzkopff.org



                   (c) Michael Schwartzkopff, 2011   1 / 26
Background




         (c) Michael Schwartzkopff, 2011   2 / 26
Linux Clustersoftware

   Linux Virtual Server
       Scales nicely...
        but is not high available.
   Linux-HA
       Offers high availability ...
        but does not scale.

       Code is not maintained any more.
       Is beeing replaced by a collection of other
        programs.
                                        (c) Michael Schwartzkopff, 2011   3 / 26
Linux-HA Version 1 (heartbeat)

   Two servers exchange heartbeats.
   If the standby server does not receive
    heartbeats from the active node any more it
    starts the services.
   Configuration in a plain text file haresources.
   Cons:
       No monitoring of the services.
       No management of the resources.


                                         (c) Michael Schwartzkopff, 2011   4 / 26
Linux-HA Version 2 (CRM)

   Mangement of the resources by a
    Cluster Resource Manager (CRM):
       Aktive monitoring of the reosurces by the cluster
        software.
       Up to 16 nodes in a cluster.
       Resources free moveable between the nodes.
       Communication in the cluster via heartbeat.
       Constraints determine which resource should run
        on what node.


                                        (c) Michael Schwartzkopff, 2011   5 / 26
Constraints in Linux-HAv2

   Order
    A resource should start before or after an other
    resource.
   Colocation
    A resource should run on the same node as an
    other resource.
   Location
    A resource should run on a node with specific
    attributes.

                                  (c) Michael Schwartzkopff, 2011   6 / 26
Features of Linux-HAv2?

   Pros
       Monitoring of the resources.
   Cons
       Configuration in XML.
       Administration via the command line.
       GUI not really usable.
       Not maintained any more after 2007 (version 2.1.4).




                                       (c) Michael Schwartzkopff, 2011   7 / 26
Linux-HA


Managment                        CRM


Utilities
                 heartbeat     heartbeat

Communication



                Linux-HAv1    Linux-HAv2




                                   (c) Michael Schwartzkopff, 2011   8 / 26
Restart

   If the CRM uses heartbeat only for the
    communicaton in the cluster, this could be done
    also by another program.
   The other software was OpenAIS.
   The developers organized the CRM code in a
    separate project called pacemaker. It uses
    either heartbeat or OpenAIS.
   Some utilities from the heartbeat-package
    were still nescessary.

                                 (c) Michael Schwartzkopff, 2011   9 / 26
pacemaker

Managment
                               CRM                       pacemaker


Utilities


                heartbeat    heartbeat             heart-
                                                    beat
Communication
                                                                   OpenAIS


                Linux-HAv1   Linux-HAv2                  pacemaker




                                          (c) Michael Schwartzkopff, 2011    10 / 26
pacemaker

   Uses heartbeat or OpenAIS.
   Suitable GUI.
   Own subshell additional to the CLI.
   Sandboxes for testing.
       First test what would happen, if ...
         only afterwards activate the new configuration.
   Exact history, what happened why.



                                      (c) Michael Schwartzkopff, 2011   11 / 26
pacemaker: The GUI




             (c) Michael Schwartzkopff, 2011   12 / 26
Sandboxes with graphics!




                (c) Michael Schwartzkopff, 2011   13 / 26
The development goes on

   OpenAIS offers much more as needed by
    pacemaker. The communication stack is
    forked into a separate project called corosync.
   corosync is responsible for the
    communication in the cluster.
   OpenAIS takes care for all higher services in
    a cluster.
   Simple clusters with pacemaker only need
    corosync.

                                 (c) Michael Schwartzkopff, 2011   14 / 26
Decomposition of heartbeat

   With pacemaker 1.0.5, heartbeat is
    decomposed into three projects:
       cluster-glue includes all nescessary utilities.
       The package resource-agents combines all
        resource agents, the interface between pacemaker
        and the application's binaries.
       In heartbeat (version  3.0.2) remains, what is
        left from the project.



                                      (c) Michael Schwartzkopff, 2011   15 / 26
HA-cluster with Linux

Management                               pacemaker                    pacemaker
                            CRM


                                                                       resource-
                                                                         agents
Utilities

                                                                      cluster-glue
             heartbeat    heartbeat    heart-
                                        beat


Communi-                                                           heart-         coro-
cation                                          OpenAIS
                                                                    beat          sync



             Linux-HAv1   Linux-HAv2     pacemaker               pacemaker  1.0.5


                                                (c) Michael Schwartzkopff, 2011           16 / 26
Master Control Process

   pacemaker in version 1.1 got a Master Control
    Process. So it can be started outside from
    corosync though the init-system.
   Of course, corosync has to be running.
   Causes less trouble.
   Is more stable.




                                (c) Michael Schwartzkopff, 2011   20 / 26
DRBD Managment Console

   From company Linbit.
   Written in Java.
   Originally ment to manage DRBDs
   Now full blown cluster management tool:
       Nodes, resources, constraints
       Graphical representation of the configuration
       Emphasis on virtual machines: Config & console.



                                        (c) Michael Schwartzkopff, 2011   21 / 26
Utilizations in pacemaker 1.1

   Every node has utilizations like CPUs, RAM
    configured.
   Every resource has utilizations configured.
   The cluster manager takes care that resources
    only run on nodes with enough utilizations.

   TODO: Make resource utilizations dynamic.



                                 (c) Michael Schwartzkopff, 2011   22 / 26
Role Based Access Model

   From version 1.1 administrators access to
    resources can be limited:
       You can only destroy your own resources.
   Complete RBAC model implemented.
   Think about a provider offering HA services.




                                     (c) Michael Schwartzkopff, 2011   23 / 26
External Quorum Providers

   Quorum descisions are quite simple up to now.
   corosync can use external quorum providers.
   cman is a possible external provider.
       For now it is the only one.




                                      (c) Michael Schwartzkopff, 2011   24 / 26
Beering


   Lavandevil
    Schusterusstrasse 3

    U Richard Wagner Platz: U7 / M45




                               (c) Michael Schwartzkopff, 2011   25 / 26
Thank you very much for your attention!

             Questions?




                          (c) Michael Schwartzkopff, 2011   26 / 26

More Related Content

Developments in linux

  • 1. Quo vadis Linux-HA? Developments in Linux Clustersoftware Michael Schwartzkopff misch@schwartzkopff.org (c) Michael Schwartzkopff, 2011 1 / 26
  • 2. Background (c) Michael Schwartzkopff, 2011 2 / 26
  • 3. Linux Clustersoftware Linux Virtual Server Scales nicely... but is not high available. Linux-HA Offers high availability ... but does not scale. Code is not maintained any more. Is beeing replaced by a collection of other programs. (c) Michael Schwartzkopff, 2011 3 / 26
  • 4. Linux-HA Version 1 (heartbeat) Two servers exchange heartbeats. If the standby server does not receive heartbeats from the active node any more it starts the services. Configuration in a plain text file haresources. Cons: No monitoring of the services. No management of the resources. (c) Michael Schwartzkopff, 2011 4 / 26
  • 5. Linux-HA Version 2 (CRM) Mangement of the resources by a Cluster Resource Manager (CRM): Aktive monitoring of the reosurces by the cluster software. Up to 16 nodes in a cluster. Resources free moveable between the nodes. Communication in the cluster via heartbeat. Constraints determine which resource should run on what node. (c) Michael Schwartzkopff, 2011 5 / 26
  • 6. Constraints in Linux-HAv2 Order A resource should start before or after an other resource. Colocation A resource should run on the same node as an other resource. Location A resource should run on a node with specific attributes. (c) Michael Schwartzkopff, 2011 6 / 26
  • 7. Features of Linux-HAv2? Pros Monitoring of the resources. Cons Configuration in XML. Administration via the command line. GUI not really usable. Not maintained any more after 2007 (version 2.1.4). (c) Michael Schwartzkopff, 2011 7 / 26
  • 8. Linux-HA Managment CRM Utilities heartbeat heartbeat Communication Linux-HAv1 Linux-HAv2 (c) Michael Schwartzkopff, 2011 8 / 26
  • 9. Restart If the CRM uses heartbeat only for the communicaton in the cluster, this could be done also by another program. The other software was OpenAIS. The developers organized the CRM code in a separate project called pacemaker. It uses either heartbeat or OpenAIS. Some utilities from the heartbeat-package were still nescessary. (c) Michael Schwartzkopff, 2011 9 / 26
  • 10. pacemaker Managment CRM pacemaker Utilities heartbeat heartbeat heart- beat Communication OpenAIS Linux-HAv1 Linux-HAv2 pacemaker (c) Michael Schwartzkopff, 2011 10 / 26
  • 11. pacemaker Uses heartbeat or OpenAIS. Suitable GUI. Own subshell additional to the CLI. Sandboxes for testing. First test what would happen, if ... only afterwards activate the new configuration. Exact history, what happened why. (c) Michael Schwartzkopff, 2011 11 / 26
  • 12. pacemaker: The GUI (c) Michael Schwartzkopff, 2011 12 / 26
  • 13. Sandboxes with graphics! (c) Michael Schwartzkopff, 2011 13 / 26
  • 14. The development goes on OpenAIS offers much more as needed by pacemaker. The communication stack is forked into a separate project called corosync. corosync is responsible for the communication in the cluster. OpenAIS takes care for all higher services in a cluster. Simple clusters with pacemaker only need corosync. (c) Michael Schwartzkopff, 2011 14 / 26
  • 15. Decomposition of heartbeat With pacemaker 1.0.5, heartbeat is decomposed into three projects: cluster-glue includes all nescessary utilities. The package resource-agents combines all resource agents, the interface between pacemaker and the application's binaries. In heartbeat (version 3.0.2) remains, what is left from the project. (c) Michael Schwartzkopff, 2011 15 / 26
  • 16. HA-cluster with Linux Management pacemaker pacemaker CRM resource- agents Utilities cluster-glue heartbeat heartbeat heart- beat Communi- heart- coro- cation OpenAIS beat sync Linux-HAv1 Linux-HAv2 pacemaker pacemaker 1.0.5 (c) Michael Schwartzkopff, 2011 16 / 26
  • 17. Master Control Process pacemaker in version 1.1 got a Master Control Process. So it can be started outside from corosync though the init-system. Of course, corosync has to be running. Causes less trouble. Is more stable. (c) Michael Schwartzkopff, 2011 20 / 26
  • 18. DRBD Managment Console From company Linbit. Written in Java. Originally ment to manage DRBDs Now full blown cluster management tool: Nodes, resources, constraints Graphical representation of the configuration Emphasis on virtual machines: Config & console. (c) Michael Schwartzkopff, 2011 21 / 26
  • 19. Utilizations in pacemaker 1.1 Every node has utilizations like CPUs, RAM configured. Every resource has utilizations configured. The cluster manager takes care that resources only run on nodes with enough utilizations. TODO: Make resource utilizations dynamic. (c) Michael Schwartzkopff, 2011 22 / 26
  • 20. Role Based Access Model From version 1.1 administrators access to resources can be limited: You can only destroy your own resources. Complete RBAC model implemented. Think about a provider offering HA services. (c) Michael Schwartzkopff, 2011 23 / 26
  • 21. External Quorum Providers Quorum descisions are quite simple up to now. corosync can use external quorum providers. cman is a possible external provider. For now it is the only one. (c) Michael Schwartzkopff, 2011 24 / 26
  • 22. Beering Lavandevil Schusterusstrasse 3 U Richard Wagner Platz: U7 / M45 (c) Michael Schwartzkopff, 2011 25 / 26
  • 23. Thank you very much for your attention! Questions? (c) Michael Schwartzkopff, 2011 26 / 26