田帅萌7
(田帅萌)
1
为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
TiDB 5.0.6 使用br备份 上传到ceph 的s3上报错
TiDB 版本5.0.6
br版本 5.0.6
报错内容
[2022/03/23 17:28:57.553 +08:00] [WARN] [s3.go:686] [“failed to request s3, retrying”] [error=“EC2MetadataError: failed to make EC2Metadata request\
\tstatus code: 404, request id: \
caused by: {“message”: “Api Not Found”, “code”: “ApiNotFound”, “requestId”: “”}”] [backoff=10.503108016s]
上传命令
./br backup full --pd “pd:port” --storage “s3://online-tidb/abc” --s3.provider “ceph” --s3.endpoint “http://ip:port” --log-file backupfull.log
尝试其他命令
./br backup full --pd “pd:port” --storage “s3://online-tidb/abc” --s3.endpoint “http://ip:port” --log-file backupfull.log
./br backup full --pd “pd:port” --storage “s3://online-tidb/” --s3.endpoint “http://ip:port” --log-file backupfull.log
报错都是一样 均是 failed to make EC2Metadata request\
\tstatus code: 404
tidb、pd、tikv执行
export AWS_ACCESS_KEY_ID=“xxx”
export AWS_SECRET_ACCESS_KEY=“xxx”
并且写入
/etc/profile
source /etc/profile
s3是可用的 ,正常读写
[root@tv2-db-transfer-01 bin]# s3cmd ls
2022-03-23 07:19 s3://online-tidb
[root@tv2-db-transfer-01 bin]# s3cmd ls s3://online-tidb
2022-03-23 08:20 7095 s3://online-tidb/backuptable.log
2022-03-23 08:39 3230 s3://online-tidb/original-ks.cfg
如果是权限问题则报错 403 而不是404
【概述】 场景 + 问题概述
【备份和数据迁移策略逻辑】
【背景】 做过哪些操作
【现象】 业务和数据库现象
【问题】 当前遇到的问题
【业务影响】
【TiDB 版本】
【附件】
- 相关日志、配置文件、Grafana 监控(https://metricstool.pingcap.com/)
- TiUP Cluster Display 信息
- TiUP CLuster Edit config 信息
- TiDB-Overview 监控
- 对应模块的 Grafana 监控(如有 BR、TiDB-binlog、TiCDC 等)
- 对应模块日志(包含问题前后 1 小时日志)
若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。
报错是访问 S3 报错,确认一下 S3 的用户权限是否正常,可以通过 AWS 工具手动试试使用这个账号读写是否正常。你反馈的是查看权限是正常的。
通过这个文档再确认一下。https://docs.pingcap.com/zh/tidb-in-kubernetes/stable/backup-to-aws-s3-using-br
田帅萌7
(田帅萌)
3
权限是正常的 可以put del 一些操作,我有问了sa 给的是最高权限
田帅萌7
(田帅萌)
4
[root@tv2-db-transfer-01 bin]# echo aa > aa.txt
[root@tv2-db-transfer-01 bin]# s3cmd put aa.txt s3://online-tidb/
upload: ‘aa.txt’ -> ‘s3://online-tidb/aa.txt’ [1 of 1]
3 of 3 100% in 0s 49.21 B/s done
[root@tv2-db-transfer-01 bin]# s3cmd ls s3://online-tidb
田帅萌7
(田帅萌)
5
田帅萌7
(田帅萌)
6
[root@tv2-db-transfer-01 bin]# ./dumpling -u root -P 4000 -h 172. -p “” -B test -r 200000 -o “s3://online-tidb/abc”
[2022/03/25 15:21:26.517 +08:00] [WARN] [s3.go:686] [“failed to request s3, retrying”] [error=“EC2MetadataError: failed to make EC2Metadata request\
\tstatus code: 404,
request
id: \
caused by: {“message”: “Api Not Found”, “code”: “ApiNotFound”, “requestId”: “”}”] [backoff=5.063227984s]
一样报错
手动上传
[root@tv2-db-transfer-01 bin]# ./dumpling -u root -P 4000 -h 172. -p “” -B test -r 200000 -o “/data1/tp/backup/tidb-toolkit-v5.0.6-linux-amd64/bin/backup”
[root@tv2-db-transfer-01 bin]# s3cmd put backup s3://online-tidb/back-test/
ERROR: Parameter problem: Use --recursive to upload a directory: backup
[root@tv2-db-transfer-01 bin]# s3cmd put backup s3://online-tidb/back-test/ --recursive
upload: ‘backup/metadata’ -> ‘s3://online-tidb/back-test/backup/metadata’ [1 of 3]
146 of 146 100% in 0s 3.78 KB/s done
upload: ‘backup/test-schema-create.sql’ -> ‘s3://online-tidb/back-test/backup/test-schema-create.sql’ [2 of 3]
95 of 95 100% in 0s 655.74 B/s done
upload: ‘backup/test.aa-schema.sql’ -> ‘s3://online-tidb/back-test/backup/test.aa-schema.sql’ [3 of 3]
137 of 137 100% in 0s 3.53 KB/s done
就可以
北京大爷
(北京大爷)
8
看了下 BR 的代码
先说结论大概率是你的 Ceph 版本太低了和 aws 的s3 包不兼容了
https://github.com/pingcap/br/blob/v5.0.6/pkg/storage/s3.go
BR 里面的 S3 接口引用的 Aws 官方的。
田帅萌7
(田帅萌)
9
backup/tidb-toolkit-v5.4.0-linux-amd64/bin/
./br backup full --pd “pd:port” --storage “s3://online-tidb/abc” --s3.provider “ceph” --s3.endpoint “http://ip:port” --send-credentials-to-tikv=FALSE --log-file backupfull.log
[2022/03/25 19:08:17.625 +08:00] [WARN] [s3.go:773] [“failed to request s3, retrying”] [error=“EC2MetadataError: failed to make EC2Metadata request\
\tstatus code: 404, request id: \
caused by: {“message”: “Api Not Found”, “code”: “ApiNotFound”, “requestId”: “”}”] [backoff=5.5355586s]
最新报错也是一样的
田帅萌7
(田帅萌)
10
可能是这样 ceph 12.2.13 我搜了一下 大概是19年发布的。。
system
(system)
关闭
12
该主题在最后一个回复创建后60天后自动关闭。不再允许新的回复。