amazon-s3 - 如何配置 MarkLogic 在启动备份并指向 S3 兼容对象存储期间发送 PUT 请求?
问题描述
我正在执行一个 curl POST 请求:
curl --anyauth --user xyz:xyz123 -i -X POST -d'{"operation": "backup-database","forest": ["a","a-r1","b-cg2","b-r1","c","c-r1"],"backup-dir": "s3://abc-marklogic/MLbackup","incremental": false,"journal-archiving": true,"journal-archive-path": "/MLbackup/rest/","include-replicas": "true","lag-limit": 30}' -H "Content-type: application/json" http://localhost.uhc.com:8002/manage/v2/databases/{db-name}
通过 S3 Compatible REST API 访问对象存储帐户。但它默认发送 GET 请求。
这是我得到的错误:
{"errorResponse":{"statusCode":"400", "status":"Bad Request", "messageCode":"MANAGE-OPERATION", "message":"MANAGE-OPERATION: (err:FOER0000) 执行操作时出错:S3 套接字错误:GET https://zyz.abc.mno.com/ SVC-SOCCONN:套接字连接错误:SSL_connect 10.86.52.125:56290-10.205.77.176:443:证书验证失败
解决方案
这个特定的错误正是它所说的。您的“S3 兼容”对象存储未通过证书验证。ML 将使用 PUT 来写入文件,但似乎使用 GET 来获取目录列表,如果它是本地文件系统,它会这样做。
建议考虑备份到本地 FS,然后通过您无法与之交谈的任何工具复制到您的对象存储。
推荐阅读
- laravel-5 - 无法让 laravel 与 aws 应用程序负载均衡器一起工作
- react-native - 在本机反应中,borderRadius 无法使用 Image uri 标签
- windows - 该值被发送到系统调用函数,与有效的系统调用代码不匹配
- mysql - 如何修复未删除的触发器
- google-translate - 谷歌翻译已停止在 Chrome 中工作
- c# - 未定义或导入预定义类型“System.String”
- java - 外部化 Spring Boot 配置
- python-3.x - 滚动时间序列
- php - 使用 PHP 在 WordPress 中显示 icecast 元数据(标题)
- reactjs - 我是否错误地安装了 create-react-app?