tiup/components/br/v8.0.0/br restore的问题

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】tidb-v81.10
【复现路径】
做过哪些操作出现的问题:使用 tiup br backup full --pd “${PD_IP}:2379”
–storage “s3://backup/luojinshu-snapshot-${timestamp}?endpoint=${endpoint}&access-key=${access_key}&secret-access-key=${secret_access_key}”
–ratelimit 1024
备份成功后,做restore 操作
tiup br restore full --pd “${PD_IP}:2379”
–storage “s3://backup/luojinshu-snapshot-${timestamp}?endpoint=${endpoint}&access-key=${access_key}&secret-access-key=${secret_access_key}”

【遇到的问题:问题现象及影响】
报错信息如下:
Detail BR log in /tmp/br.log.2024-08-20T15.48.19+0800
[2024/08/20 15:48:23.450 +08:00] [INFO] [collector.go:77] [“Full Restore failed summary”] [total-ranges=0] [ranges-succeed=0] [ranges-failed=0]
Error: create storage failed: NoCredentialProviders: no valid providers in chain
caused by: EnvAccessKeyNotFound: failed to find credentials in the environment.
SharedCredsLoad: failed to load profile, .
EC2RoleRequestError: no EC2 instance role found
caused by: RequestError: send request failed
caused by: Get “http://169.254.169.254/latest/meta-data/iam/security-credentials/”: context deadline exceeded (Client.Timeout exceeded while awaiting headers)
是不支持这样的restore方式吗?没有是识别到对应的s3的配置信息
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】

命令中的参数都配置过环境变量了嘛?echo ${access_key} 类似这样打印一下看看

按理说是应该支持这样的格式才对,我看这里也是支持的
https://docs.pingcap.com/zh/tidb/stable/external-storage-uri#amazon-s3-uri-格式

同样的命令,back 都可以成功

timestamp不用指定嘛?

都在环境变量里面
我直接tidb的mysql终端里面执行 RESTORE DATABASE * FROM ‘s3://backup/luojinshu-snapshot-xxx?endpoint=xxxx&access-key=xxx&secret-access-key=xxx’ 已经成功还原

NoCredentialProviders: no valid providers in chain >> 这个看起来就是 BR 工具找不到有效的 AWS 凭证来访问 S3 存储桶。:thinking:

不过看你用明文 key 好了 :thinking: 不是很能想通为啥。