你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍了迁移到 SMB Azure 文件共享的基本方面,并包含一个迁移指南表。 这些指南有助于将文件移到 Azure 文件共享。 指南根据数据所在的位置以及你要移动到的部署模型(仅限云的模型或混合模型)进行组织。
适用于
文件共享类型 | SMB | NFS |
---|---|---|
标准文件共享 (GPv2)、LRS/ZRS | ![]() |
![]() |
标准文件共享 (GPv2)、GRS/GZRS | ![]() |
![]() |
高级文件共享 (FileStorage)、LRS/ZRS | ![]() |
![]() |
迁移基础知识
目标是将数据从现有文件共享位置移动到 Azure。 在 Azure 中,你会将数据存储在无需安装 Windows Server 即可使用的原生 Azure 文件共享中。 在执行这种迁移时,需要保证生产数据的完整性以及迁移期间的可用性。 后者要求尽量减少故障时间,因此可在正常维护时段进行迁移,或者仅略微超出这些时段操作。
Azure 提供不同类型的云存储。 文件迁移到 Azure 的一个重要方面是确定哪个 Azure 存储选项适合你的数据。
Azure 文件共享适用于常规用途的文件数据。 这种数据包括你针对其使用本地 SMB 共享的任何内容。 通过 Azure 文件同步,可以在本地运行 Windows Server 的服务器上缓存多个 Azure 文件共享的内容。
对于当前在本地服务器上运行的应用,将文件存储在 Azure 文件共享中可能是一个不错的选择。 你可以将应用移到 Azure,并使用 Azure 文件共享作为共享存储。 还可以考虑将 Azure 磁盘 用于此场景。
某些云应用不依赖于 SMB 或计算机本地数据访问/共享访问。 对于这些应用,Azure Blob 之类的对象存储通常是最佳选择。
保留文件保真度
任何文件共享迁移中的一个关键方面是在将文件从当前存储位置移动到 Azure 时捕获尽可能多的文件保真度。
下面是文件的两个基本组件:
- 数据流:文件的数据流存储文件内容。
- 文件元数据:与 Azure Blob 中的对象存储不同,Azure 文件共享可以本机存储 支持的文件元数据。 通常,常规用途的文件数据依赖于文件元数据。 应用数据可能不会。 文件元数据具有以下子组件:
- 文件特性,如只读
- 文件权限,通常可称为“NTFS 权限”或“文件和文件夹 ACL”
- 时间戳,最值得注意的是创建时间戳和上次修改时间戳
- 另一种 数据流,它是存储大量非标准属性的空间。 此备用数据流无法存储在 Azure 文件共享的文件中。 它将在使用 Azure 文件同步时,保留在本地。
可以将迁移中的文件保真度定义为能够执行以下操作的能力:
- 将所有适用的文件信息存储在源上。
- 通过迁移工具传输文件。
- 将文件存储在迁移的目标存储中。
本文中迁移指南的目标是一个或多个 Azure 文件共享。 请考虑这个 SMB Azure 文件共享不支持的功能列表。
若要确保迁移顺利进行,请根据需要确定最佳复制工具,并将存储目标与源相匹配。
重要说明
如果要将本地文件服务器迁移到 Azure 文件存储,请在复制大量文件之前为文件共享的根目录设置 ACL,因为如果在大型文件迁移后执行此操作,对根 ACL 的权限变更可能需要花费很长时间进行传播。
利用 Active Directory 域服务 (AD DS) 作为本地域控制器的用户可以以本机方式访问 Azure 文件共享。 Microsoft Entra 域服务的用户也可以这样做。 二者都可使用其当前标识,基于共享权限以及文件和文件夹 ACL 来获取访问权限。 此行为类似于连接到本地文件共享的用户。
详细了解如何通过 SMB 对 Azure 文件存储进行基于标识的身份验证。
支持的元数据
下表列出了 Azure 文件存储支持的元数据。
重要说明
目前,目标共享上的文件或目录不支持 LastAccessTime 时间戳。 但是,Azure 文件存储会在收到请求时返回文件的 LastAccessTime 值。 由于 LastModifiedTime 时间戳在读取操作时未更新,因此它始终等于 CreationTime。
来源 | 目标 |
---|---|
目录结构 | 源的原始目录结构可以保留在目标共享上。 |
访问权限 | Azure 文件存储支持 Windows ACL,即使在迁移时未配置 AD 集成,也必须在目标共享上设置 Windows ACL。 必须保留以下 ACL:所有者安全标识符 (SID)、组 SID、随机访问控制列表 (DACL)、系统访问控制列表 (SACL)。 |
创建时间戳 | 源文件的原始创建时间戳可以保留在目标共享上。 |
更改时间戳 | 源文件的原始更改时间戳可以保留在目标共享上。 |
修改时间戳 | 源文件的原始修改时间戳可以保留在目标共享上。 |
文件属性 | 只读、隐藏和存档标志等常见属性可以保留在目标共享上。 |
发现阶段
迁移的第一个阶段是发现阶段,在其中确定需要迁移的所有现有 SMB 文件共享,包括其大小、数字和任何依赖项。 这可以是一项艰巨而耗时的任务,尤其是对于具有大型分布式环境的组织而言。 对于文件数据超过 100 TiB 的客户,我们建议使用 Komprise,这是第三方工具,可帮助发现和分析文件共享。 有关详细信息,请参阅 Komprise 文件迁移。
请记住,现有的 SMB 文件共享可能不限于本地 Windows Server。 它们可以位于 Linux 服务器、云或外部 NAS 设备上。
评估阶段
发现后,评估阶段涉及了解文件存储的可用选项、部署所需的 Azure 资源以及准备使用 Azure 文件共享。
部署 Azure 存储资源
作为评估阶段的一部分,你将在其中预配 Azure 存储帐户和 SMB Azure 文件共享。
Azure 文件共享部署在 Azure 存储帐户的云中。 对于标准文件共享,这样安排会使存储帐户成为 IOPS 和吞吐量等性能数字的缩放目标。 如果将多个文件共享放置在单个存储帐户中,则会为这些共享创建一个包含 IOPS 和吞吐量的共享池。
通常情况下,如果你有存档共享或预计文件共享的日常活跃度较低,可将多个 Azure 文件共享加入同一存储帐户。 但是,如果共享的活跃度很高(共享由多个用户和/或应用程序使用),则需要在部署存储帐户时使每个帐户都有一个文件共享。 这些限制不适用于 FileStorage(高级)存储帐户,此类存储帐户为每个共享显式预配并保证性能。
注释
每个 Azure 区域的每个订阅的存储帐户限制为 250 个。 增加配额后,每个区域最多可以创建 500 个存储帐户。 有关详细信息,请参阅增加 Azure 存储帐户配额。
部署存储帐户时,另一个要考虑的问题是冗余。 请参阅 Azure 文件存储冗余。
如果你已创建共享列表,则应将每个共享映射到创建它时所在的存储帐户。
资源的名称也很重要。 例如,如果将 HR 部门的多个共享归入一个 Azure 存储帐户中,则应适当地命名存储帐户。 同样,命名 Azure 文件共享时,应使用与本地对应项所用名称类似的名称。
现在,请按照创建 SMB 文件共享中的说明部署相应数量的 Azure 存储帐户,并在其中部署相应数量的 Azure 文件共享。 在大多数情况下,需要确保每个存储帐户的区域相同。
准备使用 Azure 文件共享
还需要决定如何设置 Azure 文件共享,以便 Azure 和 Azure 外部的服务器和用户能够利用它。 最关键的决策是:
- 网络:使网络能够路由 SMB 流量。 有关详细信息,请参阅 Azure 文件共享的网络概述 。 可以使用公共终结点、专用终结点或两者的组合。
- 认证: 为 Azure 存储帐户配置基于标识的身份验证,并将存储帐户加入 AD 域。 这将允许应用和用户使用其 AD 标识进行身份验证。
- 授权:每个 Azure 文件共享的共享级别 ACL 都将允许 AD 用户和组访问给定共享。 在 Azure 文件共享中,本机 NTFS ACL 将会进行接管。 然后,基于文件和文件夹 ACL 的授权将发挥作用,就像对本地 SMB 共享一样。
- 业务连续性:将 Azure 文件共享集成到现有环境通常需要保留现有的共享地址。 如果你尚未使用 DFS 命名空间,请考虑在环境中创建它。 可将用户和脚本使用的共享地址保持不变。 DFS-N 将通过将客户端重定向到 Azure 文件共享,为 SMB 提供命名空间路由服务。
此视频是有关如何通过五个简单步骤将 Azure 文件共享直接安全地公开给信息工作者和应用的指南和演示。
该视频引用了以下主题的专用文档。 请注意,Azure Active Directory 现已更名为 Microsoft Entra ID。 有关详细信息,请参阅 Azure AD 的新名称。
迁移指南
为迁移方案选择合适的工具至关重要。 下表列出了用于迁移到 SMB Azure 文件共享的建议工具组合。
如何使用该表:
找到当前存储文件的源系统的行。
选择以下目标之一:
- 混合部署: 使用 Azure 文件同步 在本地缓存 Azure 文件共享的内容,并将不太频繁使用的文件分层到云中。
- 仅限云的部署:云端的 Azure 文件共享,无需本地缓存。
选择与你的选择相匹配的目标列。
在源和目标的交集内,表单元格列出可用的迁移场景。 选择一个以查看迁移指南。
没有链接的场景目前还没有发布的迁移指南。 偶尔检查此表中是否有更新。
来源 | 目标: 混合部署 (Azure 文件存储 + Azure 文件同步) |
目标: 纯云部署 (Azure 文件存储) |
---|---|---|
建议的工具组合: | 建议的工具组合: | |
Windows Server 2012 R2 和更高版本 |
|
|
Windows Server 2012 或更早版本 |
|
|
Linux (SMB) |
|
|
网络连接存储 (NAS) |
文件复制工具
若要为迁移方案选择合适的工具,请考虑以下基本问题:
该工具是否支持文件复制的源位置和目标位置?
该工具是否支持源存储位置和目标存储位置之间的网络路径或可用协议(例如 REST 或 SMB)?
该工具是否保留源位置和目标位置支持的必要文件保真度?
在某些情况下,目标存储不支持与源相同的保真度。 如果目标存储足以满足你的需求,则该工具只必须匹配目标的文件保真功能。
该工具是否具有可使其适应你的迁移策略的功能?
例如,考虑该工具是否可以最大程度地减少停机时间。
当某个工具支持将源镜像到目标的选项时,通常可以在同一源和目标上多次运行该工具,而源仍可访问。
首次运行该工具时,它会复制大量数据。 此初始运行可能会持续一段时间。 它持续的时间通常比使业务流程的数据源脱机所需的时间长。
通过将源镜像到目标(与使用 robocopy/MIR 一样),可以在该相同源和目标上再次运行该工具。 此第二个运行的速度要快得多,因为它只需要传输在上次运行后发生的源更改。 通过这种方式重新运行复制工具可显著减少停机时间。
下表对 Microsoft 工具及其当前对 SMB Azure 文件共享的适用性进行了分类:
建议 | 工具 | 对 Azure 文件共享的支持 | 对文件保真度的保留 |
---|---|---|---|
![]() |
Azure 存储移动程序 | 支持。 | 完全保真。* |
![]() |
Azure Data Box | 支持。 | 完全保真。* |
![]() |
RoboCopy | 支持。 可以将 Azure 文件共享装载为网络驱动器。 | 完全保真。* |
![]() |
Azure 文件同步 | 以本机方式集成到 Azure 文件共享中。 | 完全保真。* |
![]() |
Azure 存储迁移计划 | 支持。 | 完全保真。* |
![]() |
存储迁移服务 | 间接支持。 可以在 SMS 目标服务器上将 Azure 文件共享装载为网络驱动器。 | 完全保真。* |
![]() |
Data Box(包括数据复制服务,用于将文件加载到设备) | 支持。 (Data Box Disk 不支持大型文件共享) |
Data Box 和 Data Box Heavy 完全支持元数据。 Data Box Disk 不保留文件元数据。 |
![]() |
AzCopy 最新版本 |
支持,但不完全建议这样做。 | 不支持大规模差异复制,某些文件保真度可能会丢失。 了解如何将 AzCopy 与 Azure 文件共享配合使用 |
![]() |
Azure 存储资源管理器 最新版本 |
支持,但不建议这样做。 | 丢失大部分文件保真度,如 ACL。 支持时间戳。 |
![]() |
Azure 数据工厂 | 支持。 | 不复制元数据。 |
* 完全保真:达到或超过 Azure 文件共享功能。
迁移帮助程序工具
本部分介绍有助于计划和运行迁移的工具。
Azure 存储移动程序
Azure 存储移动程序是一种相对较新的、完全托管的迁移服务,用于将文件和文件夹迁移到 SMB Azure 文件共享,具有与基础 Azure 文件共享相同的文件保真度。 维护文件夹结构和元数据值,例如文件和文件夹时间戳、ACL 和文件属性。 若要了解如何将 Azure 存储移动程序与 Azure 文件存储一起使用,请参阅使用 Azure 存储移动程序迁移到 SMB Azure 文件共享。
RoboCopy
包含在 Windows 中,RoboCopy 对于 SMB 文件迁移非常有用。 RoboCopy 文档是此工具的许多选项的有用资源。
Azure 存储迁移计划
了解数据是选择合适的 Azure 存储服务和迁移策略的第一步。 Azure 存储迁移计划提供了不同的工具,可以分析数据和存储基础结构以提供有价值的见解。 这些工具可以帮助你了解数据的大小和类型、文件和文件夹计数以及访问模式。 它们提供数据的综合视图并支持创建各种自定义报表。
此信息有助于:
- 识别重复和冗余的数据集
- 识别可以转移到更便宜的存储的较冷数据
若要了解详细信息,请参阅 Azure 存储迁移计划参与者的比较矩阵。
JAM Software GmbH 的 TreeSize
Azure 文件同步主要随项(文件和文件夹)的数量而非总存储量而缩放。 通过 TreeSize 工具,可确定 Windows Server 卷上的项数。
可以使用该工具在 Azure 文件同步部署之前创建透视。 部署后启用云分层时,也可以使用它。 在这种场景下,可以看到项数以及哪些目录使用服务器缓存最多。
该工具的测试版本为 4.4.1。 它与云分层文件兼容。 该工具在正常运行期间不会导致分层文件的重调。