什么是cluster(群集)
一、群集的概念
在互联网应用中,随着站点对硬件性能、相应速度、服务稳定性、数据可靠性等要求越来越高,单台服务器力不从心,使用小型机或大型机价格还太昂贵,因此我们使用普通服务器来构建服务群集显然最划算。
二、群集的分类
群集英文Cluster,根据群集所针对的目标差异,可分为三种类型:1、负载均衡群集2、高可用群集3、高性能运算群集;无论是哪种群集,都至少包括两台节点服务器,而对外表现为一个整体,只提供一个访问入口(域名或IP地址),相当于一台大型计算机。
(1)负载均衡群集(Load Balance Cluster)
以提高应用系统的响应能力、尽可能处理更多的访问请求、减少延迟为目标,获得高并发、高负载(LB)的整体性能。例如,“DNS轮询”、“应用层交换”、“反向代理”等都可用作负载均衡群集,当然DNS轮询这种方式弊端很大,现在也已经基本不用了。
LB的负载分配依赖于主节点的分流算法,将来自客户机的访问请求分担给多个服务器节点,从而缓解整个系统的负载压力。
(2)高可用群集(High Availability Cluster)
以提高应用系统的可靠性、尽可能地减少中断时间为目标,确保服务的连续性,达到高可用(HA)的容错效果。例如,“故障切换”、“双机热备”、“多机热备”等都属于高可用群集技术
HA的工作方式包括双工和主从两种模式。双工即所有节点同时在线;主从则只有主节点在线,但当出现故障时从节点能自动切换为主节点
(3)高性能运算群集(High Performance Computer Cluster)
以提高应用系统的CPU运算速度、扩展硬件资源和分析能力为目标,获得相当于大型、超级计算机的高性能运算(HPC)能力。例如,“云计算”、“网格计算”也可视为高性能运算的一种
高性能运算群集的高性能依赖于“分布式运算”,“并行计算”,通过专用硬件和软件将多个服务器的CPU、内存等资源整合在一起,实现只有大型、超级计算机才具备的计算能力。