高可用集群

1、集群类型

  • LB:Load Balance 负载均衡
    • LVS/HAProxy/nginx(http/upstream, stream/upstream)
  • HA:High Availability 高可用集群
    • 数据库、Zookeeper、Redis
    • KeepAlived 通用的高可用集群
    • SPoF: Single Point of Failure,解决单点故障
  • HPC:High Performance Computing 高性能集群
    • https://www.top500.org

2、系统可用性

SLA:Service-Level Agreement 服务等级协议(提供服务的企业与客户之间就服务的品质、水准、性能等方面所达成的双方共同认可的协议或契约)
A = MTBF / (MTBF+MTTR)

99.95%:(60*24*30)*(1-0.9995)=21.6分钟 #一般按一个月停机时间统计

指标 :99.9%, 99.99%, 99.999%,99.9999%

3、系统故障

硬件故障:设计缺陷、wear out(损耗)、自然灾害……
软件故障:设计缺陷 bug

4、实现高可用

提升系统高用性的解决方案:降低MTTR- Mean Time To Repair(平均故障时间)
解决方案:建立冗余机制

  • active/passive 主/备
  • active/active 双主
  • active –> HEARTBEAT –> passive
  • active <–> HEARTBEAT <–> active

5、高可用相关技术

5.1、HA Service

资源:组成一个高可用服务的“组件”,比如:vip,service process,shared storage

  • passive node的数量
  • 资源切换

5.2、Shared Storage

  • NAS(Network Attached Storage):网络附加存储,基于网络的共享文件系统。
  • SAN(Storage Area Network):存储区域网络,基于网络的块级别的共享

5.3、Network partition 网络分区

quorum 法定人数,仲裁

with quorum: > total/2

without quorum: <= total/2

隔离设备 fence

node:STONITH = Shooting The Other Node In The Head(强制下线/断电)

5.4、双节点集群(TWO nodes Cluster)

辅助设备:仲裁设备,ping node, quorum disk

  • Failover:故障切换,即某资源的主节点故障时,将资源转移至其它节点的操作
  • Failback:故障移回,即某资源的主节点故障后重新修改上线后,将之前已转移至其它节点的资源重新切回的过程

5.5、HA Cluster实现方案

AIS:Applicaiton Interface Specification 应用程序接口规范

  • RHCS:Red Hat Cluster Suite 红帽集群套件
  • heartbeat:基于心跳监测实现服务高可用
  • pacemaker+corosync:资源管理与故障转移

VRRP:Virtual Router Redundancy Protocol

虚拟路由冗余协议,解决静态网关单点风险

  • 物理层:路由器、三层交换机
  • 软件层:keepalived

5.6、VRRP

VRRP 相关术语

  • 虚拟路由器:Virtual Router
  • 虚拟路由器标识:VRID(0-255),唯一标识虚拟路由器
  • VIP:Virtual IP
  • VMAC:Virutal MAC (00-00-5e-00-01-VRID)
  • 物理路由器:
    • master:主设备
    • backup:备用设备
    • priority:优先级

VRRP 相关技术

  • 通告:心跳,优先级等;周期性
  • 工作方式:抢占式,非抢占式
  • 安全认证:
    • 无认证
    • 简单字符认证:预共享密钥
    • MD5
  • 工作模式:
    • 主/备:单虚拟路由器
    • 主/主:主/备(虚拟路由器1),备/主(虚拟路由器2)

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享