版 本:A修订号:1文件编号:保密级别:文档信息文档名称作者Debian Heartbeat管理手册Cobra修订历史 (REVISION HISTORY)Rev1.0SectionAllTypeNewDate27-Nov-10AuthorCobraRemarks创建文档 第2页/共36页 版 本:A修订号:1文件编号:保密级别:目 录1 HEARTBEAT基础.........................................................................................................................................51.1 HEARTBEAT的概念.......................................................................................................................................51.2 HEARTBEAT的组成.......................................................................................................................................51.3 HEARTBEAT的工作原理...............................................................................................................................82 HEARTBEAT基础条件................................................................................................................................92.1 硬件条件....................................................................................................................................................92.1.1 存储子系统........................................................................................................................................92.1.2 网络子系统......................................................................................................................................102.1.3 Stonith组件......................................................................................................................................102.1.4 Stontih设备......................................................................................................................................122.2 软件条件..................................................................................................................................................132.2.1 Heartbeat与OS...............................................................................................................................132.2.2 其它软件部署规划..........................................................................................................................133 安装规划........................................................................................................................................................133.1 网络规划..................................................................................................................................................133.2 存储规划..................................................................................................................................................143.2.1 本地存储..........................................................................................................................................143.2.2 共享存储..........................................................................................................................................153.3 SONITH规划...............................................................................................................................................153.4 软件部署规划..........................................................................................................................................1 安装与配置...................................................................................................................................................1.1 安装操作系统..........................................................................................................................................1.1.1 选择安装方式..................................................................................................................................1.1.2 选择安装语言..................................................................................................................................1.1.3 配置网络..........................................................................................................................................1.1.4 磁盘分区..........................................................................................................................................174.1.5 设置时区..........................................................................................................................................184.1.6 Root密码..........................................................................................................................................194.1.7 定制软件包......................................................................................................................................204.2 安装HEARTBEAT软件................................................................................................................................214.2.1 创建用户和组..................................................................................................................................214.2.2 安装Heartbeat.................................................................................................................................214.3 HEARTBEAT基础配置.................................................................................................................................224.3.1 配置hosts.........................................................................................................................................224.3.2 开启IP端口.....................................................................................................................................22 第3页/共36页 版 本:A修订号:1文件编号:保密级别:4.4 配置HEARTBEAT.........................................................................................................................................234.5 启动HEARTBEAT..........................................................................................................................................244.6 用GUI配置RESOURCE..............................................................................................................................2.6.1 添加资源IP......................................................................................................................................2.6.2 添加系统资源..................................................................................................................................274.6.3 添加自已定义资源..........................................................................................................................305 日常管理........................................................................................................................................................335.1 状态查看..................................................................................................................................................336 测试用例........................................................................................................................................................35 第4页/共36页 1Heartbeat基础1.1Heartbeat的概念Linux-HA的全称是High-Availability Linux,它是一个开源项目。这个开源项目的目标是:通过社区开发者的共同努力,提供一个增强Linux可靠性(reliability)、可用性(availability)和可服务性(serviceability)(RAS)的群集解决方案。其中Heartbeat就是Linux-HA项目中的一个组件,也是目前开源HA项目中最成功的一个例子,它提供了所有HA软件所需要的基本功能,比如心跳检测和资源接管、监测群集中的系统服务、在群集中的节点间转移共享IP地址的所有者等。自1999年开始到现在,Heartbeat在行业内得到了广泛的应用,也发行了很多的版本,可以从Linux-HA的官方网站http://www.linux-ha.org 下载到Heartbeat的最新版本Heartbeat1.x 支持最大2 个节点,Heartbeat2.x 支持16 个节点。本文测试采用Heartbeat2.x。1.2Heartbeat的组成Heartbeat 提供了高可用集群最基本的功能,例如,节点间的内部通信方式、集群合作管理机制、监控工具和失效切换功能等。目前的最新版本是 Heartbeat 2.x,这里的讲述也是以 Heartbeat 2.x 为主。下面介绍 Heartbeat 2.0的内部组成,主要分为以下几大部分。Heartbeat:节点间通信检测模块:ha-logd:集群事件日志服务。CCM(Consensus Cluster Membership):集群成员一致性管理模块。LRM(Local Resource Manager):本地资源管理模块。Stonith Daemon:使出现问题的节点从集群环境中脱离。CRM(Cluster Resource Management):集群资源管理模块。
Cluster policy engine:集群策略引擎。Cluster transition engine:集群转移引擎。
图18.1显示了 Heartbeat 2.0内部结构组成。
Heartbeat 仅仅是是个 HA 软件,它仅能完成心跳监控和资源接管,不会监视它控制的资源或应用程序。要监控资源和应用程序是否运行正常,必须使用第三方的插件,例如 ipfail、Mon 和 Ldirector 等。Heartbeat 自身包含了几个插件,分别是 ipfail、Stonith 和 Ldirectord,介绍如下。Ipfail 的功能直接包含在 Heartbeat 里面,主要用于检测网络故障,并做出合理的反应。为了实现这个功能,ipfail 使用 ping 节点或者 ping 节点组来检测网络连接是否出现故障从而及时做出转移措施。Stonith 插件可以在一个没有响应的节点恢复后,合理接管集群服务资源,防止数据冲突。当一个节点失效后,会从集群中删除。如果不使用 Stonith 插件,那么失效的节点可能会导致集群服务在多于一个节点运行,而造成数据冲突甚至是系统崩溃。因此,使用 Stonith插件可以保证共享存储环境中的数据完整性。Ldirector 是一个监控集群服务节点运行状态的插件。Ldirector 如果监控到集群节点中某个服务出现故障,就屏蔽此节点的对外连接功能,同时将后续请求转移到正常的节点提供服务。这个插件经常用在 LVS 负载均衡集群中。关于 Ldirector 插件的使用,将在后续章节详细讲述。同样,对于操作系统自身出现的问题, Heartbeat 也无法监控。如果主节点操作系统挂起,一方面可能导致服务中断,另一方面由于主节点资源无法释放,而备份节点却接管了主节点的资源,此时就发生了两个节点同时争用一个资源的状况。针对这个问题,就需要在 Linux 内核中启用一个叫 watchdog 的模块。watchdog 是一个Linux 内核模块,它通过定时向/dev/watchdog 设备文件执行写操作,从而确定系统是否正常运行。如果 watchdog 认为内核挂起,就会重新启动系统,进而释放节点资源。在 Linux 中完成 watchdog 功能的软件叫 softdog。softdog 维护一个内部计时器,此计时器 在 一 个 进 程 写 入 /dev/watchdog 设 备 文 件 时 更 新 。如 果 softdog 没 有 看 到 进 程 写 入/dev/watchdog 文件,就认为内核可能出了故障。watchdog 超时周期默认是一分钟,可以通过将 watchdog 集成到 Heartbeat 中,从而通过 Heartbeat 来监控系统是否正常运行。1.3Heartbeat的工作原理从图18.1中可以看出,Heartbeat 内部结构由三大部分组成。(1)集群成员一致性管理模块(CCM) CCM 用于管理集群节点成员,时管理成员之间的关系和节点间资源的分配。Heartbeat模块负责检测主次节点的运行状态,以决定节点是否失效。ha-logd 模块用于记录集群中所有模块和服务的运行信息。(2)本地资源管理器(LRM)LRM 负责本地资源的启动、停止和监控,一般由 LRM 守护进程 lrmd 和节点监控进程Stonith Daemon 组成。lrmd 守护进程负责节点间的通信;Stonith Daemon 通常是一个 Fence设备,主要用于监控节点状态,当一个节点出现问题时处于正常状态的节点会通过 Fence 设备将其重启或关机以释放 IP、磁盘等资源,始终保持资源被一个节点拥有,防止资源争用的发生.(3)集群资源管理模块(CRM)CRM 用于处理节点和资源之间的依赖关系,同时,管理节点对资源的使用,一般由 CRM守护进程 crmd、集群策略引擎和集群转移引擎3个部分组成。集群策略引擎(Cluster policyengine)具体实施这些管理和依赖;集群转移引擎( Cluster transition engine)监控 CRM 模块的状态,当一个节点出现故障时,负责协调另一个节点上的进程进行合理的资源接管。在 Heartbeat 集群中,最核心的是 Heartbeat 模块的心跳监测部分和集群资源管理模块的资源接管部分。心跳监测一般由串行接口通过串口线来实现,两个节点之间通过串口线相互发送报文来告诉对方自己当前的状态。如果在指定的时间内未受到对方发送的报文就认为对方失效,这时资源接管模块将启动,用来接管运行在对方主机上的资源或者服务。图18.2是一个 Heartbeat 集群的一般拓扑图。在实际应用中,由于节点的数目、网络结构和磁盘类型配置的不同,拓扑结构可能会有不同。2Heartbeat基础条件2.1硬件条件2.1.1存储子系统如果希望你的数据能够共享、具有高可用性,那么采用共享存储技术是必须的选择。存储子系统是Cluster配置的核心,在高用性环境中享存储是非常重要的,它是整个集群中所有服务器浏览共享数据的基础。选择存储子系统包括以下几步:11选择存储技术Cluster 管理系统可以配置使用 iSCSI, Fibre Channel,和Multi-Initiator (MI) SAS等硬件.。通常情况下 MI SAS 适于配置2-4个服务器节点, iSCSI 和 Fibre Channel 可以配置更大的集群节点。11选择外部共享存储阵列/控制器存储阵列/控制器所有主机的并发访问,同样MI SAS阵列/控制器每个端口必须分开连接到主机(多路主机SCSI bus 配置不支持). 倘若部署服务时需要高质量的共享存储。2.1.2网络子系统在Heartbeat手册中明确规定要使用100Mbit/s或者更快的交换设备,保证所有的cluster node相互之间能够正常连接。建议采用网络通道多路径绑定,有助性能能通过多路径网络在每个节点上得到提升。 2.1.3Stonith组件Stonith是“shoot the other node in the head”的首字母简写,它是Heartbeat软件包的一个组件,类似于RHCS中的“fencing device”。虽然是可选项,但是在条件允许情况下,我们应该使用它它允许使用一个远程或“智能的”连接到健康服务器的电源设备自动重启失效服务器的电源,stonith设备可以关闭电源并响应软件命令,运行Heartbeat的服务器可以通过串口线或网线向stonith设备发送命令,它控制高可用服务器对中其他服务器的电力供应,换句话说,主服务器可以复位备用服务器的电源,备用服务器也可以复位主服务器的电源当A上的栅进程发现D节点失效时,它通过stohith设备(Fencing device)通知电源控制器将D节点隔离。Stonith事件序列如上图显示的那样,Stonith操作是下面这样进行的:1、 当备用服务器听不到心跳时Stontih事件开始。注意:这并不一定意味着主服务器没有发送心跳,心跳可能有多种原因而没有抵达备用服务器,这就是为什么建议至少需要两条物理路径传输心跳以避免出现假象的原因了。2、 备用服务器发出一个Stonith复位命令到Stonith设备。3、 Stonith设备关闭主服务器的电力供应。4、 一经切断主服务器的电源,它就不能再访问集群资源,也不能再为客户端提供资源,保证客户端计算机不能访问主服务器上的资源,排除可能发生的头脑状态。5、 然后备用服务器获得主服务器的资源,Heartbeat用start参数运行资源脚本,并执行ARP欺骗广播以便客户端计算机发送它们的请求到它的网络接口上。一旦主服务器完成重启,它会尝试回收它的资源,要求备用服务器释放资源,除非两台服务器都关闭了auto_failback选项。注意:客户端计算机应该总在一个由Heartbeat控制的ip地址上访问集群资源,这应该是一个ip别名而不应该是一个系统启动时就自动分配的ip地址。2.1.4Stontih设备1.Stonith设备的种类UPS (Uninterruptible Power Supply) PDU (Power Distribution Unit) Blade power control devices Lights-out devices Testing devices 2.Heartbeat支持的Stonith设备清单:设 备APC Master交换机AP9211APC Master交换机(SNMP)公司站点www.apcc.comwww.apcc.comStonith名称apcmasterapcmastersnmpapcsmartAPC Smart-UPS[a]Tested with www.apcc.com900XLIbaytechTested with RPC-5 [b]www.baytechdcd.comnw_rpc10Micro Energetics Night/Ware microenergeticscorp.c0sRPC100Somrps10Western Telematics RPS-10Mwww.wti.comwti_npsWestern TelematicsNetwork Power Switches NPS-xxxWestern Telematics Telnet Power Switches (TPS-xxx)[a]代码状态注释中没有用于这个设备的配置文件,很显然,它将使用/dev/ups设备名发送命令,因此你需要创建一个从/dev/tty设备到/dev/ups的连接。[b]代码暗示其他RPC设备也可以工作。3.Stonith支持两个额外的复位系统的方法:MeatwareSSH操作员警告,告诉人们执行电源复位,与meatclient程序联合使用。通常只用于测试,将引起Stonith尝试使用SSH[a]连接到失效服务器并执行重启命令。[a]参考第5章有关如何在集群或Heartbeat服务器之间安装和配置SSH。你也可能看到一个null设备,这个“设备”在SSH设备开发出来之前最初用于Heartbeat开发人员编码目的。2.2软件条件2.2.1Heartbeat与OS
重要:
所有的node安装了Debian5.0以上版本,并且是cluster的一部分;所有的node安装了Heartbeat2.0软件,并且是cluster的一部分;
2.2.2其它软件部署规划
警告:
为了确保后期的稳定运行,其它软件应该按照规范进行安装。以免破坏集群服务配置。
3安装规划
说明:
由于Heartbeat包括的范转较多,这里就以Active-Backup模式讲解两节点的高可用集群的安装与配置。
3.1网络规划
Cluster的网络通常分为公共网络和私有网络两部分,本手册增加了Dell DRAC5卡的网络部分,如下:
主机节点Node-ANode-BNode-ANode-BNode-A/Node-BNode-ANode-BIP地址192.168.1.121192.168.1.12210.0.0.1/2410.0.0.2/24192.168.1.123/24网络接口名称NodeAPubNodeBPubNodeAPriNodeBPriVIP网络接口注释工作接口工作接口心跳接口心跳接口漂移虚拟IPStonith设备Stonith设备备注3.2存储规划基于HA模式的Cluster存储通常分两个部分:本地存储和共享存储。在安装前需要明确两部分的RAID级别、RAID访问策略、RAID容量、RAID卷分配等具体信息。3.2.1本地存储本地存储可以按照下表进行分配:(以本地含有支持Raid5的阵列卡为例)主机节点Node-ANode-B设备/dev/sdaRAID级别55分区类型Ext3Ext3SawpRAID访问策略读写各占50%读写各占50%装载点//home----RAID容量(3-1)*146GB(3-1)*146GB分区大小210Gb60Gb4Gb备注磁盘卷分配,如下表:备注说明:DB Server 采用Raid-10,普通APP Server采用raid-1或者radi-5两节点使用相同的磁盘卷分配策略。不同的安装环境可以具体调整;本地存储如果不含Raid卡,可以用两块硬盘做Software Raid 1;3.2.2共享存储说明:本安装未涉及共享存储3.3Sonith规划不同的Fence设备可能访问参数不一样,可以参考http://www.clusterlabs.org/doc/crm_fencing.html3.4软件部署规划软件部署规划由于不同的软件环境,也有可能有所有同,不同的应用可以参考该用的安装手册。但以下表的几点必须明确:应用类型Live_centerTomcat……应用Home目录/opt/vtlive/var/lib/tomcat应用bin目录$APP_HOME/bin$TOMCAT_HOME/bin操作用户Vtlivetomcat共享数据无无备注重要:如果应用有共享数据需要两个节点访问,必须放在共享卷的装载点目录下。4安装与配置4.1安装操作系统4.1.1选择安装方式进入“advanced options”可以选择多种安装方式4.1.2选择安装语言在高级安装中才可以选择多种语言支持,否则只会安装默认的语言包:4.1.3配置网络可以先选择dhcp,进入操作系统后再更改网络设置,主机名需要保持唯一,域名要同一。4.1.4磁盘分区磁盘分区选择“manual”4.1.5设置时区时区同一设置成UTC4.1.6Root密码输入root用户的密码(一定要注意密码不能过于简单,否则系统还在调试期就有中木马和病毒的可能),按下一步 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- oldu.cn 版权所有 浙ICP备2024123271号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务