切换主题
☁️ 华为云对象存储(OBS)
华为云对象存储OBS是一款稳定、安全、高效、易用的云存储服务。
配置示例
yaml
files:
- business-type: demo
file-type: obs
business-folder: demo-files
http-access-path: https://cdn.example.com
access-key-id: AKXXXXXXXXXXXXXXXXXX
access-key-secret: xxxxxxxxxxxxxxxxxxxxxxxx
bucket: my-bucket
endpoint: obs.cn-east-2.myhuaweicloud.com
max-size: 100MB
chunk-size: 10MB
allowed-upload-suffix: jpg,png,pdf,doc,docx
allow-delete: true1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
参数说明
| 参数 | 必填 | 说明 | 示例 |
|---|---|---|---|
business-type | 是 | 业务类型标识 | demo |
file-type | 是 | 固定值:obs | obs |
business-folder | 否 | 业务文件夹前缀 | demo-files |
http-access-path | 是 | 文件访问域名(CDN或OBS域名) | https://cdn.example.com |
access-key-id | 是 | 华为云AccessKey ID | AKXXXXXXXXXXXXXXXXXX |
access-key-secret | 是 | 华为云AccessKey Secret | xxxxxxxxxxxxxxxx |
bucket | 是 | OBS存储桶名称 | my-bucket |
endpoint | 是 | OBS终端节点 | obs.cn-east-2.myhuaweicloud.com |
max-size | 否 | 单文件大小限制 | 100MB |
chunk-size | 否 | 分片上传大小(默认5MB) | 10MB |
allowed-upload-suffix | 否 | 允许的文件后缀 | jpg,png,pdf |
allow-no-suffix | 否 | 是否允许无后缀文件 | false |
allow-delete | 否 | 是否允许删除 | true |
快速开始
1. 创建OBS存储桶
- 登录华为云OBS控制台
- 点击"创建桶"
- 填写桶名称,选择区域
- 设置桶策略为"私有"
- 记录桶名称和终端节点
2. 获取访问密钥
- 访问我的凭证
- 创建IAM用户(推荐使用子账号)
- 授予OBS相关权限
- 创建访问密钥并保存
安全建议
- 使用IAM子账号,不要使用主账号
- 仅授予必要的OBS权限
- 定期轮换访问密钥
- 开启MFA多因素认证
- 开启桶加密功能
3. 配置CDN加速(可选)
- 在OBS控制台绑定自定义域名
- 配置CDN加速
- 将
http-access-path设置为CDN域名
地域列表
| 地域名称 | Endpoint |
|---|---|
| 华北-北京一 | obs.cn-north-1.myhuaweicloud.com |
| 华北-北京四 | obs.cn-north-4.myhuaweicloud.com |
| 华东-上海一 | obs.cn-east-3.myhuaweicloud.com |
| 华东-上海二 | obs.cn-east-2.myhuaweicloud.com |
| 华南-广州 | obs.cn-south-1.myhuaweicloud.com |
| 西南-贵阳一 | obs.cn-southwest-2.myhuaweicloud.com |
最佳实践
存储类型选择
| 存储类型 | 适用场景 | 特点 |
|---|---|---|
| 标准存储 | 热点数据、频繁访问 | 高可用、低延迟 |
| 低频访问 | 较少访问的数据 | 成本更低 |
| 归档存储 | 长期归档 | 成本最低,需解冻 |
性能优化
yaml
# 大文件使用较大的分片
files:
- business-type: video
chunk-size: 10MB # 视频文件
- business-type: document
chunk-size: 5MB # 文档文件1
2
3
4
5
6
7
2
3
4
5
6
7
安全配置
防盗链
- 在OBS控制台配置Referer白名单
- 防止资源被盗用
访问控制
- 设置桶为私有
- 通过应用服务器控制访问权限
- 使用桶策略精细化控制
服务端加密
- 开启OBS服务端加密
- 保护敏感数据
常见问题
Q: 上传失败,提示AccessDenied?
A: 检查以下几点:
- AccessKey是否正确
- IAM用户是否有OBS权限
- 桶权限设置是否正确
- 网络是否能访问OBS
Q: 如何提高上传速度?
A:
- 选择就近的地域
- 使用分片上传(大文件)
- 调整
chunk-size大小 - 检查网络带宽
- 开启CDN加速
Q: 如何降低存储成本?
A:
- 使用低频访问或归档存储
- 配置生命周期规则自动转换
- 定期清理无用文件
- 使用智能分层存储
Q: Endpoint如何选择?
A:
- 根据业务所在地域选择就近的Endpoint
- 使用内网Endpoint可节省流量费用
- 跨区域访问建议使用CDN加速