集群化
适用大规模用户访问和云原生场景,部署较繁琐,需人工配置数据库和对象存储服务,不能直接运行!
中小型企业请使用单服务器版,部署简单,运维方便。
适用范围:
- 200人/50TB规模以上的大型企业/政府/学校等组织,私有部署访问。
- 基于公有云OSS服务(阿里云、七牛云等OSS/云数据库)部署的,用于公网高速访问的组织。
优势:
- 部署在第三方数据库和对象存储服务之上,可以同时部署在多台主机中形成集群,当某台主机停止服务时,故障自动转移,不影响整体服务。
- 支持高并发,多服务器均衡负载,应对大用户量使用。
- 可以根据业务需要弹性扩容,省去公司前期存储成本压力。
- 热备份能力,多副本实时冗余存储。
用户故事
中大型企业、高校、政府部门等组织中,由于人数众多,历史悠久,流动量大等原因,会产生海量的文件资料,逐渐达到数百TB甚至千TB级别。由于大量数据不容丢失,要归档存储、要备份,数据量将逐年增加,只增不减。
通过单机服务器管理和维护百TB以上的文件,为数千人提供稳定可靠的文件访问服务是难以实现的,普遍存在以下问题:
单点故障
一旦服务器因各种原因宕机,系统的所有服务都不可用。
扩容难
扩容难分两部分:性能扩容和存储扩容。
存储扩容难:单机服务器存储海量数据一般使用磁盘阵列,扩容时必须停止服务,且磁盘阵列对每个硬盘的容量一致性有要求。一旦阵列损坏,所有数据都会丢失。
性能扩容难:单机服务器只能增加CPU核心/内存或者更换性能更好的服务器,每次扩容需要停止服务。
并发访问性能差
由于单机服务器下,流量出口只有一个,由于带宽有限,并发访问很容易出现流量瓶颈,导致用户上传下载文件速度慢。
海量数据备份难
例如:以100TB数据,50MB/秒的传输速度,全部备份一次需要23天。
单台服务器访问图例:
如何解决?
通过使用多台服务器,进行集群化部署,利用负载均衡机制分散处理原单台服务器的访问压力,集群化服务器访问图例:
解决单点故障问题
当悦库集群中"服务器A"宕机后,负载均衡会立即检测到,并将故障节点剔除,这是毫秒级的。当节点恢复正常后,会自动重新将节点加入服务器集群。
解决扩展难问题
- 解决性能扩展难问题:
当服务端性能不足时,只需要向服务端添加一台服务器,过程中不影响悦库集群的正常服务。
- 解决存储扩展难问题
悦库集群使用分布式对象存储系统。如需对空间进行扩容,可以直接在任意服务器上增加硬盘,过程中不影响悦库集群正常服务。
解决并发访问性能差问题
通过在不同网络位置部署多台服务器,可以分散上传/下载流量,避免服务器单点流量瓶颈。
解决海量数据备份难问题
悦库集群实现了数据的热备份,因此无需执行备份所有数据的操作。
文件数据上传后,在服务端会自动进行冗余存储(冗余数可配置),单个/多个硬盘损坏不影响整体数据,但硬盘损坏数不能大于指定配置。例如当前集群共有9个硬盘,最多允许同时3个硬盘损坏,更换新硬盘,存储系统自动将数据还原。
架构
集群版部署架构,自上而下由三个层面组成,分别为访问层、应用层、数据层。
访问层
用于实现负载均衡。把客户端请求根据需求调度到服务器节点。并检测各服务存活状态,当服务节点故障时,实现虚拟IP漂移至健康节点。
应用层
用于提供悦库网盘的基础业务功能支撑。其中悦库网盘服务是直接面向用户提供文件管理业务功能的,其他服务作为后台服务为文件管理功能提供附加能力。
数据层
用于保存悦库网盘系统所有结构化和非结构化数据。悦库系统不会在数据层以外存储用户数据,因此其他服务的故障对用户数据没有任何影响。
部署
从零开始部署自己的悦库网盘集群。
相关教程
快速入门 - 快速体验多用户场景下简单的文件共享和权限管控功能。
用户手册 - 全面了解产品功能。