高可用集群
集群Cluster
集群类型:
LB lvs/nginx(http/upstream, stream/upstream)
HA 高可用性
SPoF: Single Point of Failure
HPC
系统可用性的公式:A=MTBF/(MTBF+MTTR)
(0,1), 95%
几个9(指标): 99%, ..., 99.999%,99.9999%;
系统故障:
硬件故障:设计缺陷、wear out(损耗)、自然灾害……
软件故障:设计缺陷
提升系统高用性的解决方案之降低MTTR:
手段:冗余redundant
active/passive 主备
active/active双主
active --> HEARTBEAT --> passive
active <--> HEARTBEAT <--> active
高可用的是“服务”:
HA nginx service:
vip/nginx process[/shared storage]
资源:组成一个高可用服务的“组件”
(1) passive node的数量
(2) 资源切换
shared storage:
NAS:文件共享服务器;
SAN:存储区域网络,块级别的共享
Network partition:网络分区
quorum:法定人数
with quorum: > total/2
without quorum: <= total/2
隔离设备: fence
node:STONITH = Shooting The Other Node In The Head,断
电重启
资源:断开存储的连接
TWO nodes Cluster
辅助设备:ping node, quorum disk
Failover:故障切换,即某资源的主节点故障时,将资源转移至其它节点的操作
Failback:故障移回,即某资源的主节点故障后重新修改上线后,将之前已转移
至其它节点的资源重新切回的过程
HA Cluster实现方案:
ais:应用接口规范 完备复杂的HA集群
RHCS:Red Hat Cluster Suite红帽集群套件
heartbeat
corosync
vrrp协议实现:虚拟路由冗余协议
keepalived