1. 企业数据应用需求的变化需要多样化的数据存储方式

随着云计算、互联网、移动终端和物联网的迅猛发展,全球各地智慧城市的建设,大数据体量已成几何性增长,面对数据量的爆发式增长,使得数据存储日益成为一个更独立的专业问题,传统的云平台的存储架构已经无法解决如此大数据量的存储落地需求,企业和组织逐渐意识到垂直规模不再适合当今的存储需求,越来越多的数据中心正在从传统架构过渡到软件定义存储 (SDS)。

面对大数据的存储需求,品高云在 V8.0 之前已为用户推出了弹性块存储和对象存储服务:

  • 弹性块存储服务,属于 EC2 服务的附属服务,它允许用户利用共享存储设备(如:SAN、分布式存储)为 EC2 实例提供额外的存储卷(虚拟硬盘),用户可以按需创建任意大小的卷(只要实例的 OS 支持和存储剩余空间足够),一个存储卷可被挂载到不同的 EC2 实例,但同一时刻只能被挂载到一个 EC2 实例,它不会因关联 EC2 实例的损坏、销毁而被删除。
  • 对象存储服务,是基于 http 协议访问的对象存储功能,其构建在品高云分布式存储之上,可直接为物理机/EC2 实例中的应用系统提供文件保存与共享服务,无需担心存储扩容、带宽瓶颈、存储设备宕机等问题。用户可通过 S3 工具将本地文件上传至 S3 中进行保存并管理,应用程序也可以方便的通过 S3 的 API 进行应用数据的存储管理。

弹性块存储和对象存储服务的可扩展、高可靠、高性能等特性,很好的满足了用户对于大数据的存储需求。但是,数据应用市场需求瞬息万变,大数据处理、文件共享、容器和微服务等场景的应用越来越多。

  • 大数据分析:业务快速增长,每天的数据增长超出本地磁盘容量,需要迁移本地数据,扩容本地磁盘需要中断业务,无法实时进行数据分析,需要把本地磁盘数据集中后才能分析。
  • 文件共享:业务部门甲部署在本地机房,业务部门乙部署在云上,业务甲生产的数据需要上传到云,作为业务乙的数据输入,每天有大量的共享数据需要上云。
  • 容器和微服务:容器和微服务的兴起,推动了软件产品的快速迭代,大型开发团队需要集中存储和读写源代码、二进制文件或者其他资源。
  • 网站或 APP 内容管理:随着业务量的增长,每天网站或 APP 将会上传下载千万数量级小文件(图片、音频、日志),业务数据也需要跨环境的容灾能力,同时又不想改变网站或 APP 的原有架构。

面对云存储提出的新要求,不仅仅要具备海量存储空间、弹性扩展、分布式存储、高可靠等,还要求具备异构环境下的数据共享、内容管理、简单易用随机位置读写操作等特性,这是弹性块存储和对象存储服务所不能满足的。弹性文件系统,作为弹性块存储和对象存储服务的补充,是一种分布式的网络文件存储,可为容器、大数据、数据共享等提供安全、无限容量、高性能、高可靠、简单易用的文件存储服务,有效解决了数据的存储和管理难题。

2. 品高云弹性文件系统

品高云弹性文件系统服务(Elastic File System)是一项为云中虚拟机提供共享式,可扩展的文件系统服务。弹性文件系统基于分布式存储提供服务,支持行业标准的网络文件系统协议(NFS),提供多机容错架构,弹性伸缩可至 PB 规模,可为应用程序在必要时间提供所需的存储。

图 1 弹性文件系统功能架构图

底层采用分布式存储,即品高云分布式存储系统,通过将 x86 服务器的本地硬盘集合起来协同工作,向用户提供海量数据存储、管理和访问服务。

通过主备 NFS 服务器模式构建高可用架构,即一主多备的部署模式,保证弹性文件系统的高可用。

3. 功能特色

  • 支持标准协议;
  • 基于分布式存储 OS 内核提供服务,性能与分布式存储相近;
  • 弹性可伸缩,系统容量随着业务增减动态扩展/缩小,提高资源利用率;
  • 数据存储支持高可用,故障发生时自动切换虚拟 IP,无需用户维护;

4. 应用场景

  • 大数据分析及应用;
  • 内容管理系统的中央存储;
  • 开发测试团队的代码集中存储;

5. 功能实践— 弹性文件系统高可用和共享性验证

本次功能操作主要验证品高云弹性文件系统的高可用性和共享性特征。

  • 高可用性验证,通过在弹性文件系统中创建一个上限大于 10240G 的文件系统挂载到本地磁盘的文件目录 2,并为其创建一个高可用的挂载点。同时,并在文件目录 1 中创建一个文件,拷贝新建文件到弹性文件系统目录,拷贝过程中人为关闭正在连接的挂载目标实例,等待拷贝任务结束,对比拷贝源文件与目标文件是否一致。

图 2 高可用功能演示示意图

  • 共享性特征,模拟了内容管理系统的中央存储场景,创建两台客户机 A 与 B(或使用网络可达的物理机),分别挂载同一弹性文件系统到两台客户机,在 A 中上传一个文件到弹性文件系统目录,在 B 中浏览弹性文件系统目录,下载刚刚上传的文件,并对比下载的文件与上传的文件是否一致。

图 3 共享性功能演示示意图

5.1 创建弹性文件系统

(1)通过登录品高云操作系统,进入弹性文件系统服务页面。

图 4 弹性文件系统功能登录页面

(2)新建弹性文件系统,填写文件系统名称和容量上限。

图 5 文件系统名称和容量

(3)选择挂载目标的网络访问策略。设置挂载目标的云网络、子网、高可用和访问策略。

图 6 网络访问策略

(4)网络访问策略设置完成后,点击创建,则“web 应用”弹性文件系统创建成功。

图 7 “web 应用”弹性文件系统

(5)点击文件系统详情查看挂在目标,具备高可用特性。

图 8 弹性文件系统挂载目标

挂载目标实例为主备模式。

图 9 弹性文件系统挂载目标实例

5.2 高可用性验证

(1)选择一个实例(IP 为 10.202.66.128),为其挂载“web 应用”弹性文件系统。

图 10 实例(10.202.66.128)

(2)通过 shell 工具远程登录实例,挂载“web 应用”弹性文件系统。

图 11 弹性文件系统挂载完成

(3)创建一个新文件。

图 12 新创建的文件

(4)拷贝新建的文件到弹性文件系统。

图 13 拷贝文件过程

(5)关闭一个弹性文件系统的挂载实例。

图 14 关闭其中一个弹性文件系统的挂载实例

(6)关闭其中一个实例,复制过程不受影响。

图 15 拷贝文件过程

(7)文件拷贝结束后,查看拷贝前后的文件 MD5,发现两个文件的 MD5 一致,说明品高云弹性文件系统具备高可用性特征。

图 16 文件拷贝结束

5.3 共享性验证

(1)选择一个实例(IP 地址为 10.202.66.128)。

图 17 实例(10.202.66.128)

(2)远程登录实例(IP 地址为 10.202.66.128),为其挂载新建的弹性文件系统。

图 18 挂载弹性文件系统

弹性文件系统挂载完成。

图 19 弹性文件系统挂载完成

(3)通过文件管理系统上传文件至弹性文件系统。

图 20 上传文件

(4)上传文件为“多用户管理”的视频文件。

图 21 上传文件

视频上传完成

图 22 文件上传完成

(5)选择另外一个实例(IP 地址为 10.202.66.130)。

图 23 实例(10.202.66.130)

(6)为实例(IP 地址为 10.202.66.130)挂载新建的弹性文件系统。

图 24 挂载弹性文件系统

(7)弹性文件系统挂载完成后,通过文件管理系统可查看到多租户管理”视频文件已经存在,说明品高云弹性文件系统具备共享性特征。

图 25 查看已存在的文件

目前,弹性文件系统服务已经在品高云 8.0 版本中正式发布,对于品高云弹性文件系统服务的更多操作介绍,还可以通过视频详细了解。