【问题标题】:How to mount S3 bucket to ecs fargate container如何将 S3 存储桶挂载到 ecs fargate 容器
【发布时间】:2021-02-27 05:02:33
【问题描述】:

我有一个 aws ecs fargate 集群。它是一个 ecs-fargate 集群,而不是一个 ecs-ec2 集群。我正在运行一些需要安装卷的容器。是否可以将 s3 存储桶挂载到这个 fargate 容器?

如果是这样,我该怎么做?

如果没有,我可以遵循哪些其他选项?我想保留这些数据以供以后使用(用于灾难恢复和以后访问)

【问题讨论】:

  • S3 不是您挂载的文件系统。您通过 HTTP api 与它进行交互,通常包装在 SDK 中。因此,在运行时,您可以从应用程序代码中调用 S3 api 来下载您需要的任何对象,执行您的操作,然后在完成后将数据重新上传到 S3。如果您需要更多文件系统,请查看 EFS
  • 虽然有挂载S3的东西,但没有一个是好的。 S3 不是一个实际的文件系统,它是一个平面对象数据库,因此尝试将其用作本地文件系统充其量是低于标准的。您可以通过容器中的 API 与 s3 交互,也可以挂载 efs 卷:docs.aws.amazon.com/AmazonECS/latest/developerguide/…
  • 你不能像那样在 S3 存储桶中移动。
  • 最明显的解决方案是使用允许您挂载的 s3fs。但是,我做了一些小测试。 S3fs 首先在本地文件夹中缓存一个文件,然后开始从 s3 复制/读取。所以,如果你想复制一个 1 GB 的文件,它实际上会在操作过程中使用 2 GB。对我来说,这听起来像是一个糟糕的概念,仅适用于小文件。

标签: amazon-web-services amazon-s3 amazon-ecs aws-fargate


【解决方案1】:

正如 cmets 中所述,挂载 S3 是个坏主意,而且无论如何它都无法在您的 Fargate 容器中工作。目前在 Fargate 中挂载外部卷的唯一选择是使用 Amazon EFS

【讨论】:

  • 如果我们使用 EFS,有什么方法可以让我看到数据(可视化)和备份以进行灾难恢复?
  • 它只是文件系统上的文件,您可以随意使用它们。至于备份,有自动备份方案:docs.aws.amazon.com/efs/latest/ug/awsbackup.html
  • 谢谢,可视化效果如何?我可以 ftp 进去看看吗?
  • 可视化是指浏览文件吗?您必须在服务器上挂载文件系统(它使用 NFS)才能像那样访问它们。
  • 是的,要浏览文件,我们可以不使用其他工具吗?
猜你喜欢
  • 2017-10-19
  • 1970-01-01
  • 2019-02-02
  • 2019-01-11
  • 2020-04-30
  • 1970-01-01
  • 2020-07-21
  • 2022-07-07
  • 1970-01-01
相关资源
最近更新 更多