中山cp网站建设,wordpress 强制更新,清河网站建设公司,wordpress怎么安装在nginx下高可用集群简介keepalived简介
1.高可用集群简介 1.1什么是高可用集群 高可用集群#xff08;High Availability Cluster#xff0c;简称HA Cluster#xff09;#xff0c;是指以减少服务中断时间为目的的服务器集群技术。它通过保护用户的业务程序对外不间断提供的服务High Availability Cluster简称HA Cluster是指以减少服务中断时间为目的的服务器集群技术。它通过保护用户的业务程序对外不间断提供的服务把因软件、硬件、人为造成的故障对业务的影响降低到最小程度。 1.2高可用集群的衡量标准 要保证集群服务100%时间永远完全可用几乎可以说是一件不可能完成的任务。比如淘宝在这几年双十一刚开始的时候一下子进来买东西的人很多访问量大都出现一些问题如下单后却支付不了。所以说只能保证服务尽可能的可用当然有些场景相信还是可能做到100%可用的。 通常用平均无故障时间(MTTFmean time to failure)来度量系统的可靠性,用平均故障维修时间MTTRmean time to restoration来度量系统的可维护性。于是可用性被定义为HAMTTF/(MTTFMTTR)*100%。 具体HA衡量标准 1.3自动切换/故障转移FailOver 自动切换阶段某一主机如果确认对方故障则正常主机除继续进行原来的任务还将依据各种容错备援模式接管预先设定的备援作业程序并进行后续的程序及服务。 通俗地说即当A无法为客户服务时系统能够自动地切换使B能够及时地顶上继续为客户提供服务且客户感觉不到这个为他提供服务的对象已经更换。 通过上面判断节点故障后将高可用集群资源如VIP、httpd等从该不具备法定票数的集群节点转移到故障转移域Failover Domain可以接收故障资源转移的节点。 1.4 自动侦测 自动侦测阶段由主机上的软件通过冗余侦测线经由复杂的监听程序逻辑判断来相互侦测对方运行的情况。 常用的方法是集群各节点间通过心跳信息判断节点是否出现故障。 1.5 脑裂 一脑裂简介 在高可用HA系统中当联系2个节点的“心跳线”断开时本来为一整体、动作协调的HA系统就分裂成为2个独立的个体。由于相互失去了联系都以为是对方出了故障。两个节点上的HA软件像“裂脑人”一样争抢“共享资源”、争起“应用服务”就会发生严重后果——或者共享资源被瓜分、2边“服务”都起不来了或者2边“服务”都起来了但同时读写“共享存储”导致数据损坏常见如数据库轮询着的联机日志出错。 二脑裂产生的原因 因心跳线坏了包括断了老化。 因网卡及相关驱动坏了ip配置及冲突问题网卡直连。 因心跳线间连接的设备故障网卡及交换机。 因仲裁的机器出问题采用仲裁的方案。 高可用服务器上开启了 iptables防火墙阻挡了心跳消息传输。 高可用服务器上心跳网卡地址等信息配置不正确导致发送心跳失败。 其他服务配置不当等原因如心跳方式不同心跳广插冲突、软件Bug等。 三常见的解决方案 1添加冗余的心跳线 例如双线条线心跳线也HA尽量减少“裂脑”发生几率 2启用磁盘锁 正在服务一方锁住共享磁盘“裂脑”发生时让对方完全“抢不走”共享磁盘资源。但使用锁磁盘也会有一个不小的问题如果占用共享盘的一方不主动“解锁”另一方就永远得不到共享磁盘。现实中假如服务节点突然死机或崩溃就不可能执行解锁命令。后备节点也就接管不了共享资源和应用服务。于是有人在HA中设计了“智能”锁。即正在服务的一方只在发现心跳线全部断开察觉不到对端时才启用磁盘锁。平时就不上锁了。 3设置仲裁机制 例如设置参考IP如网关IP或某一个服务器当心跳线完全断开时2个节点都各自ping一下参考IP不通则表明断点就出在本端。不仅“心跳”、还兼对外“服务”的本端网络链路断了即使启动或继续应用服务也没有用了那就主动放弃竞争让能够ping通参考IP的一端去起服务。更保险一些ping不通参考IP的一方干脆就自我重启以彻底释放有可能还占用着的那些共享资源。 4裂脑的监控报警 如邮件及手机短信等或值班 在问题发生时人为第一时间介入仲裁降低损失。 当检测到裂脑时强行关闭一个心跳节点这个功能需特殊设备支持如Stonith、feyce。相当于备节点接收不到心跳消患通过单独的线路发送关机命令关闭主节点的电源。 当然在实施高可用方案时要根据业务实际需求确定是否能容忍这样的损失。对于一般的网站常规业务.这个损失是可容忍的。 1.6 其他高可用方案 heartbeat、pacemaker、 piranhaweb页面 2.keepalived简介 2.1 keepalived是什么 keepalived是集群管理中保证集群高可用的一个服务软件用来防止单点故障。 2.2 keepalived工作原理 keepalived是以VRRP协议为实现基础的VRRP全称Virtual Router Redundancy Protocol即虚拟路由冗余协议。 将N台提供相同功能的服务器组成一个服务器组这个组里面有一个master和多个backupmaster上面有一个对外提供服务的vip该服务器所在局域网内其他机器的默认路由为该vipmaster会发组播当backup收不到vrrp包时就认为master宕掉了这时就需要根据VRRP的优先级来选举一个backup当master 组播 IPV4总共三种通信方式单播组播广播。 组播是指以224.0.0.0地址作为通信地址的一种方式。 2.3 keepalived主要有三个模块 分别是core、check和vrrp。 core模块为keepalived的核心负责主进程的启动、维护以及全局配置文件的加载和解析。 check负责健康检查包括常见的各种检查方式。 vrrp模块是来实现VRRP协议的。