NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

AWS 文件存储网关初体验

  • 2019-11-18
  • 本文字数:5462 字

    阅读完需:约 18 分钟

AWS文件存储网关初体验

1. 背景介绍

AWS Storage Gateway 是一项可以帮助用户实现在混合架构环境中将本地数据中心内设施与 AWS 云端存储进行无缝集成的服务。通过 Storage Gateway 可以简化本地 IT 环境与云端存储间移动数据,将数据存储到 AWS 云,并且实现备份,存档以及灾难恢复等主要功能。


Storage Gateway 家族之前已经包含有基于卷接口以及磁带接口类型的网关设备,帮助用户可以在适当的场景下选择合适的方式去将本地的数据迁移到云端,在去年 Las Vegas 举办的 re:Invent 大会上,AWS 更进一步又推出基于文件接口(支持 NFS3 和 NFS4.1)类型的存储网关,给用户提供了更多的选择,方便用户可以通过标准的文件协议将文件作为对象直接存储在 Amazon S3 上,这样不但可以借助于 S3 超高的持久性优势对文件进行持久化保存,还可以将 S3 对象的版本控制,生命周期管理以及跨区域复制等存储策略直接应用到存储对象中。


要使用文件存储网关服务,必须为存储网关下载虚拟机镜像,并从 AWS 管理控制台或存储网关 API 激活它。写入到 NFS 的文件成为 Amazon S3 中的对象, 文件与对象之间存在一对一的映射,对象使用 Amazon S3 托管的加密密钥 (SSE-S3) 在服务器端加密,所有数据传输通过 HTTPS 执行。


文件存储网关服务使用分段并行上传等技术,优化了网关与 AWS 之间的数据传输,以更好利用可用带宽。与缓存卷类似,系统维护本地缓存以提供对最近访问数据的低延迟访问,并减少数据传出成本。


新年伊始,让我们撸起袖子,一起来体验一下新型的存储网关带来的超能力,尝试如果使用文件存储网关这项新的功能来实现对本地文件的云端迁移。

2. 部署与配置存储网关

文件存储网关适用于将数据传入到 S3 以供应用日常使用、备份和存档到 AWS 云上不同类型的存储服务。



图 1


在进入具体的安装部署环节之前,我们首先来了解一下使用文件存储网关中涉及到的主要调用流程。用户的应用服务器运行在自有数据中心内,在用户环境中部署文件存储网关(File Gateway),用户或应用服务器通过 NFS 客户端连接存储网关,利用网关,可以将 S3 中的存储桶作为 NFS 装载点,从而对文件进行写入和访问。

2.1 安装部署文件存储网关

首先登录到 AWS Storage Gateway Console


https://console.amazonaws.cn/storagegateway/home?region=cn-north-1


2.1.1 选择网关类型


在导航窗格中,选择 Gateways,然后选择 Create gateway;


在 Select gateway type 页面上,选择 File gateway,然后选择 Next;



图 2


2.1.2 选择主机平台


现阶段文件存储网关只支持本地运行在 VMware ESXi 虚拟化环境中,选择 Download image,下载安装包,解压后得到.ova 类型文件;



图 3


1)通过 VMware vCenter 控制台将 Storage Gateway 虚拟机部署到用户本地的虚拟化环境中。此处省略部署 Storage Gateway 虚拟机过程,详细步骤请参考:


http://docs.aws.amazon.com/zh_cn/storagegateway/latest/userguide/deploy-gateway-vmware.html


注意: 必须满足最低的主机配置要求;


选择 Thick provisioned format 磁盘类型;


确保存储网关主机上的时钟与网络时间协议 (NTP) 服务器同步。


2)添加存储网关本地磁盘存储


存储网关至少需要添加一个磁盘以便进行缓存,客户端对文件的访问会首先在缓存中去获取文件信息,这样将大大减少通过网络去 S3 直接获取文件的延迟,文件存储网关缓存最大值为 16TB。


建议:将用于缓冲区的磁盘专门使用一个数据存储。


2.1.3 连接网关


登录到 VMware vCenter 管理界面,点击网关虚拟机,在 Summary 页面中记录下网关 IP 地址信息


切换到 AWS 控制台界面,输入文件存储网关 IP,选择 Connect to gateway



图 4


2.1.4 激活网关


选择存储网关的时区并为网关命名,最后点击 Activate gateway



图 5


2.1.5 配置本地磁盘


选择在步骤 2.1.2 中为文件存储网关配置的新挂载的磁盘作为网关的缓存,确定要用于缓存存储的磁盘。



图 6


保存并完成配置任务,观察新创建的存储网关状态是否为 Running



图 7

2.2 创建文件共享

2.2.1 Amazon S3 上创建存储桶,以便作为 NFS 挂载点保存文件;


2.2.2 创建文件共享


在 Storage Gateway 服务导航窗格上,选择 File shares,然后选 择 Create file share;


选择之前创建的网关,输入已建立好的 S3 存储桶名称,并且必须有访问存储桶的权限。我们可以创建新的 IAM role 或者通过已有的 IAM role 的方式来使用。



图 8


如果使用已有 IAM role,则请确保赋予如下的信任关系及访问权限


1)信任策略允许 Storage Gateway


{


"Version": "2012-10-17",


"Statement": [


{


"Sid": "",


"Effect": "Allow",


"Principal": {


"Service": "storagegateway.amazonaws.com"


},


"Action": "sts:AssumeRole",


"Condition": {


"StringEquals": {


"sts:ExternalId":"account-id"


}


}


}


]


}


2)将 IAM role 赋予如下 S3 访问及操作权限,请注意中国区 arn 独特的标示 以及将存储桶名替换为之前需要访问的存储桶名称


{


"Version": "2012-10-17",


"Statement": [


{


"Action": [


"s3:GetAccelerateConfiguration",


"s3:GetBucketLocation",


"s3:GetBucketVersioning",


"s3:ListBucket",


"s3:ListBucketVersions",


"s3:ListBucketMultipartUploads"


],


"Resource": "arn:aws-cn:s3:::filegatewaybucket",


"Effect": "Allow"


},


{


"Action": [


"s3:AbortMultipartUpload",


"s3:DeleteObject",


"s3:DeleteObjectVersion",


"s3:GetObject",


"s3:GetObjectVersion",


"s3:ListMultipartUploadParts",


"s3:PutObject"


],


"Resource": "arn:aws-cn:s3:::filegatewaybucket/*",


"Effect": "Allow"


}


]


}

2.3 如何使用文件存储网关

现在我们已经安装部署了文件存储网关,并且创建了 S3 存储桶作为文件共享的容器,下面我们就以 Microsoft Windows 操作系统为例,来看看如何实际使用文件存储网关。


2.3.1 将文件共享连接到 Microsoft Windows 客户端


1)在 Windows 客户端中为 NFS 启用服务;


2)在 Windows 客户端的命令提示符下,键入挂载命令,将 S3 存储桶作为 Windows 系统映射的驱动器盘符:


mount –o nolock 网关 IP 地址:/S3 存储桶名称 Windows 客户端上的驱动器盘符:


具体执行命令如下所示:


mount –o nolock 10.29.1.2:/filegatewaybucket Z: (注意命令最后的驱动器盘符的:)


2.3.2 测试文件网关


在 Windows 客户端上,导航到文件共享的驱动器盘符(Z:)。驱动器名称前面是您的 S3 存储桶的名称。


将一些文件或文件夹复制到驱动器。



图 9


在 S3 管理控制台上,导航到您映射的存储桶。此时应该看到在您指定的 S3 存储桶中复制的文件和文件夹。



图 10


通过 NFS 客户端可以对文件进行写入、读取、删除等操作。


读取操作首先访问本地磁盘中的缓存文件,如果文件不在缓存,则从 S3 中提取并添加到缓存中。写入操作,通过回写式缓存,将文件分段上传写入到 S3。


注意:如果使用 Linux 操作系统,可通过如下命令进行挂载,使用方法相似:


mount –t nfs –o nolock 网关 IP:/S3 存储桶名称 [MountPath]

3. 管理与监控存储网关

3.1 管理存储网关

除了使用 AWS Storage Gateway 管理控制台进行日常的管理和维护工作外,用户还可以通过使用默认用户名 sguser 和密码 sgpassword 来登录存储网关虚拟机的管理配置界面,下图为网关虚拟机本地控制界面。



图 11


3.1.1 测试网络连接情况


键入 3 测试网络连接情况



图 12


键入 6 ,选择测试中国区,测试 Internet 连接。当排查网关的网络问题时,此测试可能会很有用,如果提示[FAILED]信息,请检查网络或防火墙配置是否正确。



图 13


3.1.2 可用管理命令


键入 5 以打开 AWS Storage Gateway 控制台,键入 h 以打开 AVAILABLE COMMANDS (可用命令) 窗口。



图 14


可以通过控制台命令行来获取网关的 IP,修改密码以及申请支持等能力。


3.1.3 网关系统资源检查


键入 6 可以查看网关资源配置情况,如果资源配置不满足要求,则会提示资源不足错误,网关将无法正常运行。



图 15

3.2 监控存储网关

除了日常的管理工作,用户可以通过使用 CloudWatch 来监控与存储网关相关的主要参数,其中包括 CloudBytesDownloaded,CloudBytesUploaded, CacheUsed, CacheHitPercentage 等指标,通过不同指标可以监控 Storage Gateway 到云端上传及下载的使用量及 Cache 相关的使用情况,如下图所示。


用户还可以通过 CloudTrail 捕获 Storage Gateway 调用 API 的情况,并将日志文件保存在 S3 存储桶中 。



图 16

4. 小结

文件存储网关服务的推出是对当前基于数据卷和 VTL 存储网关的一个补充,通过对标准的文件系统协议的支持,使得用户可以无需修改现有应用程序便可以将文件存储在云端。大大简化了混合架构模式下用户希望借助 Amazon S3 来替代本地存储的过程,以帮助用户实现节约成本和更高持久化的保障。存储网关还通过本地缓存方式提供对数据的低延迟访问,集成 AWS Identity and Access Management (IAM) 进行访问控制,以及使用 AWS 管理控制台和 AWS Command Line Interface (AWS CLI) 进行管理操作。


当然,文件存储网关现阶段只支持 VMware ESXi 虚拟化环境,对于需要使用其他虚拟化软件的小伙伴还需要再耐心等待一下。另外,网络条件也将会成为影响文件存储网关使用体验的重要因素之一。


作者介绍:



周琦,亚马逊 AWS 解决方案架构师,拥有 10 年 IT 领域工作经验,先后在 IBM,VMware 等公司担任工程师及架构师等职位,现负责 AWS 云服务在国内的推广和支持工作,同时致力于企业混合云,DevOps 以及微服务等领域的研究。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/storage-gateway-first-experience/


2019-11-18 08:00858

评论

发布
暂无评论
发现更多内容

技术干货 | jsAPI 方式下的导航栏的动态化修改

蚂蚁集团移动开发平台 mPaaS

容器 大前端 移动开发 mPaaS 动态化

从Ftrace开始内核探索之旅

金蝶天燕云

Linux内核 Ftrace

开源许可协议介绍

webrtc developer

无处不在的Kubernetes ,难用的问题解决了吗?

望宸

容器 云原生 PaaS KubeVela kubenetes

爱奇艺埋点投递治理实践

爱奇艺技术产品团队

数据治理 埋点 pingback

超低延迟直播架构解析

百度开发者中心

音视频 直播技术 智能视频

【万字长文】吃透负载均衡

Java 负载均衡 架构 面试 后端

iOS签名校验那些事儿

百度Geek说

后端

☕【Java技术指南】「技术盲区」看看线程以及线程池的异常处理机制都有哪些?

洛神灬殇

Java 线上程序问题 线程异常 10月月更

第六届世界智能大会主题征集活动入选主题公布

InfoQ 天津

Apache APISIX 社区成员助力 openEuler 发布第一个社区创新版

API7.ai 技术团队

开源 openresty openEuler api 网关 Apache APISIX

怎样才能画出清晰明了的时序图

华为云开发者联盟

接口 模型 UML 系统 时序图

腾讯云,五轮面试,六个小时,灵魂拷问,含泪拿下 60W offer

收到请回复

Java 面试 大厂Offer

等级保护测评机构哪里可以查询?谁能告知一下!

行云管家

网络安全 等保测评 安全等级保护

Vue进阶(幺叁捌):vue 路由传参的几种基本方式

No Silver Bullet

Vue 路由 10月月更

产业互联网下半场,SaaS平台的机遇与挑战

雯雯写代码

SaaS

北鲲云超算平台提供生命科学领域所需要的哪些软件?

北鲲云

开源应用中心 | KodExplorer高效流畅云端存储&协同办公新体验

开源 开源技术

Apache APISIX 社区新里程碑——全球贡献者突破 300 位!

API7.ai 技术团队

开源社区 API网关 Apache APISIX

基于HarmonyOS分布式技术,这群学生赋予冰箱更智能的体验

科技汇

秀到飞起!Alibaba全新出品JDK源码学习指南(终极版)限时开源

收到请回复

Java jdk 面试

SSH工具有哪些?哪款好用?

行云管家

运维 SSH 文件传输 SSH工具

Python代码阅读(第38篇):根据谓词函数和属性字符串构造判断函数

Felix

Python 编程 Code Programing 阅读代码

新书榜第一的《图解产品》,帮助内卷中的产品经理实现跨越式发展!

博文视点Broadview

官方线索|2021科大讯飞全球开发者大会

搬砖人

AI 大会 1024我在现场

云小课丨SA基线检查:给云服务来一次全面“体检”

华为云开发者联盟

态势感知 华为云 基线检查 SA 上云合规

java springboot自习室选座预约小程序源码

清风

计算机毕业设计

10 月 30 日 北京 LiveVideoStack 阿里云视频云专场限量赠票 100 张

阿里云视频云

阿里云 音视频 高清视频 视频编解码 视频云

阿里大牛珍藏版:高并发系统设计(全彩版手册)带你从基础走向实战

Java 架构 面试 后端 高并发

关于征集第六届世界智能大会平行论坛活动方案的通知

InfoQ 天津

一周信创舆情观察(9.27~10.10)

统小信uos

AWS文件存储网关初体验_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章