AWS S3FS 如何

AWS S3FS How to

这是当前情况 -

我有 多个 S3 存储桶,其中为来自 FTP 的对象的 PUT 配置了 SQS 事件,我使用 S3FS 配置了这些存储桶。

此外,我在 EC2 上有 多个目录,用户可以在其中放置一个对象,该对象与不同的 S3 存储桶(使用 S3FS)同步,生成 SQS事件(使用S3的SQS事件)。

这是我需要实现的,

而不是多个 S3 存储桶,我需要在文件夹级别整合逻辑
IE。我现在已经为之前创建的每个存储桶创建了不同的文件夹,我已经在各个文件夹中为 PUT 创建了单独的 SQS 事件。

现在是 S3FS 的存储桶级别逻辑,我想调整单个 S3 存储桶中的文件夹级别。

即。我想在 EC2 上创建 3 个不同的目录,例如 A、B、C。
如果我将一个对象放入 EC2 的目录 A,该对象必须与 S3 存储桶中的文件夹 A 同步
对于 S3 的目录 B 和文件夹 B 以及 EC2 上的目录 C 和 S3 上的文件夹 C 也是如此。

这是我为安装 S3FS 创建的步骤 -
步数 -

  1. ssh 进入 EC2

  2. sudo apt-get install automake autotools-dev g++ git libcurl4-gnutls-dev libfuse-dev libssl-dev libxml2-dev make pkg-config

  3. git 克隆 https://github.com/s3fs-fuse/s3fs-fuse.git

  4. cd s3fs-保险丝

  5. ./autogen.sh

  6. ./configure

  7. 制作

  8. sudo make install

正在将 S3 存储桶挂载到文件系统

  1. echo access-key-id:secret-access-key > /etc/passwd-s3fs

  2. chmod 600 /etc/passwd-s3fs

  3. mkdir /mnt/桶名

  4. echo s3fs#bucketname /mnt/bucketname fuse _netdev,rw,nosuid,nodev,allow_other 0 0 >> /etc/fstab

  5. mount -a

现在这些步骤实现了 EC2 上的特定目录与 S3 存储桶之间的同步,
我如何调整它以同步 EC2 上的 2 个不同目录与 S3 上的 2 个不同文件夹。
我是 Linux 和 AWS 新手,请帮助我。

不要将 S3 存储桶挂载到文件系统。使用 AWS S3 CLI 和 Cron 将 EC2 目录与 S3 存储桶目录同步。

  1. 在 EC2 实例上安装 S3CMD (http://tecadmin.net/install-s3cmd-manage-amazon-s3-buckets/#)
  2. 启动 cron 作业以实现与本地目录和 S3 存储桶子文件夹的同步。

例如创建一个脚本文件"script.sh"

#/bin/bash
aws s3 sync /path/to/folder/A s3://mybucket/FolderA
aws s3 sync /path/to/folder/B s3://mybucket/FolderB
aws s3 sync /path/to/folder/C s3://mybucket/FolderC

为这样的事情开始一个 cron 作业:

* * * * * /root/scripts/script.sh

您将实现您的用例。