为了保证出现部分硬件损坏时,计算任务能够继续正常运行。在设计系统时,会通过冗余来避免部分故障的风险,也就是通过增加更多服务器来达到计算高可用。
计算高可用架构的设计复杂度主要体现在任务管理上,即当任务在某台服务器上执行失败后,如何将任务重新分配到新的服务器上进行执行。
常见的计算高可用架构有:主备、主从和集群(对称集群和非对称集群)。
主备架构是计算高可用最简单的架构,由一台主机、一台备机和一台任务分配器组成。正常情况下,主机执行所有计算任务,备机不做任何业务处理;当主机故障不会恢复时,需要人工操作,将备机升为主机,然后让任务分配器将任务发送给新的主机;同时,为了继续保持主备架构,需要人工增加新的机器为备机。
这中类型架构适合内部管理系统、后台管理等人数不多、使用频率不高的业务,不适合在线的业务。
主从架构,由一台主机、一台从机和一台任务分配器组成。正常情况下,任务分配器需要将任务进行分类,确定哪些任务可以发送给主机执行,哪些任务可以发送给从机执行。当主机发生故障不能恢复时,需要进行人工将从机升级为主机,增加新的机器作为从机,新的从机准备就绪后,任务分配器继续按照原有的设计策略分配任务。
对称集群架构(也称为负载均衡集群),由一台任务分配器和多个服务器组成,本质上集群中每个服务器的角色都是一样的,都可以执行所有任务;正常情况下,任务分配器采取某种策略将计算任务分配给集群中的不同服务器;当集群中的某台服务器发生故障后,任务分配器不再将任务分配给它,而是将任务分配给其他服务器执行。
非对称集群架构,即集群中的服务器分为多个不同的角色,不同的角色执行不同的任务。集群会通过某种方式来区分不同服务器的角色,任务分配器将不同任务发送给不同服务器,当指定类型的服务器故障时,需要重新分配角色。
网友评论