一、名字释义:高可用性,英文叫做High Availability,检查HA,我们一般称为高可用或者ha。
二、高可用的出现是为了解决什么问题?
为了解决单点故障的问题,才出现了高可用。高可用的目的就在于解决单点故障,减少停工时间,从而保持了服务的高度可用性。
三、跟高可用相关的概念或者说术语有哪些?
自动切换:既然是高度可用性,自然不需要人工去干扰,高可用必须实现自动切换
vip:virtual ip,即虚拟ip,这些概念我们以后讲到会详细说,这里只回答问题
四、高可用会带来什么问题?
高可用在自动化切换保证了系统高度可用的同时,必然因为备份的原因带来了冗余的问题,但是他们两者之间就像是矛与盾的关系,你只能两者相权取其轻。
五、高可用与负载均衡是一个概念吗?
高可用和负载均衡是不同的。
六、高可用与负载均衡如果不同,那么不同在哪里?
从实现方式上来说,高可用可以通过zookeeper、keepalived等实现。负载均衡可以通过lvs nginx apache f5来实现。
从要解决的问题上来说,高可用为了解决单点故障而产生,负载均衡为了解决高并发而产生。
从关联关系上来说,为了系统架构的健壮性,系统一般会采用负载均衡加高可用的模式,不过两者之间不是相互依赖的,都可以单独使用,也可以结合起来一起使用。
七、实现高可用可以通过zookeeper、keepalived来实现,那么两种方式的区别在哪里?
keepalived一般结合Nginx或者单独使用来实现高可用,需要通过priorty等属性来配置达到手工指定主从的目的,keepalived不可以存数据,在高可用期间只访问主MASTER(冷备模式),备(BACKUP)只是作为一个备份,备(BACKUP)随时准备接管MASTER提供虚拟ip服务(当备机[即配置为backup的机器]接受不到主机[即配置为MASTER的机器]发送的vrrp报文时[keepalived主master主动向backup备主动发送]自动接管)。
zk一般结合hdfs,hbase,storm,kafaka等,自动通过选举机制选举出leader(主),可以通过znode节点存少量数据,server来向zk注册[zk是被动的]。