HA高可用集群学习笔记

前言

  什么是HA?HA做什么用的?

  HA(High Available)是高可用集群,是保证业务不中断性的有效解决方案;通常HA集群部署在多个节点,正在提供服务的节点成为活动节点,没有提供服务的是非活动节点;当活动节点发生故障,非活动节点会转为活动节点,向外提供服务,以保证业务的连续性;这就是HA。

一、HA(High Available)的基本结构

                       QQ图片20150624102054.png

1)Messaging Layer: 信息层

   用于节点之间传递心跳信息、传递事务信息;

 常见的有以下几类:

 Openais标准:

   heartbeat v1,v2,v3(heartbeat的三个版本)

   corosync

   cman

 非Openais标准:

   keepalived

 

2)Cluster Resource Manager:CRM, 集群资源管理

   接受上层对资源的管理,接受底层信息传递信息,以及提供接口给用户,让用户进行定义资源;

  常见的有以下几类:

  heartbeat v1:resource manager

   配置接口:/etc/ha.d/haresource

  heartbeat v2:crm;在各个节点运行crmd进程

   配置接口:crmsh(CLI客户端);hb_gui(GUI客户端)

  heartbeat v3: pacemaker;以插件方式运行或运行为独立进程  

   配置接口:crm、pcs(CLI客户端);hawk、LCMC、pacemaker-mgmt(GUI客户端)

 rgmanager:RHCS

   配置接口:clsat、cman_tool(CLI客户端);Conga(GUI客户端)

  

3)Resource Agent:RA

  常见的有以下几类:

  heartbeat legacy:传统类型的资源代理,通常位于/etc/ha.d/目录下

  LSB: 通常位于/etc/rc.d/init.d/目录下的脚本;至少能够接受{start|stop|restart|status}等参数

  OCF:Open Card Framework;其子类别:provider

  STONITH:专用于让当前节点使用STONITH设备的资源

 

二、Resource:资源

 1)资源分类:

  primitive: 主类资源,只能在于某个节点运行一份(native);

  group:组资源,也称容器;包含一个或多个资源,这多个资源需要运行于同一个节点;

  clone:克隆资源;可以在同一个集群内部于多个节点运行多份克隆; 

  master/salve:主从资源;在同一个集群内部于一个或两个节点运行两份,而此两份有主从关系;

 2)资源的约束关系:

  location:位置约束;资源对节点的倾向性;-∞,+∞

  colocation: 排列约束;定义资源在一起的倾向性;-∞,+∞;也可通过资源“分组”实现在一起的功能

  order:顺序;定义资源在某节点启用时的次序;-∞,+∞

 3)资源转移:

  failover: 故障转移

  failback:故障转回

 4)资源隔离:级别

  节点级别:STONITH

   例如:power switch

  资源级别:fencing

   例如:FC SAN switch

    

原创文章,作者:马行空,如若转载,请注明出处:http://www.178linux.com/5627

(1)
马行空马行空
上一篇 2015-06-30
下一篇 2015-06-30

相关推荐

  • 如何在微软Azure云机上添加新磁盘

    大家好: 最近在项目实践中,分享下如何在微软Azure云机上添加新磁盘。 首先需要查看下是否有未用上的磁盘,先fdisk -l查(看下图)并和Azure技术确认该磁盘是否可永久保存数据: 然后找到未分区的磁盘号,如上图中的/dev/sdc,再 fdisk /dev/sdc后开始在该新磁盘上进行分区创建: 为方便管理,我们一般就创建一个分区,然后进行格式化: …

    Linux干货 2016-11-27
  • shell脚本编程的执行语句

    顺序执行     从上到下逐条执行命令,执行完所有命令及退出。 选择执行     (1)&&,||     &&:代表and,&&左侧为真右侧则执行     ||:代表or…

    Linux干货 2016-08-24
  • 磁盘管理之分区管理

                     磁盘管理之分区管理  磁盘一般指的是计算的硬盘,它是计算机五大部件之一,主要用来存储数据。所有它是计算机不可或缺的部件之一。 常见的硬盘分为固态和…

    Linux干货 2016-09-06
  • 8-2 作业

    8-2作业     1.在/data/testdir里创建的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。 2.创建组sales,gid 3000,passwd:centos,sales admins:user2。…

    Linux干货 2016-08-05
  • Linux文件管理命令和bash基础特性

    1、Linux上的文件管理命令都有哪些,其常用的使用方法及其相关示例演示  文件管理命令:mkdir,rmdir,cp,mv,rm,cat,tac,head,tail,more,less mkdir命令:   mkdir – make directories   mkdir [OPTION]… DIREC…

    2017-07-13
  • Shell脚本中循环浅析

    在shell脚本中,循环是很重要的一环。循环可以不断的执行某个程序段落,直到用户设置的条件达成为止。在shell中,除了这种依据判断时达成与否的不定循环之外,还有另外一种已经固定要跑多少次的循环,可称之为固定循环。下面,我们主要对for,while,until三种循环做一下介绍。   一、for循环 For循环是给定变量列表的固定次数循环,其执行机…

    Linux干货 2016-08-21