如何使用 DataSync 通过私有网络在不同地区的 Amazon EFS 文件系统之间传输数据?
上次更新时间:2020 年 8 月 28 日
我想使用 AWS DataSync 在不同 AWS 区域的 Amazon Elastic File System (Amazon EFS) 文件系统之间传输数据。我想通过私有网络传输数据。该如何操作?
简短描述
按照以下步骤通过 Amazon Virtual Private Cloud (Amazon VPC) 对等连接在 Amazon EFS 文件系统之间启用 DataSync 跨区域传输:
- 创建跨区域 VPC 对等连接。
- 在源和目标 Amazon EFS 文件系统中配置安全组规则。
- 在目标 Amazon EFS 文件系统的区域中为 DataSync 创建 VPC 终端节点。
- 在源区域中创建 DataSync 代理,然后在目标区域中激活代理。
- 创建源和目标 Amazon EFS 文件系统的位置。
- 创建 DataSync 任务,然后运行该任务。
解决方法
以下配置步骤基于此示例环境:
- 源 AWS 区域为美国东部(弗吉尼亚北部)(us-east-1)。
- 源 VPC CIDR 为 10.10.0.0/16(一个公有子网)。
- DataSync 代理虚拟机 (VM) 的 IP 地址为 10.10.3.124。DataSync 虚拟机部署在源区域中。
- 目标区域为美国东部(俄亥俄)(us-east-2)。
- 目标 VPC CIDR 为 10.20.0.0/16。
重要提示:您必须根据环境的源和目标 VPC CIDR 配置安全组规则。
创建跨区域 VPC 对等连接
在源和目标 Amazon EFS 文件系统的 VPC 之间创建 VPC 对等连接。
在继续下一步之前,请使用 Amazon VPC 控制台验证以下内容:
- 查看对等连接。确认状态为活动。
- 查看源 VPC。查看 VPC 的路由表以确认是否存在通往以 pcx 开头的目标的活动路由。此路由用于对等连接。
- 查看目标 VPC。查看 VPC 的路由表以确认是否存在通往以 pcx 开头的目标的活动路由。
为源和目标 Amazon EFS 文件系统配置安全组规则
重要提示:以下示例安全组规则基于示例 VPC CIDR。您必须根据环境的 VPC CIDR 配置安全组规则。
修改源和目标 Amazon EFS 文件系统的安全组规则,以满足 DataSync 代理的网络要求。
对于源 Amazon EFS 文件系统的安全组,配置允许 DataSync 代理 VM 在本地挂载的入站规则,类似于以下内容:
类型 | 协议 | 端口范围 | 源 | 描述 |
---|---|---|---|---|
NFS | TCP | 2049 | 10.10.3.124/32 | NFS |
对于源 Amazon EFS 文件系统所在的 VPC 默认安全组,配置类似于以下内容的入站规则:
类型 | 协议 | 端口范围 | 源 | 描述 |
---|---|---|---|---|
所有流量 | 全部 | 全部 | (安全组的 ID) |
当您在 VPC 中使用 DataSync 代理创建任务时,这些任务将是私有的,每个任务都会在 DataSync VPC 终端节点所在的同一子网中创建四个弹性网络接口。这些网络接口用于传输数据。这对于目标 Amazon EFS 文件系统的安全组来说非常重要,因为 DataSync 代理必须能够路由到所有网络接口。有关更多信息,请参阅在 Virtual Private Cloud 中使用 AWS DataSync。
对于目标 Amazon EFS 文件系统的安全组,配置允许来自 DataSync 代理 VM 的流量的入站规则,类似于以下内容:
类型 | 协议 | 端口范围 | 源 | 描述 |
---|---|---|---|---|
所有流量 | 全部 | 全部 | (安全组本身的 ID) | |
HTTPS | TCP | 443 | 10.10.3.124/32 | HTTPS |
NFS | TCP | 2049 | 10.10.3.124/32 | NFS |
当您在目标 VPC 中激活 DataSync 代理时,DataSync 会在目标 VPC 子网中创建弹性网络接口 (ENI)。对于目标 Amazon EFS 文件系统的安全组,配置出站规则,允许目标 VPC 内的 ENI 相互通信,类似于以下内容:
类型 | 协议 | 端口范围 | 目标 | 描述 |
---|---|---|---|---|
NFS | TCP | 2049 | 10.20.0.0/16 |
在目标 Amazon EFS 文件系统的区域中为 DataSync 创建 VPC 终端节点
- 在目标 Amazon EFS 文件系统的区域中打开 Amazon VPC 控制台。然后,为 DataSync 创建接口终端节点。
- 配置 VPC 终端节点的安全组入站规则,以满足 DataSync VPC 终端节点的网络要求,具体与以下示例类似:
重要提示:这些示例安全组规则基于示例 VPC CIDR。您必须根据环境的 VPC CIDR 配置安全组规则。
类型 | 协议 | 端口范围 | 源 | 描述 |
---|---|---|---|---|
自定义 TCP 规则 | TCP | 1024 – 1064 | 10.10.0.0/16 | DataSyncEndpoint |
HTTPS | TCP | 443 | 10.10.0.0/16 | DataSyncEndpoint |
在源区域中创建 DataSync 代理,然后在目标区域中激活代理
注意:以下步骤适用于使用 DataSync 控制台创建代理。您还可以使用 AWS 命令行界面 (AWS CLI) 创建 DataSync 代理。
- 在源 Amazon EFS 文件系统的区域中打开 DataSync 控制台。
- 从导航窗格中,选择代理。
- 选择创建代理。
- 对于服务终端节点,选择使用 AWS PrivateLink 的 VPC 终端节点。
- 对于 VPC 终端节点,选择您在目标区域中创建的 VPC 终端节点。
- 对于子网,选择 VPC 终端节点所在的子网。
- 对于安全组,选择 VPC 终端节点的安全组。
- 选择获取密钥。
- 激活与目标 Amazon EFS 文件系统位于同一地区的代理。您可以使用 DataSync 代理的公有 IP 地址或私有 IP 地址来激活 DataSync 代理。如果您只有其私有 IP 地址,则必须从与代理位于同一子网中的计算机激活代理。
创建源和目标 Amazon EFS 文件系统的位置
创建源位置:
- 打开 DataSync 控制台。
- 在导航窗格中选择位置。
- 选择创建位置。
- 对于位置类型,选择网络文件系统 (NFS)。
- 对于代理,选择要部署的 DataSync 代理。
- 对于 NFS 服务器,输入源 Amazon EFS 文件系统的子网 IP 地址。
- 选择创建位置。
创建目标位置:
- 打开 DataSync 控制台。
- 在导航窗格中选择位置。
- 选择创建位置。
- 对于位置类型,选择 Amazon EFS 文件系统。
- 对于 EFS 文件系统,请选择目标 Amazon EFS 文件系统。
- 对于挂载路径,输入目标 Amazon EFS 文件系统的挂载路径。
- 对于子网,选择目标 Amazon EFS 文件系统所在的子网。
- 对于安全组,选择目标 Amazon EFS 文件系统的安全组。
- 选择创建位置。
创建 DataSync 任务,然后运行该任务
配置任务设置。任务状态显示为可用后,您可以运行该任务。然后,该任务将通过多个步骤运行。有关任务每个阶段的详细信息,请参阅了解任务执行状态。