logo logo
关于我们

技术分享

技术分享 从用户Windows系统到阿里云NAS SMB服务:常用数据迁移备份工具

从用户Windows系统到阿里云NAS SMB服务:常用数据迁移备份工具

2018-05-26

本文介绍如何由本地(on-premises) 或阿里云的虚拟机Windows系统向阿里云NAS SMB服务上传和备份数据。

阿里云文件系统SMB协议服务介绍

阿里云文件存储服务NAS(阿里云NAS)是阿里云在2016年正式推出的公有云上的网络文件系统实现。阿里云NAS主要面向阿里云 ECS 实例、HPC、Docker、弹性Web和BatchCompute 等计算节点提供文件存储服务。通过标准的文件访问协议,用户无需对现有应用做任何修改,即可在云上使用具备无限容量及性能扩展、单一命名空间、多共享、高可靠和高可用等特性的分布式文件系统。阿里云NAS目前已经正式支持的网络文件系统协议包括NFS V3/V4以及SMB2。阿里云NAS使用的一些典型的商业场景主要包括网站内容服务、企业数据共享应用、多媒体信息工作流处理以及大数据分析等等。


为了丰富文件系统的协议支持和满足客户的兼容性需求,阿里云NAS在2017年3月提供SMB(Server Message Block)文件系统访问协议的支持,并开始向用户开放公测。与NFS相比,SMB文件系统访问协议更加适合于Windows客户端,各个版本的Windows对SMB协议的支持更加完善,绝大多数Windows应用程序不经修改即可通过SMB协议访问阿里云文件存储服务。因此,阿里云建议应用集中运行在Windows客户端的用户优先考虑使用SMB文件系统。阿里云是目前市场上唯一一个全面支持NFS和SMB协议的公有云厂商。在公测期间,阿里云NAS SMB支持经过了全面优化,特别是提供了对并发IO和小文件操作的更好支持。2018年1月,阿里云NAS SMB支持正式商业化,在阿里云国内的所有区域和部分海外区域提供服务。

常用数据迁移备份方式

除了阿里云ECS的虚拟机用户以外,目前很多Windows系统用户面临着从线下数据中心或者传统企业环境向阿里云NAS迁移备份数据的需求,从而保证重要信息的安全性和高可用性,并且为进一步的计算上云做准备。下面我们说明和讨论几种有效的从Windows系统向阿里云NAS SMB服务迁移备份数据的有效方式。

 数据物理迁移

对于本地(on-premises)用户来说,当有海量数据需要迁移上云时,阿里云的闪电立方服务是最为有效的超越广域网带宽限制的方案。在数据安全性方面闪电立方也满足了企业严格的要求,采用AES 256端到端加密算法,密钥由用户保管,运送过程中全程断网,同时配备24小时定位监控。阿里云同时也继续提供通过邮寄硬盘来进行数据物理迁移的方式。

阿里云NAS数据迁移工具nasimport

对于用户系统不能接入阿里云网络的情况,用户可以将文件系统数据通过公网上传到阿里云OSS服务,接着在用户的ECS虚拟机上运行阿里云NAS数据迁移工具nasimport,将数据导入用户的NAS 文件系统。


在能够挂载阿里云NAS文件系统的ECS虚拟机或者接入阿里云网络的用户本地系统上,用户通过运行阿里云NAS数据迁移工具,也能够高速有效地将本地文件系统数据上传同步到阿里云NAS。需要注意的是,对于用户本地系统而言,通过专线、NAT网关或者VPN网关接入阿里云网络是使用阿里云NAS数据迁移工具的前提条件。请参阅后面的参考网页和阿里云官网。

 

以上的进一步的细节请参阅阿里云官网文档“Windows环境数据迁移工具”

FTP

用户可以在ECS Windows虚拟机上运行FTP服务,自己通过内网或公网提供数据导入和分享服务。通过IIS来提供FTP服务的配置和客户端安全等细节可以参考我们的阿里云官网文档”用Windows IIS和阿里云NAS提供Web和FTP服务“

Windows内置拷贝工具robocopy

在Windows系统上,大多数用户所熟悉的文件拷贝方式是使用Windows Explorer的图形界面或者通过copy命令将数据复制到SMB共享盘上。用这两种方式虽然可以比较简单地将数据迁移到阿里云NAS,但是由于并发度不够导致它们效率不高。对于大量文件的拷贝,如果阿里云NAS迁移工具由于Java环境等因素受限时,我们推荐使用Windows内置的robocopy命令来进行大量文件的拷贝。

 

robocopy作为Windows的高效拷贝工具,从Windows Vista / Windows Server 2008开始内置在Windows系统中,取代了原来的xcopy工具,xcopy的命令行格式如下:

 

  robocopy <Source> <Destination> [<File>[ ...]] [<Options>]

 

具体的使用说明见链接的微软文档”robocopy“和参考“robocopy /?”命令行帮助输出。下面几个选项比较常用:

 

/MT:n - 指定拷贝的并发线程数。缺省的线程数是8,由于网络延迟的限制,对于通过专线和网关接入的用户,我们的建议是使用32或者更大的线程数来保证带宽的有效使用。

 

/MIR - 镜像整个目录,目标目录如果有源目录不存在的文件会被删除。

 

/s – 拷贝子目录,但是不包括空子目录。

 

/e – 拷贝子目录,包括空子目录。

 

/log:<LogFile> - 输出拷贝状态信息到日志文件

 

/max:<N>/min:<N> - bytes为单位指定文件长度范围。如/min:100只拷贝长度大于等于100bytes的文件。

 

/maxage:<N>和/minage:<N> - 用以表示以天为单位的文件修改时间范围,如/maxage:5  /minage:1表示拷贝最近五天修改过的文件,但是不包括今天修改的文件。

 

/XD <directory> - 排除指定的目录名,如用户不希望拷贝临时目录。

 

假定用户已经将他在阿里云NAS的SMB share挂载为F:盘。下面一个例子展示了该用户如何将自己在C:\data下面、未在最近两天修改过的、所有长度大于1KB的.txt文件逐层复制到F:\txt_backup目录下,拷贝的过程用32个线程来完成,忽略空子目录。


从用户Windows系统到阿里云NAS SMB服务:常用数据迁移备份工具      

          

Windows备份软件

Windows Server Backup 是一个 Windows 原生的数据(整盘、文件夹或者文件)备份和恢复的工具。通过 Windows Server Backup 可以备份整个服务器(所有卷)、选定卷、系统状态或者特定的文件或文件夹,到其他设备(包括其他硬盘、磁带库或者远程共享文件夹),并且可以在需要的时候从其他硬盘、磁带库或者远程共享文件夹进行数据的恢复。用户可以将自己的数据定期地备份到阿里云NAS SMB share上,并在需要的时候进行恢复。具体细节请参考我们的阿里云官网文档“使用 Windows Server Backup 从 ECS 备份数据到 NAS”

Rsync及相关软件

Rsync是在Unix/Linux环境被广泛使用的增量备份和同步软件,在Windows环境直接运行rsync需要安装Cygwin等模拟Linux环境,熟悉Linux环境的用户可以用这个方式在阿里云ECS Windows虚拟机上挂载SMB share并用常驻模式(daemon mode)打开rsync,然后在本地系统上用rsync作为客户端通过公网或者专线来进行基于SSH的增量同步。需要注意的是在服务器端rsync的监听端口需要打开(默认是TCP端口873), 如果不通的话用户需要检查自己的网络安全设置。

 

有一些rsync的衍生软件如cwRsync、DeltaCopy等提供在Windows上运行rsync的能力,但是这些软件往往需要收费或者版本过老,我们目前不推荐使用。

Rclone

Rclone是一个开源的命令行工具,支持在不同对象存储、网盘间同步、上传和下载数据。支持的主流云对象存储包括Dropbox,Amazon S3,Google Drive, Azure Blob Storage,Microsoft OneDrive等,同时也支持传统的本地文件系统,HTTP,FTP等存储协议。Rclone的官网是https://rclone.org/,可以在上面下载到Windows及其它操作系统的可执行文件,也可以在上面找到源代码链接自己编译。

 

对于阿里云的Windows系统用户,rclone是一个非常有效的数据同步和迁移工具,可以帮助用户(1)将本地文件数据同步到阿里云NAS SMB share; (2)将在主流云对象存储上的对象、网站上的文件或者本地Ceph系统存储的对象导入阿里云NAS。

 

对应阿里云NAS的用户来说,Rclone最简单的使用方式是挂载SMB share以后作为本地文件系统来同步和拷贝数据。copy和sync是最常用的两个命令。

 

rclone copy - 将文件从源复制到目的地址,类似rsync,在这个过程中跳过已复制完成的文件,同时不会删除目的地址已有的文件。

 

rclone sync - 将文件从源同步到目的地址,保证目的地址和源完全一致,如果目的地址包含有源没有的文件会被删除。建议用—dry-run在同步以前预先演练一遍防止误删除数据。

 

和rsync以及前面介绍的robocopy一样,rclone允许在命令行设置filter来选择需要同步的文件的模式如文件长度、时间等。下面的例子与前面的robocopy的例子类似,将一个用户在C:\data 下面的、未在最近两天被修改过的、长度大于1KB的.txt文件逐层同步到F:\txt_backup目录下。 进一步的细节请参阅https://rclone.org/filtering/

 

rclone copy c:\data f:\txt_backup --include *.txt --min-size 1k --min-age 2d


进一步的rclone的使用方式和细节,特别是如何从各种云对象存储同步数据,请参阅rclone的官方使用说明https://rclone.org/docs/和论坛https://forum.rclone.org/

参考网页

阿里云文件存储

阿里云NAS新手入门

用Windows IIS和阿里云NAS提供Web和FTP服务

使用 Windows Server Backup 从 ECS 备份数据到 NAS

Windows环境数据迁移工具

通过NAT网关实现从用户IDC机房或者跨地域挂载文件系统

通过VPN网关实现从用户IDC或者跨地域挂载文件系统

云祺备份软件,云祺容灾备份系统,虚拟机备份,数据库备份,文件备份,实时备份,勒索软件,美国,图书馆
  • 标签:
  • 技术分享

您可能感兴趣的新闻 换一批

现在下载,可享30天免费试用

立即下载

请添加好友为您提供支持
jia7jia_7

请拨打电话
为您提供支持

400-9955-698