Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Guide [8.17] ›Репликация между кластерами ›Управление репликацией между кластерами

Воссоздание индекса-фолловера

При обновлении или удалении документа, соответствующая операция сохраняется в индексе Lucene в течение периода времени, определяемого параметром index.soft_deletes.retention_lease.period. Этот параметр настраивается для индекса-лидера.

При запуске индекса-фолловера он получает арендованный срок хранения от индекса-лидера. Эта аренда сообщает лидеру, что он не должен разрешать удаление soft delete до тех пор, пока фолловер не укажет, что операция получена, или пока аренда не истечёт.

Если индекс-фолловер существенно отстаёт от лидера и не может реплицировать операции, Elasticsearch сообщает об ошибке indices[].fatal_exception. Для решения проблемы необходимо воссоздать индекс-фолловер. Когда новый индекс-фолловер запускается, процесс удаленного восстановления копирует файлы сегментов Lucene из лидера.

Воссоздание индекса-фолловера — это действие, удаляющее данные. Все существующие файлы сегментов Lucene удаляются в кластере, содержащем индекс-фолловер.

Чтобы воссоздать индекс-фолловер, обратитесь к Репликации между кластерами и выберите вкладку Индексы-фолловеры.

Выберите индекс-фолловер и приостановите репликацию. Когда статус индекса-фолловера изменится на «Приостановлено», снова выберите индекс-фолловер и выберите отслеживание индекса-лидера.

Индекс-фолловер будет преобразован в стандартный индекс и больше не будет отображаться на странице Репликации между кластерами.

В навигации слева выберите Управление индексами. Выберите индекс-фолловер из предыдущих шагов и закройте индекс-фолловер.

Затем вы можете восстановить индекс-фолловер, чтобы перезапустить процесс репликации.

Использовать API

Используйте API приостановки фолловера для приостановки процесса репликации. Затем закройте индекс-фолловер и воссоздайте его. Например:

resp = client.ccr.pause_follow(
    index="follower_index",
)
print(resp)

resp1 = client.indices.close(
    index="follower_index",
)
print(resp1)

resp2 = client.ccr.follow(
    index="follower_index",
    wait_for_active_shards="1",
    remote_cluster="remote_cluster",
    leader_index="leader_index",
)
print(resp2)
response = client.ccr.pause_follow(
  index: 'follower_index'
)
puts response

response = client.indices.close(
  index: 'follower_index'
)
puts response

response = client.ccr.follow(
  index: 'follower_index',
  wait_for_active_shards: 1,
  body: {
    remote_cluster: 'remote_cluster',
    leader_index: 'leader_index'
  }
)
puts response
const response = await client.ccr.pauseFollow({
  index: "follower_index",
});
console.log(response);

const response1 = await client.indices.close({
  index: "follower_index",
});
console.log(response1);

const response2 = await client.ccr.follow({
  index: "follower_index",
  wait_for_active_shards: 1,
  remote_cluster: "remote_cluster",
  leader_index: "leader_index",
});
console.log(response2);
POST /follower_index/_ccr/pause_follow

POST /follower_index/_close

PUT /follower_index/_ccr/follow?wait_for_active_shards=1
{
  "remote_cluster" : "remote_cluster",
  "leader_index" : "leader_index"
}

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/ccr-recreate-follower-index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API