Как я могу настроить MarkLogic для отправки запроса PUT во время инициации резервного копирования и указания на S3-совместимое хранилище объектов? - PullRequest
0 голосов
/ 26 октября 2018

Я выполняю POST-запрос curl:

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-совместимый 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: сбой проверки сертификата

1 Ответ

0 голосов
/ 26 октября 2018

Эта конкретная ошибка - именно то, о чем она говорит. Ваше 'S3-совместимое' хранилище объектов не проходит проверку сертификата. ML будет использовать PUT для записи файлов, но, похоже, использует GET для получения списка каталогов, что он и сделал бы, если бы это была локальная файловая система.

Рекомендую рассмотреть возможность резервного копирования в локальную FS, а затем копировать в хранилище объектов с помощью любого инструмента, который у вас есть, который не может с ним поговорить.

...