设为首页 收藏本站
查看: 775|回复: 0

[经验分享] heartbeat概况

[复制链接]

尚未签到

发表于 2019-1-6 15:08:46 | 显示全部楼层 |阅读模式
  Heartbeat可以将资源(IP及程序等)从一台已经故障的计算机快速转移到另一台可以正常运转的机器上继续提供服务,一般称之为高可用服务,在实际生产应用场景中,heartbeat的功能和keepalived有诸多相似之处,但在生产中,对实际的业务应用是有区别的,
  工作原理;
  通过修改heartbeat的配置文件,可以指定哪台heartbeat服务器作为主服务器,则另一台服务器自动成为热备服务器,然后再热备服务器上配置heartbeat守护进程来监听来自主服务器的心跳消息,如果热备服务器在指定的时间内未能监听到来自主服务器的心跳,就会启动故障
  管理程序,并取得主服务器上的相关资源服务的所有权,接替主服务器继续不间断的提供服务,从而达到资源及服务高可用性的目的,
  以上描述的是heartbeat主备模式;heartbeat还支持主主模式,既2台服务器互为主备,这时它们之间会相互发送报文告诉对方自己当前的状态,如果在指定的时间内未能收到对方发送的心跳报文,那么,一方就会认为对方失效或者关机了,这时每个运行正常的主机就会启动
  自身的资源接管模块来接管运行在对方主机上的资源或者服务,继续为用户提供服务,一般情况下,业务能持续不断的运行,
  Heartbeat心跳类型:
  1.串口
  serial /dev/ttyS0
  2.广播
  bcasteth0   #linux
  3.多播
  mcast [dev] [mcast group] [port] [ttl][loop]
  

  4.单播
  ucast [dev] [peer-ip-addr]
  Heartbeat 脑裂
  在双击热备高可用系统中,当联系2个节点的心跳线断开时,本来为一个整体,动作协调的HA系统,就分裂为2个独立的个体;
  由于相互失去了联系,都以为对方出了故障,2个节点上的HA软件像裂脑人一样本能的争抢共享资源争取应用服务,就会发生
  严重后果,或者共享资源被瓜分,2边服务都起不起来了。或者2边服务都起来了,但同时读写共享存储,导致数据损坏。
  有关fence设备和仲裁机制
  fence只是HA集群环境下的术语,在硬件领域,fence设备其实就是一个智能电源管理设备(IPMI)或者远程管理卡,fence
  由外部fence和内部fence,不管是外部和内部,这些设备都是带有以太网口的,用来在HA切换触发时通过网络重启提供资源服务
  的服务器
  Stonith概述
  stonith是 shoot the other node in the head 的首字母简写,它是Heartbeat软件包的一个组件,它允许使用一个远程或智能的
  连接到健康服务器的电源设备以自动重启失效服务器的电源,stonith设备可以关闭电源并响应软件命令,运行Heartbeat的服务器可以通过
  串口线或网线向stonith设备发送命令,它控制高可用服务器对其他服务器的电力供应。
  主服务器可以复位备用服务器的电源,备用服务器也可以复位主服务器的电源。
  Stonith事件触发的工作步骤:
  1)当备用服务器听不到心跳时Stonith事件开始
  2)备用服务器发出一个Stonith复位命令到Stonith设备
  3)Stonith设备关闭主服务器的电力供应、
  4)备用服务器获得主服务器的资源,Heartbeat用start参数运行资源脚本,并执行ARP欺骗广播以便客户
  端计算机发送它们的请求到它的网络接口上。
  Heartbeat消息类型
  1)心跳消息
  心跳消息为约150字节的数据包,可能为单播,广播或者多播的方式,控制心跳频率及出现故障等要等待多久进行故障切换
  

  2)集群转换消息
  ip-request和ip-request-resp
  当主服务器恢复在线状态时,通过ip-request消息要求备机释放主服务器失败时备用服务器所取得的资源,然后备用服务器关闭相关资源和服务。
  当备用服务器释放相关资源和服务后,就会通过ip-request-resp消息通知主服务器它不再拥有该资源及服务,主服务器收到来自备用节点的ip-request-resp
  消息通知后,启动失败时释放的资源及服务。并开始提供正常的访问和服务。
  重传请求;
  rexmit-request控制重传心跳请求,此消息不太重要
  注意:以上控制消息都使用UDP协议发送到/etc/ha.d/ha.cf文件指定的任意端口,或指定的多播地址
  Heartbeat IP地址接管和故障转移
  Heartbeat时通过IP地址接管和ARP广播进行故障转移的
  ARP广播:在主服务故障时,备用节点接管资源后,会立即强制更新所有客户端本地的ARP表,确保客户端和新的主服务器对话。
  

  VIP/IP 别名、/辅助IP
  真实IP,又称为管理IP,一般是配置在物理网卡上的实际IP,在负载均衡及高可用环境中,管理IP是不对外提供用户访问服务的
  ,仅仅是管理服务器使用,
  VIP是虚拟IP,实际上就是heartbeat临时绑定在物理网卡上的别名IP,如果是使用
  管理IP,来回迁移就难以做到,而且,管理IP迁移走了,我们就只能去机房连接服务器了。VIP的实质是确保2台服务器各有一个
  管理IP不动,就是随时可以连接上机器,然后,增加绑定其他的IP,这样就算VIP转移走了,也不至于服务器本省连不上,因为管理IP不变
  Heartbeat相关目录及其文件。
  启动脚本:/etc/init.d/
  重要资源目录:/etc/ha.d/resource.d/ 存放控制服务的脚本
  默认配置文件目录:/etc/ha.d/
  配置文件名称:
ha.cfheartbeat参数配置文件在此配置heartbeat的一些基本参数
authkey heartbeat 认证文件 高可用服务器之间对端的authkey,对对端进行验证
haresourceheartbea资源配置文件 配置IP资源及脚本
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-660020-1-1.html 上篇帖子: Heartbeat + Drbd 下篇帖子: Heartbeat+DRBD+MFS高可用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表