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

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

其他信息

本节提供了对受支持但已弃用的 Amazon FSx 功能的参考。

设置自定义备份计划

我们建议使用 Amazon Backup 为您的文件系统设置自定义备份计划。如果需要比使用 Amazon Backup 时更频繁地安排备份,则此处提供的信息仅供参考。

启用后,Amazon FSx for Windows File Server 将在每日备份时段内每天自动进行一次文件系统备份。Amazon FSx 会根据您为这些自动备份设定的保留期实施保留。它还支持用户启动备份,因此您可以随时进行备份。

接下来,您会发现部署自定义备份计划的资源和配置。自定义备份计划按照您定义的自定义计划在 Amazon FSx 文件系统上执行用户启动备份。例如,可能每六小时一次、每周一次,等等。该脚本还可配置删除超过指定保留期的备份。

该解决方案会自动部署所需的所有组件,并接受以下参数:

  • 文件系统

  • 执行备份的 CRON 计划模式

  • 备份保留期(以天为单位)

  • 备份名称标签

有关 CRON 计划模式的更多信息,请参阅 Amazon CloudWatch 用户指南中的规则计划表达式

架构概述

部署此解决方案将在 Amazon Web Services 云 中生成以下资源。


    显示Amazon Backup解决方案架构的流程图。

该解决方案会执行以下操作:

  1. 该Amazon CloudFormation模板部署了一个 CloudWatch 事件、一个 Lambda 函数、一个 Amazon SNS 队列和一个 IAM 角色。IAM 角色授予 Lambda 函数调用 Amazon FSx API 操作的权限。

  2. 在初始部署期间,该 CloudWatch 事件按您定义为 CRON 模式的时间表运行。此事件调用解决方案的备份管理器 Lambda 函数,该函数调用 Amazon FSx CreateBackup API 操作来启动备份。

  3. 备份管理器使用 DescribeBackups 检索指定文件系统的现有用户启动备份列表。然后,它会删除超过保留期的备份,保留期是您于初始部署期间指定的。

  4. 如果您选择在初始部署期间收到通知的选项,则备份管理器会在成功备份后向 Amazon SNS 队列发送一条通知消息。如果出现故障,系统会发送通知。

Amazon CloudFormation 模板

此解决方案使用 Amazon CloudFormation 自动部署 Amazon FSx 自定义备份计划解决方案。要使用此解决方案,请下载 fsx-scheduled-backup.template Amazon CloudFormation 模板。

自动部署

以下是配置和部署此自定义备份计划解决方案的过程步骤。部署大约需要五分钟。在开始之前,您的 Amazon 账户中必须有一个运行于 Amazon Virtual Private Cloud(Amazon VPC)之中的 Amazon FSx 文件系统。有关创建这些资源的更多信息,请参阅Amazon FSx 入门

注意

实施此解决方案会产生有关 Amazon 服务的账单。有关更多信息,请参阅有关这些服务的定价详细信息页面。

启动自定义备份解决方案堆栈
  1. 下载 fsx-scheduled-backup.template Amazon CloudFormation 模板。有关创建 Amazon CloudFormation 堆栈的更多信息,请参阅《Amazon CloudFormation 用户指南》中的在 Amazon CloudFormation 控制台上创建堆栈

    注意

    默认情况下,该模板在美国东部(弗吉尼亚州北部)Amazon 区域发布。Amazon FSx 目前仅在特定的 Amazon Web Services 区域 可用。您必须在可以使用 Amazon FSx 的 Amazon 区域启动此解决方案。有关更多信息,请参阅《Amazon Web Services 一般参考》中的 Amazon Web Services 区域 和端点 的 Amazon FSx 部分。

  2. 对于参数,请查看模板的参数并根据文件系统的需求对其进行修改。该解决方案使用以下默认值。

    参数 默认值 描述
    Amazon FSx 文件系统 ID 无默认值 您想要备份的文件系统的文件系统 ID。
    CRON 备份计划模式。 0 0/4 * *?* 运行 CloudWatch 事件的时间表,触发新的备份并删除保留期之外的旧备份。
    备份保留期(天) 30 保留用户启动备份的天数。Lambda 函数会删除超过此天数的用户启动备份。
    备份名称 用户计划备份 这些备份的名称显示在 Amazon FSx 管理控制台的备份名称栏中。
    备份通知 选择是否在成功启动备份时收到通知。如果出现错误,系统会发送通知。
    电子邮件地址 无默认值 用于订阅 SNS 通知的电子邮件地址。
  3. 选择下一步

  4. 选项中,选择下一步

  5. 审核中,审核并确认设置。必须选择复选框,以确认模板将创建 IAM 资源。

  6. 选择创建以部署堆栈。

您可以在 Amazon CloudFormation 控制台的状态列中查看堆栈的状态。您应该在大约五(5)分钟内看到 CREATE_COMPLETE 状态。

其他选项

您可以使用此解决方案创建的 Lambda 函数对多个 Amazon FSx 文件系统执行自定义计划备份。文件系统 ID 将在事件的输入 JSON 中传递给 Amazon FSx 函数。 CloudWatch 传递给 Lambda 函数的默认 JSON 如下所示,其中 FileSystemIdSuccessNotification 的值来自启动 Amazon CloudFormation 堆栈时指定的参数。

{ "start-backup": "true", "purge-backups": "true", "filesystem-id": "${FileSystemId}", "notify_on_success": "${SuccessNotification}" }

要为其他 Amazon FSx 文件系统安排备份,请创建另一条 CloudWatch 事件规则。您可以使用 Schedule 事件源执行此操作,并将此解决方案创建的 Lambda 函数作为目标。在配置输入下,选择常量(JSON 文本)。对于 JSON 输入,只需将要备份的 Amazon FSx 文件系统的文件系统 ID 替换为 ${FileSystemId}。另外,将上述 JSON 中的 ${SuccessNotification} 替换为 YesNo

您手动创建的任何其他 CloudWatch 事件规则都不是 Amazon FSx 自定义计划备份解决方案Amazon CloudFormation堆栈的一部分。因此,如果您删除堆栈,将不会删除这些规则。

使用 Microsoft 分布式文件系统复制

注意

我们建议使用 Amazon FSx 多可用区来实现 FSx for Windows File Server 的高可用性。有关 Amazon FSx 多可用区的更多信息,请参阅可用性与持久性:单可用区和多可用区文件系统

Amazon FSx 支持使用 Microsoft 分布式文件系统(DFS)进行跨多个可用区(AZ)的文件系统部署,以获得多可用区的可用性和持久性。使用 DFS 复制,可以在两个文件系统之间自动复制数据。使用 DFS 命名空间,您可以将一个文件系统配置为主文件系统,将另一个文件系统配置为备用文件系统,如果主文件系统无响应,则可以自动失效转移到备用文件系统。

在使用 DFS 复制之前,请执行以下步骤:

  • 按照 Amazon FSx 入门的 Step 8 中所述设置安全组。

  • 在一个 Amazon 区域内的不同可用区中创建两个 Amazon FSx 文件系统。有关创建文件系统的更多信息,请参阅第 3 步:将数据写入文件共享

  • 确保两个文件系统位于同一个 Amazon Directory Service for Microsoft Active Directory 中。

  • 创建文件系统后,请记下文件系统的 ID,以供日后使用。

在以下主题中,您将了解如何通过 Amazon FSx 来设置与使用跨可用区的 DFS 命名空间和 DFS 失效转移。

设置 DFS 复制

您可以使用 DFS 复制在两个 Amazon FSx 文件系统之间自动复制数据。这种复制是双向的,这意味着您可以写入任一文件系统,更改就会随即复制到另一个文件系统。

重要

您无法使用 Microsoft Windows 管理工具(dfsmgmt.msc)中的 DFS 管理 UI 来配置 FSx for Windows File Server 文件系统上的 DFS 复制。

  1. 启动您的实例并将其连接到您加入 Amazon FSx 文件系统的 Microsoft Active Directory,开始 DFS 管理流程。为此,请从《Amazon Directory Service 管理指南》中选择以下过程:

  2. 以文件系统管理员组成员的 Active Directory 用户身份连接到实例。在 Amazon 托管 AD 中,此组称为 Amazon 委派的 FSx 管理员。在您自行管理的 Microsoft AD 中,这个群组被称为“域管理员”,或者使用您在创建时提供的管理员组的自定义名称。

    此用户还必须是被委派了 DFS 管理权限的组的成员。在 Amazon 托管 AD 中,此组称为 Amazon 委派的分布式文件系统管理员。在您的自行管理的 AD 中,此用户必须是域管理员或您已向其委派 DFS 管理权限的其他组的成员。

    有关更多信息,请参阅《适用于 Windows 实例的 Amazon EC2 用户指南》中的连接到 Windows 实例

  3. 下载 fsx-dfsr-setu PowerShell p.ps1 脚本。

  4. 打开 “开始” 菜单并输入PowerShell。从列表中选择 Windows PowerShell

  5. 使用以下指定参数运行 PowerShell 脚本,在两个文件系统之间建立 DFS 复制:

    • DFS 复制组和文件夹的名称

    • 您要在文件系统上复制的文件夹的本地路径(例如 Amazon FSx 文件系统附带的默认共享的 D:\share

    • 您在先决步骤中创建的主要和备用 Amazon FSx 文件系统的 DNS 名称

    FSx-DFSr-Setup.ps1 -group Group -folder Folder -path ContentPath -primary FSxFileSystem1-DNS-Name -standby FSxFileSystem2-DNS-Name
  1. 启动您的实例并将其连接到您加入 Amazon FSx 文件系统的 Microsoft Active Directory,开始 DFS 管理流程。为此,请从《Amazon Directory Service 管理指南》中选择以下过程:

  2. 以文件系统管理员组成员的 Active Directory 用户身份连接到实例。在 Amazon 托管 AD 中,此组称为 Amazon 委派的 FSx 管理员。在您自行管理的 Microsoft AD 中,这个群组被称为“域管理员”,或者使用您在创建时提供的管理员组的自定义名称。

    此用户还必须是被委派了 DFS 管理权限的组的成员。在 Amazon 托管 AD 中,此组称为 Amazon 委派的分布式文件系统管理员。在您的自行管理的 AD 中,此用户必须是域管理员或您已向其委派 DFS 管理权限的其他组的成员。

    有关更多信息,请参阅《适用于 Windows 实例的 Amazon EC2 用户指南》中的连接到 Windows 实例

  3. 打开 “开始” 菜单并输入PowerShell。从列表中选择 Windows PowerShell

  4. 如果您的实例上尚未安装 DFS 管理工具,请使用以下命令进行安装。

    Install-WindowsFeature RSAT-DFS-Mgmt-Con
  5. 在 PowerShell 提示符下,使用以下命令创建 DFS 复制组和文件夹。

    $Group = "Name of the DFS Replication group" $Folder = "Name of the DFS Replication folder" New-DfsReplicationGroup –GroupName $Group New-DfsReplicatedFolder –GroupName $Group –FolderName $Folder
  6. 使用以下命令确定与各个文件系统关联的 Active Directory 计算机名称。

    $Primary = "DNS name of the primary FSx file system" $Standby = "DNS name of the standby FSx file system" $C1 = (Get-ADObject -Filter "objectClass -eq 'Computer' -and ServicePrincipalName -eq 'HOST/$Primary'").Name $C2 = (Get-ADObject -Filter "objectClass -eq 'Computer' -and ServicePrincipalName -eq 'HOST/$Standby'").Name
  7. 将您的文件系统添加为使用以下命令创建的 DFS 复制组的成员。

    Add-DfsrMember –GroupName $Group –ComputerName $C1 Add-DfsrMember –GroupName $Group –ComputerName $C2
  8. 使用以下命令将每个文件系统的本地路径(例如 D:\share)添加到 DFS 复制组。在此过程中,由 file system 1 作为主要成员,这意味着其内容会被最先同步到另一个文件系统。

    $ContentPath1 = "Local path to the folder you want to replicate on file system 1" $ContentPath2 = "Local path to the folder you want to replicate on file system 2" Set-DfsrMembership –GroupName $Group –FolderName $Folder –ContentPath $ContentPath1 –ComputerName $C1 –PrimaryMember $True Set-DfsrMembership –GroupName $Group –FolderName $Folder –ContentPath $ContentPath2 –ComputerName $C2 –PrimaryMember $False
  9. 使用以下命令在文件系统之间添加连接。

    Add-DfsrConnection –GroupName $Group –SourceComputerName $C1 –DestinationComputerName $C2

几分钟之内,两个文件系统都应开始同步之前 ContentPath 指定的内容。

为失效转移设置 DFS 命名空间

您可以使用 DFS 命名空间将一个文件系统设置为主文件系统,将另一个文件系统设置为为备用文件系统。由此,您可以配置在主服务器无响应时自动失效转移到备用服务器。使用 DFS 命名空间,您可以将不同服务器上的共享文件夹分组到一个命名空间,此命名空间中的单个文件夹路径可以将文件存储在多个服务器上。DFS 命名空间由 DFS 命名空间服务器管理,这些服务器会将映射 DFS 命名空间文件夹的计算实例定向到相应的文件服务器。

  1. 如果您尚未运行 DFS 命名空间服务器,请使用 setup-DFSN-servers.template Amazon CloudFormation 模板来启动一对高度可用的 DFS 命名空间服务器。有关创建 Amazon CloudFormation 堆栈的更多信息,请参阅《Amazon CloudFormation 用户指南》中的在 Amazon CloudFormation 控制台上创建堆栈

  2. 以“Amazon 委派的管理员”组中用户的身份连接到在上一步中启动的 DFS 命名空间服务器之一。有关更多信息,请参阅《适用于 Windows 实例的 Amazon EC2 用户指南》中的连接到 Windows 实例

  3. 打开 DFS Management 控制台。打开开始菜单,运行 dfsmgmt.msc。此操作将打开 DFS Management GUI 工具。

  4. 操作中,选择新命名空间,然后输入您为服务器启动的第一个 DFS 命名空间服务器的计算机名称,然后选择下一步

  5. 名称中输入您要创建的命名空间(例如 corp)。

  6. 选择编辑设置,然后根据您的需求设置相应权限。选择下一步

  7. 保持选中默认的基于域的命名空间选项,保持选中启用 Windows Server 2008 模式选项,然后选择下一步

    注意

    “Windows Server 2008 模式”是命名空间的最新可用选项。

  8. 检查命名空间的设置,然后选择创建

  9. 在导航栏的命名空间下选择新创建的命名空间后,选择操作,然后选择添加命名空间服务器

  10. Namespace server 中输入您已启动的第二个 DFS 命名空间服务器的计算机名称。

  11. 选择编辑设置,然后根据您的需求设置相应权限,然后选择确定

  12. 选择添加,在路径中输入主 Amazon FSx 文件系统上的文件共享的 UNC 名称(例如 \\fs-0123456789abcdef0.example.com\share)作为文件夹目标,然后选择确定

  13. 选择添加,在路径中输入备用 Amazon FSx 文件系统上的文件共享的 UNC 名称(例如 \fs-fedbca9876543210f.example.com\share)作为文件夹目标,然后选择确定

  14. 新文件夹窗口中,选择确定。新文件夹是使用命名空间的两个文件夹目标创建的。

  15. 对要添加到命名空间中的每个文件共享重复操作最后三个步骤。

  1. 如果您尚未运行 DFS 命名空间服务器,请使用 setup-DFSN-servers.template Amazon CloudFormation 模板来启动一对高度可用的 DFS 命名空间服务器。有关创建 Amazon CloudFormation 堆栈的更多信息,请参阅《Amazon CloudFormation 用户指南》中的在 Amazon CloudFormation 控制台上创建堆栈

  2. Amazon 委派的管理员组中用户的身份连接到在上一步中启动的 DFS 命名空间服务器之一。有关更多信息,请参阅《适用于 Windows 实例的 Amazon EC2 用户指南》中的连接到 Windows 实例

  3. 打开 “开始” 菜单并输入PowerShellWindows PowerShell 出现在匹配项列表中。

  4. 打开 Windows 的上下文(右键单击)菜单, PowerShell然后选择 “以管理员身份运行”。

  5. 如果您的实例上尚未安装 DFS 管理工具,请使用以下命令进行安装。

    Install-WindowsFeature RSAT-DFS-Mgmt-Con
  6. 如果您还没有现有 DFS 命名空间,则可以使用以下 PowerShell 命令创建一个命名空间。

    $NSS1 = computer name of the 1st DFS Namespace server $NSS2 = computer name of the 2nd DFS Namespace server $DNSRoot = fully qualified Active Directory domain name (e.g. mydomain.com) $Namespace = Namespace name you want to use $Folder = Folder path you want to use within the Namespace $FS1FolderTarget = Share path to Folder Target on File System 1 $FS2FolderTarget = Share path to Folder Target on File System 2 $NSS1,$NSS2 | ForEach-Object { Invoke-Command –ComputerName $_ –ScriptBlock { mkdir “C:\DFS\${using:Namespace}”; New-SmbShare –Name ${using:Namespace} –Path “C:\DFS\${using:Namespace}” } } New-DfsnRoot -Path "\\${DNSRoot}\${Namespace}" -TargetPath "\\${NSS1}.${DNSRoot}\${Namespace}" -Type DomainV2 New-DfsnRootTarget -Path "\\${DNSRoot}\${Namespace}" -TargetPath "\\${NSS2}.${DNSRoot}\${Namespace}"
  7. 要在 DFS 命名空间中创建文件夹,可以使用以下 PowerShell命令。此操作将创建一个文件夹,该文件夹会默认将访问此文件夹的计算实例定向到您的主 Amazon FSx 文件系统。

    $FS1 = DNS name of primary FSx file system New-DfsnFolder –Path “\\${DNSRoot}\${Namespace}\${Folder}" -TargetPath “\\${FS1}\${FS1FolderTarget}” –EnableTargetFailback $True –ReferralPriorityClass GlobalHigh
  8. 将您的备用 Amazon FSx 文件系统添加到同一 DFS 命名空间文件夹。如果访问该文件夹的计算实例无法连接到主 Amazon FSx 文件系统,则它们会回退到该文件系统。

    $FS2 = DNS name of secondary FSx file system New-DfsnFolderTarget –Path “\\${DNSRoot}\${Namespace}\${Folder}" -TargetPath “\\${FS2}\${FS2FolderTarget}”

现在,您可以使用先前指定的 DFS 命名空间文件夹的远程路径从计算实例访问数据。此操作会将计算实例定向到主 Amazon FSx 文件系统(如果主文件系统没有响应,则定向到备用文件系统)。

例如,打开开始菜单,输入 PowerShell。从列表中选择 Windows PowerShell 并运行以下命令。

net use Z: \\${DNSRoot}\${Namespace}\${Folder} /persistent:yes

使用维护时段和 FSx 多可用区

为了帮助确保多可用区文件系统部署的高可用性,我们建议多可用区部署中的两个 Amazon FSx 文件系统选择不重叠的维护时段。这样做有助于确保在系统维护时段内,应用程序和用户能够继续使用您的文件数据。

注意

要允许进出文件系统的 DFS 复制流量,请确保如 Amazon VPC 安全组 中所述添加 VPC 安全组入站和出站规则。