泻药

看业务类型。

1 如果是前端的应付web访问高并发的话。并不需要考虑数据同步,只考虑群集的健康监控,负载演算法平衡。

2 如果是资源类型的业务,可以有分散式存储,对象存储这类解决方案。单纯内网小规模业务可以用samba共享这样的存储共享方式实现。

3 如果是资料库,可以用数据存储实现数据一致和安全。也可以通过资料库群集项目实现多节点的数据同步。

群集类型有很多,关键看什么业务类型来选型。


我从高性能计算的角度大概说一下。

此场景下,伺服器节点分为计算节点和IO节点两种类型,其中计算节点专门负责数据处理和分析,IO节点负责传输数据。计算节点通过IO节点对核心存储设备进行读写操作。大致上就是下面这个样子(我用windows自带的画图工具画的,6不6 嘎嘎)

管理软体相当于直接从存储节点调取数据,所以我感觉不需要考虑数据同步。

也就是几台伺服器的计算资源被整合,而存储节点我们有只是用其中一台上面的(别提存储,这只是个直连的FC-SAN而已)。。。

至于说做集群的具体步骤。。。

硬体层面估计你要是不明白欢迎私信我,涉及到集群管理软体的安装调试和设置之类的,我也缺乏实际操作案例。。。

不懂哟。


泻大佬相邀

以上大佬都已经回复很清楚的,我就不再回复了


这要看具体是什么群集,负载均衡群集就不需要,故障转移群集一类的可能需要,如果是共享存储就不用,如sql server故障转移群集,而如果是本地存储,就需要,比如dag。


这样看你是什么集群,是有状态还是无状态的集群

比如web伺服器,app伺服器,db伺服器,中间件伺服器. 都不同的.

  • web伺服器集群,纯粹的静态文件服务集群,不需要考虑数据提供
  • app集群,如果没有状态,也可以不考虑集群
  • db集群如果你在app里做了sharding,也可以不考虑集群,但是要做好备份. 如果db本身是一个比如主从的集群,那需要考虑数据同步
  • 中间件集群,大概率是需要考虑数据同步的(如果你自己实现的话).

一般来讲,如果你自己实现这种集群才会考虑,否则如果是用开源组件,数据同步的解决访问很多都自带的了.


数据同步肯定是要的,如果你说多台伺服器光负责运算,后头就挂一个资料库,这不算集群。

集群的目的就是让多台伺服器分享并同步数据以应对更大的流量,关键就是单机IO撑不住了。

至于具体步骤就看你的业务需求了,redis cluster, mysql cluster可以搜搜看怎么用


同步是要的,但具体还要看需求。


推荐阅读:
相关文章