Ed腾讯云下一代CDN -- EdgeOne加速MinIO对象存储

省流

使用MinIO作为EdgeOne的源站。

背景介绍

项目中需要一个兼容S3协议的对象存储服务,腾讯云的COS虽然也兼容S3协议,但是也只是支持简单的上传下载,对于上传的时候同时打标签这种需求,就不兼容S3了。所以决定自建一个对象存储服务,这里选择EdgeOne为对象存储提供CDN加速服务。本文详细记录了设置过程,作为一个记录方便以后参考。

MinIO设置

MinIO侧设置比较简单,只需要一个具有桶访问权限的用户名\密码就行,可以直接使用管理员账号,但是还是建议创建专门的用户,分配相应权限。详细步骤记录如下:

创建测试桶

这里设置桶名称为"test"。

设置桶访问模式

点击桶名,进入设置界面,设置桶访问模式为"private"。(我这里的桶默认权限初始值是n/a,我不知道是不是我安装问题,我认为他应该默认就是private才对)。

创建Policy

创建一个名为test-policy的Policy,内容为:

xml 复制代码
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:*"
            ],
            "Resource": [
                "arn:aws:s3:::test/*"
            ]
        }
    ]
}

创建User

创建名为test-user的用户,设置密码,Policy选择test-policy,这样,test-user用户就具有test桶的所有权限。

EdgeOne设置

域名设置

域名设置中源站地址填写MinIO的API地址,地域在MinIO后台Settings/Region中找到,我这里设置的是"cn-north-1",Access Key ID和Secret Access Key分别是用户名\密码。

推荐配置

推荐配置中可以选择"大文件下载"。

配置CNAME

根据提示配置好域名的cname记录

等待配置生效

上传一个图片到桶跟目录,假设名称为a.png,可以使用地址 http://minio-test-cdn.trycatch.xyz/test/a.png 访问

一些细节

最后,还有一些细节需要留意下:

  1. EdgeOne默认回源规则为跟随协议,如果源站地址不支持https,想要强制使用http协议回源,可以在规则中增加如下配置。
  1. EdgeOne支持申请免费证书,在域名管理中设置即可
  1. 如果设置了https证书,可以开启强制https访问
  1. MinIO分API地址和Console地址(Web管理界面地址),目前Console地址可以套EdgeOne加速,API地址套EdgeOne地址上传下载目前没有问题,但是涉及到PUT请求会有问题,所以不建议直接套EdgeOne使用,本文介绍的通过S3协议直接回源是没有问题的。
相关推荐
johnny23315 小时前
MinIO替代汇总(二):GlusterFS、Garage、Free FS
minio
灯澜忆梦1 天前
【minio】#5 | MinIO 分布式部署 + HTTPS 部署
分布式·网络协议·https·对象存储·minio
灯澜忆梦3 天前
【minio】#1 | 简介与安装
docker·对象存储·minio
灯澜忆梦3 天前
【minio】#2 | Web 控制台操作
对象存储·minio
梦想不只是梦与想4 天前
对象存储服务器vs数据库
数据库·对象存储·图片存储
分布式存储与RustFS6 天前
升级 RustFS 二进制不停机:一条一条换,留一条退路
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
xiaolin03336 天前
AWS SDK对接MinIO踩坑:AWS_REQUEST_CHECKSUM_CALCULATION
java·minio·s3
分布式存储与RustFS6 天前
日志目录的预算是 2 GiB:轮转、保留和压缩这三件事
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
分布式存储与RustFS7 天前
图床搬到自己的对象存储:PicGo 加 S3 插件的完整配置
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
分布式存储与RustFS7 天前
在 Kubernetes 里跑对象存储的三个方案:Helm、Operator、以及什么时候别用 K8s
运维·云原生·开源·对象存储·分布式存储·s3·性能基准