Tuesday, September 9, 2014

[Clustering] - Overview of services used in Red Hat Cluster - Part 4 of 4

Overview of services used in Red Hat Cluster

Below are a list of services used in Red Hat Cluster.

ccsd


  • This is an abbreviation used for Cluster Configuration System daemon
  • This is responsible for loading /etc/cluster/cluster.conf and managing configuration versions
  • ccsd is provided by the ccsd package in RHEL 4
  • In RHEL 5 and 6 this package is included in cman package


cman

  • This is an abbreviation used for Cluster Manager. 
  • CMAN is a distributed cluster manager and runs in each cluster node. 
  • It is responsible for monitoring, heartbeat, quorum, voting and communication between cluster nodes.
  • CMAN keeps track of cluster quorum by monitoring the count of cluster nodes.
  • cman package is available in the base channel of RHEL 5 and RHEL 6

clvmd

  • This is a daemon for CLVM (Clustered Logical Volume Manager)
  • In a shared storage red hat cluster scenario where multiple nodes are writing data concurrently to the same storage there comes a probability of metadata being get overwritten or corrupted. So clvmd service is responsible for managing clustered shared storage to reflect the metadata changes instantly on all the cluster nodes using the same storage which removes the possibility of meta data corruption. With this option same volume group or logical volume can be mounted on multiple nodes of a cluster as long as clvmd service is running and cluster is quorate.
  • The daemon clvmd is provided by the package lvm2-cluster in RHEL 5, and RHEL 6

fenced

  • This is a fencing daemon
  • It is responsible for disconnecting a node from the cluster. 
  • When any of the node stops communicating with other nodes(verified using qdisk and cman heartbeat mechanism) of the cluster in that case the inactive node is fenced to avoid corruption of data
  • This is very improtant in a cluster environment to protect the data integrity.
  • In RHEL 5 and RHEL 6 fenced service is started/stopped by cman service
  • It doesnot needs to be downloaded manually unlike RHEL 4, this package is automatically downloaded along with cman package in RHEL 5 and RHEL 6.

qdiskd

  • This daemon is responsible for managing a quorum disk(qdisk).
  • It includes the concept of qdisk i.e. quorum disk. A Red Hat Cluster runs only if Quorate state is achieved which is determined by the no. of active votes representing the cluster. Each node by default counts as one vote. Now in extreme condition when you want your cluster to be running with minimum no. of nodes in those case we use quorum disk having predefined vote count. Now this may sound confusing so let me explain with an example:
For a 3 node cluster a quorum state is present untill 2 of the 3 nodes are active i.e. more than half. But what if due to some reasons the 2nd node also stops communicating with the the 3rd node? In that case under a normal architecture the cluster would dissolve and stop working. But for mission critical environments and such scenarios we use quorum disk in which an additional disk is configured which is mounted on all the nodes with qdiskd service running and a vote value is assigned to it.

So suppose in above case I have assigned 1 vote to qdisk so even after 2 nodes stops communicating with 3rd node, the cluster would have 2 votes (1 qdisk + 1 from 3rd node) which is still more than half of vote count for a 3 node cluster. Now both the inactive nodes would be fenced and your 3rd node would be still up and running being a part of the cluster.

  • The qdiskd daemon is provided by the cman package on RHEL 4, RHEL 5. On RHEL 6 
  • In RHEL 5 and RHEL 6 qdiskd service is started/stopped by cman service

gfs and gfs2

  • This is an abbreviation used for Global File System ( In RHEL 4 and 5 it is gfs and RHEL 6 it is gfs2)
  • These are the services responsible for mounting/unmounting GFS and GFS2 filesystems from /etc/fstab respectively.
  • GFS is a cluster file system that allows a cluster of nodes to simultaneously access ablock device that is shared among the nodes.
  • To maintain file system integrity, GFS uses a lock manager to coordinate I/O. When one node changes data on a GFS file system, that change is immediately visible to the other cluster nodes using that file system
  • The daemon gfs is provided  by the package gfs-utils on RHEL 4 and RHEL 5.
  • The daemon gfs2 is provided  by the package gfs2-utils on RHEL 5 and RHEL 6.

rgmanager

  • This is a service termed as Resource Group Manager
  • RGManager manages and provides failover capabilities for collections of cluster resources called services, resource groups, or resource trees
  • it allows administrators to define, configure, and monitor cluster services. In the event of a node failure, rgmanager will relocate the clustered service to another node with minimal service disruption
  • Commands used under rgmanager are clusvcadm, clustat, clurgmgrd (Daemon used to handle user service), clurmtabd (Daemon used to handle Clustered NFS mount tables).
  • This service is provided by the rgmanager package on RHEL4, RHEL5, and RHEL6

luci

  • It is the server component of the Conga administration utility
  • Conga is an integrated set of software components that provides centralized configuration and management of Red Hat clusters and storage
  • luci is a server that runs on one computer and communicates with multiple clusters and computers via ricci
  • This service needs to be running only on the system having Conga installed.
  • It is provided by the luci package on RHEL 5 and RHEL 6

ricci

  • It is the client component of the Conga administration utility
  • ricci is an agent that runs on each computer (either a cluster member or a standalone computer) managed by Conga
  • This service needs to be running on all the client nodes of the cluster.
  • Conga web utility connects to all the nodes using the ricci dameon.

dlm_controld

  • Daemon responsible for Lock management
  • DLM is a short abbreviation for Distributed Lock Manager.
  • GFS and CLVM use locks from the lock manager to simultanously synchronize the metadata on the shared storage (LVM/Volume Groups).
  • without a lock manager, there would be no control over access to your shared storage, and the nodes in the cluster would corrupt each other's data.
  • In addition, rgmanager uses DLM to synchronize service states.
  • In RHEL 5 and RHEL 6 dlm_controld service is started/stopped by cman service

No comments: