欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > 常规S3对象存储使用

常规S3对象存储使用

2025/4/18 22:54:23 来源:https://blog.csdn.net/adocir/article/details/143616054  浏览:    关键词:常规S3对象存储使用

常规S3对象存储使用

  • linux挂载S3对象存储空间
    • 1.在服务器中安装NFS客户端工具
    • 2.使用NFS协议挂载桶
    • 检查是否挂载成功
  • windows使用亚马逊AWS CLI进行文件存储备份
    • 安装AWS CLI
    • 配置AWS凭证
      • 创建配置文件
      • 指定自定义端点URL
    • 测试连接
    • 同步文件
    • 创建同步脚本(还没用到)
    • 定期增量更新(还没用到)

最近整了个S3对象存储空间,准备把自己的文件给

linux挂载S3对象存储空间

把S3对象存储桶直接挂载到Ubuntu服务器中,当做数据盘使用。因为对象存储平台提供了NFS协议,所以直接启用NFS进行管理。

1.在服务器中安装NFS客户端工具

在 Debian/Ubuntu 系统上:

sudo apt-get install nfs-common

在 CentOS/RedHat 系统上:

sudo yum install nfs-utils

2.使用NFS协议挂载桶

sudo mount -t nfs -o nfsvers=4.1,noauto,soft,sync,proto=tcp {对象存储服务器IP}:{共享伪路径} /mnt
  • -t nfs
    • 解释:-t 参数指定文件系统类型,这里指定为 nfs,即网络文件系统(Network File System)。
    • 作用:告诉 mount 命令要挂载的文件系统类型是 NFS。
  • -o nfsvers=4.1,noauto,soft,sync,proto=tcp
    • 解释:-o 参数用于指定挂载选项,多个选项用逗号分隔。
      各个选项的含义如下:
      • nfsvers=4.1
        解释:指定使用 NFS 协议的版本为 4.1。
        作用:确保客户端与服务器之间使用 NFS 4.1 版本进行通信。
      • noauto
        解释:指定该挂载点不在系统启动或执行 mount -a 时自动挂载。
        作用:需要手动执行挂载命令才能挂载该文件系统。
      • soft
        解释:指定为软挂载(soft mount)。
        作用:当 NFS 服务器响应超时时,客户端会返回错误给应用程序,而不是无限期地重试。
        注意:软挂载可能导致数据损坏,因为操作可能在未完成的情况下返回错误。一般建议使用 hard 挂载。
      • sync
        解释:所有对文件系统的写入操作都以同步方式进行,即操作会等待数据实际写入到存储介质后才返回。
        作用:提高数据一致性和安全性,但可能降低性能。
      • proto=tcp
        解释:指定使用 TCP 协议进行传输。
        作用:确保 NFS 客户端和服务器之间使用 TCP 协议通信,而不是默认的 UDP。

检查是否挂载成功

df -h

windows使用亚马逊AWS CLI进行文件存储备份

安装AWS CLI

AWS CLI官方安装文档
直接打开cmd命令行,执行指令:
msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi

安装完成后检查是否安装成功:

C:\Users\xxxx>aws --version
aws-cli/2.19.3 Python/3.12.6 Windows/11 exe/AMD64

配置AWS凭证

创建配置文件

aws configure --profile my-private-s3

系统会提示您输入以下信息:

AWS Access Key ID:输入您的私有 S3 存储提供的访问密钥 ID(公钥)。
AWS Secret Access Key:输入您的私有 S3 存储提供的秘密访问密钥(私钥)。
Default region name:可以留空或输入 us-east-1 等默认区域。
Default output format:可以留空或输入 json。

指定自定义端点URL

因为我用的是私有云的S3存储,而非亚马逊官方服务,所以我们需要指定访问的地址是我的S3服务器,而非官方默认服务器。

  1. 打开配置文件:

    配置文件路径: C:\Users\您的用户名.aws\config

  2. 在配置文件中,找到刚才创建的配置文件部分 [profile my-private-s3],添加endpoint_url参数:

    [default]
    [profile my-private-s3]
    region = us-east-1
    output = json
    endpoint_url = http://S3服务器IP:端口
    

    将 http://S3服务器IP:端口替换为S3 存储的实际地址。
    如果S3存储支持 HTTPS,可以使用 https://。

顺便一提,私钥公钥的信息在同目录下的credentials文件当中

测试连接

aws s3 ls --profile my-private-s3

同步文件

使用以下命令将本地文件夹同步到私有 S3 存储:

aws s3 sync "文件夹路径" s3://桶名称 --profile my-private-s3

双引号不能丢

创建同步脚本(还没用到)

为方便定期执行,创建一个批处理文件(例如 sync_to_s3.bat),将其放在固定位置:

@echo off
aws s3 sync "文件夹路径" s3://桶名称 --profile my-private-s3

定期增量更新(还没用到)

大模型生成的内容,还没测试过

使用 任务计划程序 设置定期任务:按下 Win + S,搜索并打开 任务计划程序。点击右侧的 创建任务。常规 选项卡:输入任务名称(例如 “定期同步到私有 S3”)。
勾选 使用最高权限运行。
触发器 选项卡:点击 新建,设置任务的开始时间和频率(例如,每天凌晨 2 点)。
操作 选项卡:点击 新建。
操作:选择 启动程序。
程序或脚本:输入批处理文件的完整路径,例如 C:\Scripts\sync_to_s3.bat。
点击 确定 保存任务。注意事项
访问凭证:确保使用您私有 S3 存储提供的访问密钥和秘密密钥,而不是 AWS 的凭证。
自定义端点:endpoint_url 参数用于指定您的私有 S3 存储的服务器地址。
安全性:如果可能,使用 HTTPS 协议连接到您的私有 S3 存储,以确保数据传输的安全性。
签名版本:有些私有 S3 存储需要指定签名版本为 s3v4,请根据需要在配置中添加。
区域设置:即使您的私有 S3 存储不使用区域,也需要在配置中指定一个默认区域(例如 us-east-1),否则可能会出现错误。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词