初探阿里云存储网关
有幸第一时间拿到阿里云存储团队提供的存储网关内部测试版本,我第一时间进行了尝鲜,分享给大家,相信不久大家就能看到这款新产品。
大家都知道阿里云对象存储OSS,它不同于ECS的云盘,既能提供低廉的成本又能提供海量吞吐,高并发的访问。最重要的是利用对象存储oss,能搭建动静分离的系统架构,系统的扩展性和健壮性都比直接使用云盘高。但对象存储使用RESTful的接口才能使用,有一定的动手成本,而且如果原本的应用已经基于文件系统开发好,无法修改的话。就无法享受对象存储带来的一系列便利了。
而今天,我有幸试用的存储网关,能完美的解决这一问题。它可以帮助你像使用普通磁盘一样,挂载在您的计算节点上(ECS)。你瞬间拥有一个无限扩容的云盘空间,而只需要付出对象存储oss的价格。OK,我们来一探究竟。
我们先看架构,我试用的是目前的软件版本,他可以部署在计算节点(client)和对象存储(oss)之间,支持部署在ECS上,物理机或者是虚拟机上。通过File Targent提供标准的文件接口NFS和CIFS,再通过OSS Engine同OSS的RESTful接口进行连接。提供Cache模式和非Cache的协议头模式。前者需要本地有一定的磁盘空间,用做缓存。后者是不使用本地缓存,直接写透oss。
从提供的文档看,存储网关的读写和网络吞吐能力依赖部署环境的能力,能吃满。后面有我进行的测试数据报告,供大家参考,大家也可以自己尝试。
部署存储网关的环境最低要求如下,我直接在阿里云上购买了一台ECS部署。
最低环境要求:
a. VM最低2核,不少于2GB的内存空间
b. 不低于10GB的磁盘空间,用于安装虚机镜像和系统数据
c. 缓存空间视需求,可以选择HDD或者SSD。
d. 操作系统,建议CentOS 7.0 +
我部署的环境如下:
ECS型号 |
通用型 n1 |
CUP & 内存 |
2核 4G |
磁盘 |
40GB系统盘 & 100GB普通云盘 |
操作系统 |
CentOS 7.0 64位 |
网络 |
1mbps的公网带宽(测试方便,可以不用) |
|
|
支付成功后等待ECS启动起来。安装部署存储网关我直接选择了最简单的ECS自定义镜像导入的方式。
步骤如下:
1. 提交工单,申请ECS自定义镜像导入功能。目前这个功能ECS默认没有开放,需要提交工单申请,工单响应还比较快,10分钟后,就能在ECS控制台—镜像,看到镜像导入的按钮。
2. 目前ECS的镜像导入需要从OSS中获取镜像文件的地址,只支持同账号下,同区域的OSS地址,我是自己使用OSS客户端工具,把镜像文件上传文件到同区域的bucket下,具体细节就不详述。大家有兴趣参考OSS相关文档。
3. 点击导入镜像,在弹出窗口做如下配置
注意:先点击最上方绿色部分3后面的“确认地址”。授权ecs镜像官方账号有读取你oss的bucket文件的权限,这样才能导入成功
4. 点击确认后,开始导入镜像
5. 需要等待几分钟,待进度100%后表示导入镜像OK
6. 进入到刚购买好的ECS,管理,选择停止ECS。
7. 再选择管理-更换系统盘。(我突然想到还可以先导入镜像后,购买ECS的时候直接选择自定义镜像启动也OK)
8. 选择自定义镜像下拉框,选择刚才导入的自定义镜像。
9. 点击确认更换,
10. 等待ECS重新启动,通过控制台远程连接测试。看到如下登录界面,表示部署成功。
11. 输入root密码,登录网关做相关配置。输入display-ip-addr,获取IP相关信息。这里也可以直接输入部署的ECS的IP地址。红色部分是IP,安全起见,打码隐藏。
12. 我这里为了测试方便,另外购买了一台同Region的ECS window测试机器。输入URL:IP:8000的方式访问,在web界面上登录。从logo看这款产品应该是同阿里云的合作伙伴数梦工程合作开发的,相信数梦同阿里云的关系,这款产品也值得信赖。输入默认密码admin/dtdream@123进入到配置界面
您需要开通并创建OSS 同部署存储网关区域的bucket,在OSS设置界面输入相关信息包括Endpoint,bucketname和ak。这里有个小技巧,如果您是在统一region下的oss,选择内网的endpoint,这样存储网关到oss直接全部走内网免费流量。
获取endpont位置示意,在oss控制台bucket概述的oss域名部分可以看到。我的bucket是之前创建的,大家忽略我的bucket的名字。
13. 网络设置区块不用改并在license区块点击试用,保存。
14. 配置文件系统,我演示下支持windows的cifs相关配置。
15. 在Web页面中左侧导航栏选择"CIFS",进入"共享设置"页面,滑动"CIFS服务状态"开关打开CIFS服务
16. 当用户设置了使用LDAP统一认证时,这里的用户组和用户将是LDAP服务器上的用户组和用户。
如果使用本地用户管理时,需要先添加用户组,再添加用户到用户组中,用户必须属于某一个用户组。
17. 在Web页面中左侧导航栏选择"CIFS",进入"共享用户"页面。先创建用户组,如下图所示。
18. 再创建用户,如下图所示
19. LDAP统一认证我没有相关的环境,有兴趣的朋友可以尝试。然后,添加共享目录文件及访问权限,选择刚才创建的test用户组。点击确定
20. OK,基本设置大功告成。迫不及待的来试试效果。
21. 在我购买的ecs的windows测试机,输入部署存储网关的内网ip地址。并创建共享盘。
22. 哇喔,一个叫osgw的网络盘出来了。我随便copy了几个600MB的视频文件体验了下速度,还不错。能有59MB/s左右的吞吐。
23. 进入到OSS控制台,查看对应的bucket,通过存储网关上传的文件(夹)在OSS控制台已经可以看到。
24. 挑选不同文件大小,从64k~1GB跑了下读写性能。有点超出期望,ecs内网带宽应该只有200MB/s默认,竟然在网关上跑出高过200MB/s的吞吐。应该是本地缓存带来的读写性能提升。数据是异步再写入到oss的。
25. 总体来看,这块存储网关能极大的降低用户使用oss的门槛,特别是对cifs的支持,让windows用户也能挂盘的方式直接使用oss。我获取的文档看,这块网关还支持高可用,支持一写多读,时间的关系没有来得及一一验证。有兴趣的读者可以自行研究。
对了,现在如果希望获取这个存储网关测试版本,可以在评论区点赞留言,留下你的阿里云登录账号和希望测试的Region,我可以共享镜像给你。其他支持在非ECS部署的版本,要等到官方的正式版本出来了。