Проблема переиндексации Magento 2.4 с elasticsearch

#elasticsearch #magento2

#elasticsearch #magento2

Вопрос:

Я установил эластичный поиск (7.x) с Magento2.4, и я использую PHP 7.3, Когда я запускаю команду переиндексации ( bin/magento indexer:reindex ), получая следующую ошибку.

Неизвестная ошибка процесса индексации поиска в каталоге: {«ошибка»:{«root_cause»: [{«тип»: «cluster_block_exception», «причина»:»индекс [magento2_product_1_v1] заблокирован: [TOO_MANY_REQUESTS / 12/ использование диска превысило водяной знак на этапе заливки, в индексе есть блок разрешения удаления только для чтения];»}], «тип»:»cluster_block_exception» ,»причина»:»индекс [magento2_product_1_v1] заблокирован: [TOO_MANY_REQUESTS/12/использование диска превысило водяной знак на стадии заливки, в индексе установлен блок «разрешить удаление только для чтения»]; «}, «статус»: 429}

Если кто-нибудь решил эту проблему? Пожалуйста, дайте мне знать.

Спасибо.

Комментарии:

1. У вас нет свободного места на диске данных elasticsearch, вот что означает это сообщение disk usage exceeded flood-stage watermark, index has read-only-allow-delete block . flood-stage watermark Происходит, когда вы использовали 95% дискового пространства для каталога данных вашего узла. Вам нужно освободить место или увеличить его.

2. @leandrojmp Не могли бы вы рассказать мне, как это сделать через терминал. Я использую Linux.

Ответ №1:

Просто выполните следующие команды в командной строке:

 curl -XPUT -H "Content-Type: application/json" http://localhost:9200/_cluster/settings -d '{ "transient": { "cluster.routing.allocation.disk.threshold_enabled": false } }'

curl -XPUT -H "Content-Type: application/json" http://localhost:9200/_all/_settings -d '{"index.blocks.read_only_allow_delete": null}'
  

Это настраивает вашу установку ES для правильной работы с Magento 2.

Взято из: https://www.magemonkeys.com/how-to-solve-cluster_block_exception-too_many_requests-12-disk-usage-exceeded-flood-stage-watermark-index-has-read-only-allow-delete-block-in-magento-2/

Комментарии:

1. примечание: это нужно сделать из корня вашего сервера, это помогло мне

Ответ №2:

Предыстория проблемы

Поскольку ES в значительной степени зависит от места на диске для правильной работы (ES хранит индекс в файловой системе), существует несколько пороговых значений водяных знаков на диске для защиты кластера ES, и вы достигли самого высокого порогового значения flood , которое может привести к сбою важных функций в кластере (выделение новых сегментов, индекс и многие другие).

Как устранить проблему

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