一、集群基础
1.系统的扩展方式
Scale up向上扩展:提高单台服务器的性能
Scale out向外扩展:多台服务器联合起来满足同一个需要
2.集群类型
(1)LB:Load Balancing, 负载均衡集群;
前端:负载均衡器,调度器;
后端:上游服务器(upstreamserver),后端服务器,“真”服务器(real server);
注意SPOF:Single Point Of Failure:单点故障
(2)HA:High Avalilability, 高可用集群; 提供冗余主机来提升系统可用性;
前端: Active,活动服务器
后端:Passive,备用服务器
Availability= 平均无故障时间/(平均无故障时间+平均修复时间)
(3)HP:High Performance,高可用集群
组合多台主机解决一个问题,每个主机只负责其中一部分运算
(4)DS:Distributed System,分布式系统
例如:hadoop (mapreduce分布式计算、hdfs分布式存储)
分布式存储:HDFS、MogileFS、GlusterFS,Ceph
分布式计算:hadoop的YARN框架
batch:MapReduce
in-memory:spark
stream:storm
...
二、集群实现方案
1.LB集群的实现:
(1)基于软硬件层面划分
硬件实现:F5 BIG-IP、Citrix Netscaler、A10 A10、Array、Redware
软件实现:lvs(Linux Virtual Server)、haproxy、nginx、ats(apache traffic server)、perlbal
(2)基于工作的协议层次划分:
传输层:lvs,haproxy(mode tcp)
应用层:haproxy(mode http), nginx, ats, perlbal
2.HA集群的实现:
1) keepalived:通过实现vrrp协议来实现地址漂移;
2) AIS提供系列:
heartbeat,接近于废弃,CentOS 6之前系统可能使用
cman+rgmanager(RHCS: redhat cluster suite),红帽集群套件
corosync+pacemaker,现在主流实现方案
本文出自 “许鼎的博客” 博客,请务必保留此出处http://xuding.blog.51cto.com/4890434/1743830
原文:http://xuding.blog.51cto.com/4890434/1743830