影子副本 - Amazon FSx for Windows File Server
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

影子副本

您可以使用 Amazon FSx 定义的一组自定义 PowerShell 命令来全方面管理 FSx for Windows File Server 文件系统上的影子副本。有关设置影子副本和恢复单个文件或文件夹的早期版本的信息,请参阅使用影子副本

注意

在多可用区文件系统的失效转移事件期间,FSx for Windows 会运行一致性检查,要求在新的活动文件服务器处于联机状态之前扫描文件系统上的影子副本存储。一致性检查的持续时间与文件系统上影子副本的数量以及消耗的存储空间有关。为防止失效转移和失效自动恢复事件延迟,我们建议在文件系统上保留的影子副本少于 64 个,并按照以下步骤定期监控和删除最早的影子副本。

设置影子副本存储

影子副本会消耗影子副本所在的同一文件系统上的存储空间。配置影子副本存储空间时,您可以使用 Set-FsxShadowStorage 自定义 PowerShell 命令来定义影子副本在文件系统上可以消耗的最大存储量。您可以使用 -Maxsize-Default 命令选项指定影子副本可增大到的最大大小。

使用 -Maxsize,您可以按如下方式定义影子副本存储:

  • 以字节为单位:Set-FsxShadowStorage -Maxsize 2500000000

  • 以千字节、兆字节、千兆字节或其他单位为单位:Set-FsxShadowStorage -Maxsize (2500MB)Set-FsxShadowStorage -Maxsize (2.5GB)

  • 占总存储空间的百分比:Set-FsxShadowStorage -Maxsize "20%"

  • 设置为无界:Set-FsxShadowStorage -Maxsize "UNBOUNDED"

使用 -Default 将影子存储设置为最多使用文件系统的 10%:Set-FsxShadowStorage -Default。要了解有关使用默认选项的更多信息,请参阅使用默认设置来设置影子副本

设置 FSx for Windows File Server 文件系统的影子副本存储量
  1. 以文件系统管理员组成员的用户的身份连接到与您的文件系统具有网络连接的计算实例。在 Amazon Managed Microsoft AD 中,该组是 Amazon 委派的 FSx 管理员。在自行管理的 Microsoft AD 中,该组是域管理员或是在您创建文件系统时指定的自定义管理组。有关更多信息,请参阅《适用于 Windows 实例的 Amazon EC2 用户指南》中的连接到 Windows 实例

  2. 在计算实例上打开 Windows PowerShell 窗口。

  3. 使用以下命令在 Amazon FSx 文件系统上打开远程 PowerShell 会话。将 FSxFileSystem-Remote-PowerShell-Endpoint 替换为您要管理的文件系统的 Windows 远程 PowerShell 端点。您可以在 Amazon FSx 控制台、文件系统详细信息屏幕中的网络和安全部分或 DescribeFileSystem API 操作的响应中找到 Windows 远程 PowerShell 端点。

    PS C:\Users\delegateadmin> enter-pssession -computername FSxFileSystem-Remote-PowerShell-Endpoint -configurationname fsxremoteadmin
  4. 使用以下命令验证文件系统上是否尚未配置影子副本存储。

    [fs-1234567890abcef12]: PS>Get-FsxShadowStorage No Fsx Shadow Storage Configured
  5. 使用 -Default 选项将影子存储量设置为卷的 10%。

    [fs-1234567890abcef12]: PS>Set-FsxShadowStorage -Default FSx Shadow Storage Configuration AllocatedSpace UsedSpace MaxSpace -------------- --------- -------- 0 0 32530536858

查看影子副本存储空间

在文件系统的远程 PowerShell 会话中,您可以使用 Get-FsxShadowStorage 命令查看文件系统上影子副本当前消耗的存储量。有关在文件系统上启动远程 PowerShell 会话的说明,请参阅开始使用 Amazon FSx CLI 进行远程管理 PowerShell

[fs-1234567890abcef12]: PS>Get-FsxShadowStorage FSx Shadow Storage Configuration AllocatedSpace UsedSpace MaxSpace -------------- --------- -------- 1619869696 14417920 32530536858

输出会显示影子存储配置,如下所示:

  • AllocatedSpace – 文件系统上当前分配给影子副本的存储量(以字节为单位)。该值初始为 0。

  • UsedSpace – 影子副本当前使用的存储量(以字节为单位)。该值初始为 0。

  • MaxSpace – 影子存储可增大到的最大存储量(以字节为单位)。这是您使用 Set-FsxShadowStorage 命令为影子副本存储设置的值。

UsedSpace 容量达到配置的最大影子副本存储量(MaxSpace)时,您创建的下一个影子副本将替换掉最早的影子副本。如果您不想丢掉最早的影子副本,请监控影子副本的存储空间,确保有足够的存储空间来存放新的影子副本。如果您需要更多空间,可以删除现有影子副本或增加影子副本存储的最大存储量。

注意

自动或手动创建影子副本时,它们会使用您配置的影子副本存储量作为存储限额。影子副本不使用 CloudWatch FreeStorageCapacity 指标显示的可用存储空间作为存储限额。

删除影子副本的存储空间、计划和所有影子副本

您可以删除影子副本配置(包括所有现有的影子副本)和影子副本计划。同时,您可以释放文件系统上的影子副本存储空间。

为此,请在文件系统的远程 PowerShell 会话中输入 Remove-FsxShadowStorage 命令。有关在文件系统上启动远程 PowerShell 会话的说明,请参阅开始使用 Amazon FSx CLI 进行远程管理 PowerShell

[fs-0123456789abcdef1]PS>Remove-FsxShadowStorage Confirm Are you sure you want to perform this action? Performing the operation "Remove-FsxShadowStorage" on target "Removing all Shadow Copies, Shadow Copy Schedule, and Shadow Storage". [Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (Default is "Y": Y FSx Shadow Storage Configuration Removing Shadow Copy Schedule Removing Shadow Copies All shadow copies removed. Removing Shadow Storage Shadow Storage removed successfully.

创建自定义影子副本计划

影子副本计划使用 Microsoft Windows 中的计划任务触发器来指定何时自动生成影子副本。影子副本计划可以有多个触发器,为您的计划提供了出色的灵活性。同一时间只能存在一个影子副本计划。在创建影子副本计划之前,必须先设置影子副本存储

在文件系统上运行 Set-FsxShadowCopySchedule 命令时,会覆盖所有现有的影子副本计划。如果您的客户端计算机处于 UTC 时区,则还可以使用 Windows 时区和 -TimezoneId 选项为触发器指定时区。如需查看 Windows 时区列表,请参阅 Microsoft 的默认时区文档或在 Windows 命令提示符下运行以下命令:tzutil /l。要了解有关 Windows 任务触发器的更多信息,请参阅 Microsoft Windows 开发人员中心文档中的任务触发器

您还可以使用 -Default 选项快速设置默认的影子副本计划。要了解更多信息,请参阅 使用默认设置来设置影子副本

创建自定义影子副本计划
  1. 创建一组 Windows 计划任务触发器,以定义影子副本计划中创建影子副本的时间。使用本地计算机上 PowerShell 中的 new-scheduledTaskTrigger 命令来设置多个触发器。

    以下示例创建了一个自定义影子副本计划,该计划在 UTC 每周一至周五上午 6:00 和下午 6:00 创建影子副本。除非您在创建的 Windows 计划任务触发器中指定时区,否则默认情况下时间均为 UTC。

    PS C:\Users\delegateadmin> $trigger1 = new-scheduledTaskTrigger -weekly -DaysOfWeek Monday,Tuesday,Wednesday,Thursday,Friday -at 06:00 PS C:\Users\delegateadmin> $trigger2 = new-scheduledTaskTrigger -weekly -DaysOfWeek Monday,Tuesday,Wednesday,Thursday,Friday -at 18:00
  2. 使用 invoke-command 运行 scriptblock 命令。该命令会编写一个脚本,使用您刚刚创建的 new-scheduledTaskTrigger 值来设置影子副本计划。将 FSxFileSystem-Remote-PowerShell-Endpoint 替换为您要管理的文件系统的 Windows 远程 PowerShell 端点。您可以在 Amazon FSx 控制台、文件系统详细信息屏幕中的网络和安全部分或 DescribeFileSystem API 操作的响应中找到 Windows 远程 PowerShell 端点。

    PS C:\Users\delegateadmin> invoke-command -ComputerName FSxFileSystem-Remote-PowerShell-Endpoint -ConfigurationName FSxRemoteAdmin -scriptblock {
  3. >> 提示符下输入以下行,使用 set-fsxshadowcopyschedule 命令设置影子副本计划。

    >> set-fsxshadowcopyschedule -scheduledtasktriggers $Using:trigger1,$Using:trigger2 -Confirm:$false }

    响应将显示您在文件系统上配置的影子副本计划。

    FSx Shadow Copy Schedule Start Time: : 2019-07-16T06:00:00+00:00 Days of Week : Monday,Tuesday,Wednesday,Thursday,Friday WeeksInterval : 1 PSComputerName : fs-0123456789abcdef1 RunspaceId : 12345678-90ab-cdef-1234-567890abcde1 Start Time: : 2019-07-16T18:00:00+00:00 Days of Week : Monday,Tuesday,Wednesday,Thursday,Friday WeeksInterval : 1 PSComputerName : fs-0123456789abcdef1 RunspaceId : 12345678-90ab-cdef-1234-567890abcdef

查看影子副本计划

要查看文件系统上的现有影子副本计划,请在文件系统的远程 PowerShell 会话中输入以下命令。有关在文件系统上启动远程 PowerShell 会话的说明,请参阅开始使用 Amazon FSx CLI 进行远程管理 PowerShell

[fs-0123456789abcdef1]PS> Get-FsxShadowCopySchedule FSx Shadow Copy Schedule Start Time Days of week WeeksInterval ---------- ------------ ------------- 2019-07-16T07:00:00+00:00 Monday,Tuesday,Wednesday,Thursday,Friday 1 2019-07-16T12:00:00+00:00 Monday,Tuesday,Wednesday,Thursday,Friday 1

删除影子副本计划

要删除文件系统上的现有影子副本计划,请在文件系统的远程 PowerShell 会话中输入以下命令。有关在文件系统上启动远程 PowerShell 会话的说明,请参阅开始使用 Amazon FSx CLI 进行远程管理 PowerShell

[fs-0123456789abcdef1]PS>Remove-FsxShadowCopySchedule Confirm Are you sure you want to perform this action? Performing the operation "Remove-FsxShadowCopySchedule" on target "Removing FSx Shadow Copy Schedule". [Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (Default is "Y"): Y [fs-0123456789abcdef1]PS>

创建影子副本

要手动创建影子副本,请在文件系统的远程 PowerShell 会话中输入以下命令。有关在文件系统上启动远程 PowerShell 会话的说明,请参阅开始使用 Amazon FSx CLI 进行远程管理 PowerShell

[fs-0123456789abcdef1]PS>New-FsxShadowCopy Shadow Copy {ABCDEF12-3456-7890-ABCD-EF1234567890} taken successfully

查看现有影子副本

要查看文件系统上的一组现有影子副本,请在文件系统的远程 PowerShell 会话中输入以下命令。有关在文件系统上启动远程 PowerShell 会话的说明,请参阅开始使用 Amazon FSx CLI 进行远程管理 PowerShell

[fs-0123456789abcdef1]PS>Get-FsxShadowCopies FSx Shadow Copies: 2 total Shadow Copy ID Creation Time -------------- ----------------- {ABCDEF12-3456-7890-ABCD-EF1234567890} 6/17/2019 7:11:09 AM {FEDCBA21-6543-0987-0987-EF3214567892} 6/19/2019 11:24:19 AM

删除影子副本

您可以在文件系统的远程 PowerShell 会话中使用 Remove-FsxShadowCopies 命令删除文件系统上的一个或多个现有影子副本。有关在文件系统上启动远程 PowerShell 会话的说明,请参阅开始使用 Amazon FSx CLI 进行远程管理 PowerShell

使用以下必选项之一指定要删除的影子副本:

  • -Oldest 删除最早的影子副本

  • -All 删除所有现有影子副本

  • -ShadowCopyId 按 ID 删除特定的影子副本。

您也可以仅使用一个含命令的选项 如果您未指定要删除的影子副本、指定多个影子副本 ID 或指定的影子副本 ID 无效,则会发生错误。

要删除文件系统上最早的影子副本,请在文件系统的远程 PowerShell 会话中输入以下命令。

[fs-0123456789abcdef1]PS>Remove-FsxShadowCopies -Oldest Confirm Are you sure you want to perform this action? Performing the operation "Remove-FSxShadowCopies" on target "Removing oldest shadow copy". [Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (Default is "Y": Y Shadow Copy {ABCDEF12-3456-7890-ABCD-EF1234567890} deleted

要删除文件系统上的特定影子副本,请在文件系统的远程 PowerShell 会话中输入以下命令。

[fs-0123456789abcdef1]PS>Remove-FsxShadowCopies -ShadowCopyId "{ABCDEF12-3456-7890-ABCD-EF1234567890}" Are you sure you want to perform this action? Performing the operation "Remove-FSxShadowCopies" on target "Removing shadow copy {ABCDEF12-3456-7890-ABCD-EF1234567890}". [Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (Default is "Y":>Y Shadow Copy \\AMZNFSXABCDE123\root\cimv2:Wind32_ShadowCopy.ID{ABCDEF12-3456-7890-ABCD-EF1234567890}".ID deleted.