Lorsque j'essaie de stocker quoi que ce soit dans elasticsearch, une erreur indique que:
TransportError(403, u'cluster_block_exception', u'blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];')
J'ai déjà inséré environ 200 millions de documents dans mon index. Mais je ne sais pas pourquoi cette erreur est en train de se passer ... J'ai essayé:
curl -u elastic:changeme -XPUT 'localhost:9200/_cluster/settings' -H 'Content-Type: application/json' -d '{"persistent":{"cluster.blocks.read_only":false}}'
Comme mentionné ici: ElasticSearch est passé en mode "lecture seule", le noeud ne peut pas être modifié
Et le résultat est:
{"acknowledged":true,"persistent":{"cluster":{"blocks":{"read_only":"false"}}},"transient":{}}
Mais rien n'a changé. que devrais-je faire?
Essayez GET yourindex/_settings
, cela affichera vos paramètres d'index. Si read_only_allow_delete
est true
, essayez alors:
PUT /<yourindex>/_settings
{
"index.blocks.read_only_allow_delete": null
}
J'ai résolu mon problème.
référez-vous à es config guide pour plus de détails.
Le mois dernier, face au même problème, vous pouvez essayer ce code sur votre Kibana Dev Tools.
curl -XPUT -H "Content-Type: application/json" http://localhost:9200/_all/_settings -d '{"index.blocks.read_only_allow_delete": null}'
J'espère que ça aide