集群理解

集群的分类:
一般来讲,集群分为三大类:高性能集群(High performance cluster,HPC)、负载均衡集群(Load balance cluster, LBC),高可用性集群(High availability cluster,HAC)。

load balance cluster(负载均衡集群)

一共有四兄弟开裁缝铺,生意特别多,一个人做不下来,老是延误工期,于是四个兄弟商量:老大接订单, 三个兄弟来干活。 客户多起来之后,老大根据一定的原则(policy) 根据三兄弟手上的工作量来分派新任务。

High availability cluster(高可用集群)

两兄弟开早餐铺,生意不大,但是每天早上7点到9点之间客户很多并且不能中断。为了保证2个小时内这个早餐铺能够保证持续提供服务,两兄弟商量几个方法:

方法一:平时老大做生意,老二这个时间段在家等候,一旦老大无法做生意了,老二就出来顶上,这个叫做 Active/Standby.(双机热备)

方法二:平时老大做生意,老二这个时候就在旁边帮工,一旦老大无法做生意,老二就马上顶上,这个叫做Active/Passive.(双机双工)

方法三:平时老大卖包子,老二也在旁边卖豆浆,老大有问题,老二就又卖包子,又卖豆浆,老二不行了,老大就又卖包子,又卖豆浆.这个叫做Active/Active (dual Active)(双机互备)

(包子= application package, 互相照应叫做heartbeat, 顶替对方工作叫做 failover/takeover. 如果两个兄弟突然都瞎了聋了,不知道现在对方到底是否正在干活,都认为自己要顶对方的工作,这个叫做brain-split, 然后需要第三者,比如他们的老爹来解决问题,这个叫做tier-breaker, 或者让他们两个的媳妇过来拉走其中一个,这个叫做fency。)

high computing clustering(高性能计算集群)

10个兄弟一起做手工家具生意,一个客户来找他们的老爹要求做一套非常复杂的仿古家具,一个人做也可以做,不过要做很久很久,为了1个星期就交出这一套家具,10个兄弟决定一起做。
老爹把这套家具的不同部分分开交给儿子们作,然后每个儿子都在做木制家具的加工,最后拼在一起叫货。
老爹是scheduler任务调度器,儿子们是compute node. 他们做的工作叫做作业。

参考链接

你可能感兴趣的:(集群理解)