Справочная информация:
- У нас есть два AWS ElasticSearch кластера в версии 6.8 в одном и том же AWS аккаунте и регионе.
- Нам нужно переиндексировать один из индексов от кластера 1 (источник) к кластеру 2 (dest).
Я пытался использовать API переиндексации для 6.8, как описано в документации ES
POST <https://endpoint of destination Elasticsearch>/_reindex
{
"source": {
"remote": {
"host": "https://endpoint-of-source-elasticsearch-cluster-1.es.amazonaws.com"
},
"index": "source-index-name"
},
"dest": {
"index": "destination-index-name"
}
}
Проблема:
Я получаю ошибку ниже
{
"error": {
"root_cause": [
{
"type": "x_content_parse_exception",
"reason": "[8:3] [reindex] failed to parse field [source]"
}
],
"type": "x_content_parse_exception",
"reason": "[8:3] [reindex] failed to parse field [source]",
"caused_by": {
"type": "illegal_argument_exception",
"reason": "[host] must be of the form [scheme]://[host]:[port](/[pathPrefix])? but was [https://endpoint-of-source-elasticsearch-cluster-1.es.amazonaws.com]",
"caused_by": {
"type": "u_r_i_syntax_exception",
"reason": "The port was not defined in the [host]: https://endpoint-of-source-elasticsearch-cluster-1.es.amazonaws.com"
}
}
},
"status": 400
}
Возможная причина:
- Параметр host должен содержать схему, хост, порт (например, https://otherhost: 9200 ) согласно do c.
- Удаленные хосты должны быть явно внесены в белый список вasticsearch. yaml, использующий свойство reindex.remote.whitelist
Поскольку я использую кластеры AWS, я не уверен, как следовать схеме хоста, публикации или кластеру белого списка, потому что я не Не знаю, как сделать эти изменения в кластере AWS.
Запрос помощи, если есть обходной путь. Спасибо,