【AWS实验】 使用 AWS DataSync 和 Storage Gateway 迁移本地 NFS 共享

本实验演示了如何使用 AWS DataSync 和 AWS Storage Gateway 文件网关,将数据从本地网络文件系统 (NFS) 服务器迁移到 Amazon Simple Storage Service (Amazon S3)。

实验概览

AnyCompany 过多使用网络文件系统 (NFS) 文件共享来开展日常业务。首席信息官 (CIO) 担心本地 NFS 文件服务器上的数据未得到充分的备份或保护,无法免受主数据中心灾难的影响。预算很紧张。她宁愿投入资金来提升业务,而不是购买昂贵的备份或复制解决方案,因为这些解决方案也需要员工花费大量时间部署和维护。她要求您提供一个满足以下要求的解决方案:

  • 保护本地 NFS 文件共享上的数据,使其免受公司数据中心灾难的影响
  • 经济划算
  • 易于部署和维护
  • 可以快速迁移现有数据
  • 只需与支持团队进行最少量的交互,即可在场外复制未来的数据

经过大量研究之后,您决定使用AWS DataSync和 AWS Storage Gateway 文件网关进行概念验证。

DataSync 满足其中的许多要求。该服务:

  • 将现有数据从本地 NFS 文件服务器复制到 Amazon Simple Storage Service (Amazon S3) 以实现安全的冗余存储
  • 随附内置的调度机制,您可利用该机制定期执行数据传输任务,以检测更改并将其从源存储系统复制到目标存储系统。
  • 确保数据在传输过程中完好无损。对于每次传输,该服务都会在传输中和静态时执行完整性检查。这些检查可确保写入
  • 标的数据与从源中读取的数据匹配,从而验证一致性。
  • 按移动的每 GB 数据定价,使其具有成本效益和可预测性
  • 几分钟即可完成部署

Storage Gateway 文件网关支持数据持续传输到 Amazon S3 中或从中传出。文件网关充当了 S3 存储桶上的文件系统挂载。文件网关 NFS 文件共享将替换现有的本地 NFS 文件服务器,这使得您能够停用该服务器。这样做将释放本地资源并减少维护时间。

目标

完成本实验后,将能够:

  • 将 DataSync 代理作为 Amazon Elastic Compute Cloud (Amazon EC2) 实例部署并激活
  • 创建一个 DataSync 任务以将数据从基于 Linux 的 NFS 服务器复制到 S3 存储桶
  • 将 Storage Gateway 文件网关设备作为 EC2 实例部署并激活
  • 在文件网关上创建 NFS 文件共享
  • 配置 Linux 主机,将其连接到文件网关上的 NFS 共享

实验环境

本实验从不同子网中的两个 Linux 实例开始:一个实例充当本地客户端主机,另一个实例充当本地 Linux NFS 文件服务器。现需要将 DataSync 代理实例部署到与本地 NFS 文件服务器相同的子网中。然后,将该实例配置为将示例数据复制到 S3 存储桶。最后,需要执行以下操作:

  • 将文件网关设备部署到与本地 NFS 文件服务器相同的子网中
  • 在文件网关设备上创建 NFS 文件共享
  • 重新配置 Linux 客户端主机以连接到新的共享

下图显示了为本实验预置的资源以及实验结束时这些资源的连接方式:

image-20230905135708941


任务 1:连接到本地 NFS 服务器

需要创建一个测试环境来执行概念验证,所以部署了一个 Linux NFS 文件服务器和一个 Linux 客户端主机。

在此任务中,您将使用 Linux 客户端挂载 Linux NFS 服务器实例托管的 NFS 文件共享来完成对环境的配置。然后,您需要将数据从客户端实例复制到 NFS 文件共享,并确认复制成功。

下图显示了此任务的架构:

image-20230906083556262

任务 1.1:挂载本地 NFS 共享

image-20230906083655498

通过会话管理器连接到Client Linux instance实例。

image-20230906084004314

image-20230906084025779

命令:要将本地 NFS 共享挂载到客户端实例,请运行以下命令。将 替换为NfsServerPrivateIp** 值:

sudo mount <NfsServerPrivateIp>:/var/nfs /mnt/nfs

sudo mount 10.10.2.180:/var/nfs /mnt/nfs

命令:要验证是否已成功挂载 NFS 文件共享,请运行以下命令:

df -h

image-20230906084243320

注意df 命令显示当前挂载的所有文件系统以及每个系统上的可用磁盘空间。-h 标签以更易读的格式显示大小值,例如 “1K” 而不是 “1000”。

预期输出

[root@ip-10-10-1-188 ~]# df -Th
Filesystem           Type      Size  Used Avail Use% Mounted on
devtmpfs             devtmpfs  465M     0  465M   0% /dev
tmpfs                tmpfs     473M     0  473M   0% /dev/shm
tmpfs                tmpfs     473M  416K  472M   1% /run
tmpfs                tmpfs     473M     0  473M   0% /sys/fs/cgroup
/dev/nvme0n1p1       xfs        10G  1.7G  8.4G  17% /
tmpfs                tmpfs      95M     0   95M   0% /run/user/0
10.10.2.180:/var/nfs nfs4       10G  1.7G  8.4G  17% /mnt/nfs

客户端实例具有两个目录(/data/DataSync/data/FileGateway),其中包含本实验的示例数据。每个目录包含 10 个 .png 文件。

ll /data/DataSync

ll /data/FileGateway

image-20230906084544107

命令:要将示例数据从 /data/DataSync 目录复制到 NFS 文件共享,请运行以下命令:

sudo cp /data/DataSync/*.* /mnt/nfs

image-20230906084726785

保持与此会话的连接。将在稍后的任务中用到它。

打开NFS 服务器实例终端。

image-20230906084819962

image-20230906084928398

命令:在终端中,运行以下命令来验证是否已成功复制客户端实例中的数据:

ls /var/nfs

预期输出:输出应该会返回您从客户端实例复制的 10 个 .png 文件。

保持与此会话的连接。将在稍后的任务中用到它。

现已成功使用 Linux 客户端挂载 Linux NFS 服务器实例托管的 NFS 文件共享。


任务 2:部署并激活 DataSync 代理实例

概念验证环境的基础现已完成,现可以部署 DataSync 代理了。

在此任务中,需要将 DataSync 代理部署为 EC2 实例,然后将其激活,如下图所示:

image-20230906085057989

在物理环境中,DataSync 也可部署为基于 VMware 的虚拟机。


在 EC2 控制面板的 Resources(资源)部分中,选择 Instances(实例)。

选择 ****Launch instances****(启动实例)。

找到 Name and tags(名称和标签)部分,为 Name(名称)字段输入DataSync agent

找到 Application and OS Images (Amazon Machine Image)(应用程序和操作系统映像 (亚马逊云机器镜像))部分。

选择 Browse more AMIs(浏览其他 AMI)按钮。这将打开选择一个 Amazon Machine Image (AMI) 向导。

在导航窗格中,选择 Community AMIs(社区 AMI)。

要搜索最新的 DataSync 代理 AMI,请在搜索栏中输入 aws-datasync,然后按 Enter 键。

在最高版本号所在行的右侧,选择 选择

image-20230906085839976

控制台将返回启动实例屏幕。

找到 Instance type(实例类型)部分。

Instance type(实例类型)下拉菜单中选择 t2.xlarge

注意:t2.xlarge 实例类型是本实验中唯一可以成功部署的实例类型。如果选择任何其他类型,系统会在向导结束时显示失败消息。

附加信息:在本实验中,t2.xlarge 实例类型仅用作示例。在部署 DataSync 代理时,请参阅文档,了解正确的主机大小。

找到 Key pair (login)(密钥对(登录))部分。

Key pair name - required(密钥对名称 – 必需)下拉菜单中选择 Proceed without a key pair (Not recommended) (在没有密钥对的情况下继续(不推荐))。

找到 Network settings(网络设置)部分。

选择 Edit(编辑)按钮。

从下拉菜单中配置以下设置:

  • 对于 VPC,选择 Lab VPC(实验 VPC)
  • 对于 Subnet(子网),选择 Server Subnet(服务器子网)
  • 对于 Auto-assign public IP(自动分配公有 IP),选择 Enable(启用)

选择 Select existing security group(选择现有的安全组)按钮。

Common security groups(常见安全组)下拉菜单中选择名称类似 xxxx-DataSyncAccess-xxxx 的安全组。

DataSyncAccess 安全组将配置为允许以下流量:

  • 入站:用于代理激活的端口 80 (HTTP)
  • 出站:用于与 DataSync 服务进行通信的端口 443
  • 出站:NFS v4.1 与服务器子网通信的端口 2049

Configure storage(配置存储)部分中,无需进行任何更改。

注意:DataSync 代理实例不需要 80GiB 根卷以外的额外存储空间。

找到 Summary(摘要)部分。

选择 Launch instance(启动实例)按钮。

此时将显示启动实例页面。

选择 View all instances(查看所有实例)按钮。

image-20230906090611408

此时将显示 Amazon EC2 控制台

部署 DataSync 代理实例需要几分钟的时间。监控部署状态,等待状态检查列显示 2/2 checks passed(2/2 已通过检查)。

image-20230906090702026

从列表中选择 DataSync agent(DataSync 代理)实例。在下部窗格中的 Details(详细信息)选项卡上,找到 Public IPv4 address(公有 IPv4 地址)和 Private IPv4 address(私有 IPv4 地址)值。将这两个值复制到文本编辑器中,方便在后续步骤中使用。(本实验:Public IPv4 address:35.91.86.97; Private IPv4 address :10.10.2.225 )

image-20230906090854021


AWS 管理控制台中,使用 AWS 搜索栏搜索DataSync ,然后从结果列表中选择该服务。

此时将显示创建代理页面。

选择 Transfer data(传输数据)> Agents(代理)> Create Agent(创建代理)。

image-20230906091154223

如果 Deploy agent(部署代理)部分可用,请从下拉菜单中选择 Amazon EC2

Service endpoint(服务端点)部分,保留默认 Public service endpoints(公有服务端点)选项。

Activation key(激活密钥)部分,对于 Agent address(代理地址),输入您之前复制的 DataSync 代理实例的 Public IPv4 address(公有 IPv4 地址)值。

选择 Get key(获取密钥)。

image-20230906091340684

注意:在激活页面超时的情况下,DataSync 代理实例可能仍处于联机状态。继续等待一到两分钟,然后刷新页面并重试。

下一页面上会有一个绿色复选标记 ,其中列出了激活密钥。

对于 Agent name(代理名称),输入 NFS DataSync agent

向下滚动到页面底部,然后选择 Create agent(创建代理)。

此时将显示 DataSync 代理页面,且页面顶部会显示 Created agent(已创建代理)消息。

现在已成功将 DataSync 代理部署为 EC2 实例并将其激活。

image-20230906091512188

image-20230906091542926

激活密钥
K09GH-03C3J-8BUR8-9K5UA-816NP
代理地址
35.91.86.97

任务 3:创建并运行 DataSync 任务

现在可以使用 DataSync 将 NFS 文件共享上当前存在的数据复制到 S3 存储桶。

在此任务中,您要修改本地 NFS 服务器配置以允许来自 DataSync 代理实例的连接。然后,需要创建一个新的 DataSync 任务,用于将数据从本地 NFS 服务器复制到 S3 存储桶。

返回您在任务 1 中打开的 NFS 文件服务器会话。

命令:要修改 /etc/exports 文件以允许连接 DataSync 代理实例,请运行以下命令:

替换为您在上一任务中复制的 DataSync 代理实例的 Private IPv4 address(私有 IPv4 地址)。10.10.2.225

sudo sh -c 'echo "/var/nfs <DataSyncAgentPrivateIp>(rw,fsid=2,sync,no_subtree_check)" >> /etc/exports'

sudo sh -c 'echo "/var/nfs 10.10.2.225(rw,fsid=2,sync,no_subtree_check)" >> /etc/exports'

命令:要激活对 /etc/exports 配置所做的更改,请运行以下命令:

sudo exportfs -a

返回到控制台中的 DataSync 代理页面。

Tasks(任务)部分,选择 Create task(创建任务)。

注意:也可以从 Tasks(任务)页面(可从左侧导航窗格访问此页面)创建任务。

Source location options(源位置选项)部分中,选择 Create a new location(创建新位置)。

Configuration(配置)部分的 Location type(位置类型)下拉菜单中,选择 Network File System (NFS)(网络文件系统 (NFS))。

系统将显示其他字段。

进行以下配置:

  • 对于 Agents(代理),选择 NFS DataSync agent(NFS DataSync 代理)
  • 对于 NFS Server(NFS 服务器),粘贴 NfsServerPrivateIp 值
  • 对于 Mount path(挂载路径),输入/var/nfs

在页面底部,选择 Next(下一步)。

image-20230906104927374

Destination location options目的地位置选项)部分中,选择 Create a new location(创建新位置)。

Configuration(配置)部分的 Location type(位置类型)下拉菜单中,选择 Amazon S3

配置以下各项:

  • 对于 S3 bucket(S3 存储桶),选择名称包含 nfs-bucket 的存储桶。
  • 对于 IAM role(IAM 角色),选择名称包含 NfsS3BucketAccessRole 的角色。您可以在此字段中输入,以协助搜索。

选择 Next(下一步)。

image-20230906112255899

找到 Task logging(任务日志记录)部分。

Log level(日志级别)下拉菜单中选择 Do not send logs to CloudWatch(不向 CloudWatch 发送日志)。

保留所有其他字段的默认选项,然后选择 Next(下一步)。

image-20230906112341922

审核您选择的设置,然后选择 Create task(创建任务)。

系统将加载一个新页面,页面顶部显示任务 ID 和内容为 Created task(已创建任务)的横幅。

等到 Task status(任务状态)变为 Available(可用),这需要约 1–2 分钟。

image-20230906112420342

在页面右上角选择 Start(开始)和 Start with defaults(从默认值开始)。此操作将运行 DataSync 任务。

image-20230906112453623

注意:如果 Start with defaults(从默认值开始)不可用,请选择 Start(开始)。 页面顶部会显示一个内容为 Started execution(已开始执行)的横幅。

Started execution(已开始执行)横幅的右侧,选择 See execution details(查看执行详细信息)。

image-20230906112519700

Execution details(执行详细信息)页面上,等待 Execution status(执行状态)变为 Success(成功),这大约需要 3–4 分钟。

image-20230906112849559

image-20230906112920451


AWS 管理控制台中,使用 AWS 搜索栏搜索 S3,然后从结果列表中选择该服务。

选择名称包含 nfsbucket 的存储桶以查看其内容。

aws-datasync-metadata 文件外,其中还列出了您在任务 1 中复制到 NFS 文件共享的 10 个 .png 文件。

image-20230906112754800

image-20230906113341082

注意:将文件或文件夹复制到 Amazon S3 时,文件或文件夹与对象之间存在一一对应关系。文件和文件夹元数据时间戳以及 POSIX 权限(包括用户 ID、组 ID 和权限)均存储在 Amazon S3 用户元数据中。存储在 Amazon S3 用户元数据中的文件元数据可与文件网关互操作,从而提供对 DataSync 存储在 Amazon S3 中的数据的基于本地文件的访问。

当 DataSync 从 NFS 服务器复制时,源上文件和文件夹的 POSIX 权限将存储在 Amazon S3 用户元数据中。从 SMB 文件共享复制时,默认 POSIX 权限存储在 Amazon S3 用户元数据中。

当 DataSync 将包含此用户元数据的对象复制回 NFS 服务器时,系统将恢复文件元数据。复制回 SMB 文件共享时,所有权将根据 DataSync 中为访问该文件共享所配置的用户进行设置,并分配默认权限。

已修改本地 NFS 服务器配置,以允许连接 DataSync 代理实例。您还创建了一个新的 DataSync 任务,用于将数据从本地 NFS 服务器复制到 S3 存储桶。


任务 4:部署并激活 Storage Gateway 文件网关

已将现有数据从 NFS 文件共享迁移到 Amazon S3,现在可以部署文件网关来托管新的 NFS 文件共享了。

在此任务中,需要将文件网关设备部署为 EC2 实例,然后将其激活,如下图所示:

image-20230906105231985

AWS 管理控制台中,使用 AWS 搜索栏搜索 Storage Gateway,然后从结果列表中选择该服务。

此时应该会显示开始页面。之所以显示此页面,是因为您尚未在此区域内配置 Storage Gateway 服务。

选择 Create gateway(创建网关)。

image-20230906113907564

在该页面的右上角,验证 AWS 区域是否与实验页面左侧的 Region(区域)值相同。

此时将显示设置网关页面。

Gateway settings(网关设置)部分中,对于 Gateway name(网关名称),输入File Gateway

Gateway options(网关选项)部分中,选择 Amazon S3 File Gateway

Platform options(平台选项)部分中,选择 Amazon EC2,然后选择 Customize your settings(自定义您的设置)选项。

Set up gateway on Amazon EC2(在 Amazon EC2 上设置网关)部分中,选择 Launch instance (启动实例)。

  • 此时将打开一个新的标签页,其中显示 EC2 实例启动向导。此链接会自动选择正确的亚马逊云机器镜像 (AMI),您必须将其用于文件网关设备。

找到 Name and tags(名称和标签)部分,为 Name(名称)字段输入 File Gateway appliance

找到 Instance type(实例类型)部分。

Instance type(实例类型)下拉菜单中选择 t2.xlarge

注意

  • t2.xlarge 实例类型是本实验中唯一可以成功部署的实例类型。如果选择任何其他类型,系统会在向导结束时显示失败消息。
  • 在本实验中,t2.xlarge 实例类型仅用作示例。在部署 Storage Gateway 设备时,请务必参阅文档,了解正确的设备大小。

找到 Key pair (login)(密钥对 (登录))部分。

Key pair name - required(密钥对名称 – 必需)下拉菜单中选择 Proceed without a key pair (Not recommended) (在没有密钥对的情况下继续 (不推荐))。

找到 Network settings(网络设置)部分。

选择 Edit(编辑)按钮。

从下拉菜单中配置以下设置:

  • 对于 VPC,选择 Lab VPC(实验 VPC)
  • 对于 Subnet(子网),选择 Server Subnet(服务器子网)
  • 对于 Auto-assign public IP(自动分配公有 IP),选择 Enable(启用)

选择 Select existing security group(选择现有的安全组)按钮。

Common security groups(常见安全组)下拉菜单中选择名称类似 xxxx-FileGatewayAccess-xxxx 的安全组。

FileGatewayAccess 安全组将配置为允许以下流量:

  • 入站:用于网关激活的端口 80 (HTTP)
  • 入站:用于来自客户端子网的 NFS v4.1 通信的端口 2049
  • 出站:用于与 Storage Gateway 进行通信的端口 443
  • 出站:NFS v4.1 与客户端子网通信的端口 2049

附加信息:有关 Storage Gateway 使用的端口的更多信息,请参阅网络和防火墙要求

转到 Configure storage(配置存储)部分。

注意:此处已有一个名为 Root Volume(根卷)的卷。请勿更新该卷。

选择 Add new volume(添加新卷)按钮并配置以下各项:

  • 在 GiB 文本框中输入150。
  • 从 EBS volume(EBS 卷)的下拉菜单中,选择 General Purpose SSD (gp2)(通用型 SSD (gp2))

找到 Summary(摘要)部分。

选择 Launch instance(启动实例)按钮。

image-20230906114711023

此时将显示启动实例页面。

选择 查看所有实例 按钮。

image-20230906114739612

此时将显示 Amazon EC2 控制台

部署文件网关设备实例需要几分钟的时间。监控部署状态,等待状态检查列显示 2/2 checks passed(2/2 已通过检查)。

从列表中选择您的文件网关实例。在下部窗格中的 Details(详细信息)选项卡上,找到 Public IPv4 address(公有 IPv4 地址)。复制列出的 IP 地址。您将在完s成文件网关部署时使用此值。

image-20230906114958718

返回到浏览器中的 AWS Storage Gateway 标签页。它应当仍在设置网关页面上。

Platform options(平台选项)中,验证是否已选中 Amazon EC2,再选择 I completed all the steps…(我已完成所有步骤…),然后选择 Next(下一步)。

image-20230906115146555

Endpoint options(终端节点选项)部分中,对于 Service endpoint(服务终端节点),选择 Publicly accessible(可公开访问)。

Gateway connection options(网关连接选项)部分中,选择 IP address(IP 地址),对于 IP address(IP 地址),粘贴您之前为文件网关设备实例复制的 Public IPv4 address(公有 IPv4 地址),然后选择 Next(下一步)。

  • 公有 IPv4 地址 34.217.32.68

  • 私有 IPv4 地址 10.10.2.190

image-20230906115622447

注意:在激活页面超时的情况下,文件网关实例可能仍处于联机状态。继续等待一到两分钟,然后刷新页面并重试。

此时将显示激活网关页面。

查看此页面,然后选择 Activate gateway(激活网关)。

image-20230906115715032

此时将显示配置网关页面。

配置网关页面上,配置以下各项:

Configure cache storage(配置缓存存储)部分中,等待正在准备本地磁盘完成处理(约 1–2 分钟)。

Allocated to(已分配给)下拉菜单中选择缓存

image-20230906120136842

CloudWatch log group(CloudWatch 日志组)部分中,选择 Deactivate logging(停用日志记录)。

选择 Configure(配置)。

image-20230906120157433


任务 5:在文件网关上创建 NFS 共享并重新配置 Linux 客户端

概念验证即将完成。已部署文件网关,可以创建 NFS 文件共享来附加到 Linux 客户端了。

在此任务中,您将执行以下操作:

  • 在文件网关上创建 NFS 文件共享。
  • 重新配置 Linux 客户端,以便挂载新的 NFS 文件共享。
  • 将第二组示例数据复制到新的 NFS 文件共享。

如果您尚未转到在上一个任务中出现的 Storage Gateway 控制台的网关部分,请使用 AWS 搜索栏搜索Storage Gateway ,然后从结果列表中选择该服务。

在导航窗格中,确保选择了 Gateways(网关)。

选择 创建文件共享

注意:您也可以从 Storage Gateway 控制台的 File shares(文件共享)部分创建新的文件共享。

此时将显示配置文件共享设置页面。

文件共享设置配置页面上,配置以下各项:

  • 对于 Gateway(网关),选择 File Gateway (sgw-xxxx)(文件网关 (sgw-xxxx))。
  • 对于 File share protocol(文件共享协议),选择 NFS。
  • 对于 S3 bucket(S3 存储桶),从下拉菜单中选择名称包含 nfsbucket 的存储桶。

选择 Customize configuration(自定义配置)来设置其他属性,而不是采用默认配置。

image-20230906120531748

滚动到页面底部,然后选择 Next(下一步)。

此时将显示 Amazon S3 存储设置页面。

配置以下各项:

  • 对于 Storage class for new objects(新对象的存储类),选择 S3 Standard

  • 对于 Object metadata(对象元数据),选中:

    • Guess MIME type(猜测 MIME 类型)
    • Gateway files accessible to cross-account S3 bucket owner(跨账户 S3 存储桶拥有者可访问的网关文件)
  • 对于 Access to your S3 bucket(访问 S3 存储桶),选中 Use an existing IAM role(使用现有 IAM 角色)

arn:aws:iam::454566530271:role/LabStack-2848353a-a5d2-4c70-NfsS3BucketAccessRole-1ASGTSPZRM8F4
  • 对于 IAM role(IAM 角色),粘贴实验页面左侧的 NfsS3AccessPolicyARN 值

选择 Next(下一步)。

image-20230906120853721

注意:此时将显示一条警告消息,指示可以从任何位置访问文件共享。AWS 建议您务必仅将访问权限授予环境中所需的客户端。

选择 ****Add a client****(添加客户端)。

要向客户端子网中的主机授予访问共享的权限,请在 Allowed clients(允许的客户端)文本字段中添加条目10.10.1.0/24

选择 Next(下一步)。

image-20230906120945454

验证 Allowed clients(允许的客户端)列表是否使用您添加的值进行了更新。

选中 Create(创建)。

随即显示文件共享概览页面。

等待 Status(状态)列显示为 Available(可用),这需要不到一分钟的时间。

image-20230906121053937

注意:您可能需要时不时单击页面顶部的 刷新图标。

选中 File share ID(文件共享 ID)链接。

在下部窗格中,找到用于将文件共享挂载到 Linux 上的命令,然后将该命令复制到文本编辑器中。

在文本编辑器中,将该命令中的 [MountPath] 替换为 /mnt/nfs

mount -t nfs -o nolock,hard 10.10.2.190:/labstack-2848353a-a5d2-4c70-b586-997e2b-nfsbucket-atrm8otxva0j [MountPath]

mount -t nfs -o nolock,hard 10.10.2.190:/labstack-2848353a-a5d2-4c70-b586-997e2b-nfsbucket-atrm8otxva0j /mnt/nfs

image-20230906121224999

返回到您在任务 1 中打开的 NFS 客户端实例会话。

image-20230906121414603

命令:在终端中,要断开与本地 NFS 文件服务器的现有连接,请运行以下命令:

sudo umount -f /mnt/nfs

命令:输入 sudo,然后粘贴文本编辑器中的命令,以挂载文件网关 NFS 文件共享。该命令的输出应与以下内容类似:

sudo mount -t nfs -o nolock,hard 10.10.2.33:/nfs-bucket-ql-23453634245 /mnt/nfs

sudo mount -t nfs -o nolock,hard 10.10.2.190:/labstack-2848353a-a5d2-4c70-b586-997e2b-nfsbucket-atrm8otxva0j /mnt/nfs

运行该命令。

命令:要验证是否已成功挂载 NFS 文件共享,请运行以下命令:

df -h

预期输出

[root@ip-10-10-1-188 ~]# df -h
Filesystem                                                                   Size  Used Avail Use% Mounted on
devtmpfs                                                                     465M     0  465M   0% /dev
tmpfs                                                                        473M     0  473M   0% /dev/shm
tmpfs                                                                        473M  416K  472M   1% /run
tmpfs                                                                        473M     0  473M   0% /sys/fs/cgroup
/dev/nvme0n1p1                                                                10G  1.7G  8.4G  17% /
10.10.2.180:/var/nfs                                                         8.0E     0  8.0E   0% /mnt/nfs
tmpfs                                                                         95M     0   95M   0% /run/user/0
10.10.2.190:/labstack-2848353a-a5d2-4c70-b586-997e2b-nfsbucket-atrm8otxva0j  8.0E     0  8.0E   0% /mnt/nfs

命令:要验证之前复制到 NFS 文件共享的 10 个 .png 文件是否存在,请运行以下命令:

ls /mnt/nfs

预期输出

输出中列出了 10 个 .png 文件。

命令:要将第二组数据复制到文件网关 NFS 文件共享,请运行以下命令:

sudo cp /data/FileGateway/*.* /mnt/nfs

image-20230906121601750

返回到 AWS 管理控制台。使用 AWS 搜索栏搜索 S3,然后从结果列表中选择该服务。

选择名称以 nfs-bucket 开头的存储桶并查看其内容。

返回的结果中共列出 20 个 .png 文件:在任务 1 中复制到 NFS 文件共享的 10 个文件 (1-10) 和刚刚复制的 10 个文件 (11-20)。
image-20230906121721712

已在文件网关上创建 NFS 文件共享、重新配置 Linux 客户端以挂载新的 NFS 文件共享,并将第二组示例数据复制到新的 NFS 文件共享。


总结

已成功完成以下任务:

  • 将 DataSync 代理作为 EC2 实例部署并激活
  • 创建一个 DataSync 任务以将数据从基于 Linux 的 NFS 服务器复制到 S3 存储桶
  • 将 Storage Gateway 文件网关设备作为 EC2 实例部署并激活
  • 在文件网关上创建 NFS 文件共享
  • 将 Linux 主机配置为连接到文件网关上的 NFS 共享

其他资源

猜你喜欢

转载自blog.csdn.net/qq_45392321/article/details/132735116
AWS