首页 > 代码库 > Linux高可用集群方案之heartbeat基础原理及逻辑架构
Linux高可用集群方案之heartbeat基础原理及逻辑架构
这篇文章我们主要学习heartbeat高可用集群的基础原理及逻辑架构,以及heartbeat的简单配置
ll 本文导航
· heartbeat之基本原理
· heartbeat之集群组件
· heartbeat之心跳连接
· heartbeat之脑裂(资源争用、资源隔离)
· heartbeat之配置文件
· heartbeat至高可用集群配置
ll 要求
掌握heartbeat高可用集群的相关组件及简单配置
heartbeat之基本原理
heartbeat是一个集群软件,它主要由心跳信息检测和资源管理两大核心部分组成。
heartbeat构建的集群中,各服务器会向其他集群节点发送心跳信息(报文)并予以收集、分析,以判断该节点的状态,从而认为节点是否有效。当服务器在指定的时内检测不到其他节点的心跳信息或无法通过网络等方式连接时,会认为对方节点失效,此时,服务器需要启动资源接管模块来接管失效节点上的服务和资源。
heartbeat仅能完成心跳信息检测和资源监管,不会监视其他资源和应用服务。若要监控其他资源和应用服务是否可用,需要安装第三方插件;如ipfail, ldirectord等。
同样,对于操作系统自身的问题heartbeat同样无法监控。若主节点因操作系统问题无法向备节点发送心跳信息,则备节点无法接收主节点的信息,从而认为主节点已经失效,此时会启动资源接管模块来接管主节点的服务和资源。而主节点资源和服务并没有释放,此时主备节点会发生资源争用的情况,严重时可能会导致共享资源的数据损坏或者文件系统的崩溃。对于linux系统而言,要解决这个问题,需要在内核中开启watchdog模块,开启此模块后,watchdog会定时向/dev/watchdog设备文件执行写操作,从而确定系统是否正常运行。如果watchdog认为内核挂起,就会自动重新启动系统,从而释放节点的服务和资源。
heartbeat之集群组件
本文出自 “ccschan” 博客,转载请与作者联系!
Linux高可用集群方案之heartbeat基础原理及逻辑架构