• ElasticSearch 创建索引超时(ReadTimeoutError)


    报错现象

    在 Python 中调用 client.indices.create 来创建 ElasticSearch 索引时,报如下错误:

    elastic_transport.transport - INFO - PUT http://127.0.0.1:9200/document_page?timeout=60s [status:N/A duration:10.011s]
    elastic_transport.node_pool - WARNING - Node <Urllib3HttpNode(http://127.0.0.1:9200)> has failed for 1 times in a row, putting on 1 second timeout
    elastic_transport.transport - WARNING - Retrying request after failure (attempt 0 of 3)
    Traceback (most recent call last):
      File "C:\Users\15797\.conda\envs\ppkg\lib\site-packages\elastic_transport\_transport.py", line 329, in perform_request
        meta, raw_data = node.perform_request(
      File "C:\Users\15797\.conda\envs\ppkg\lib\site-packages\elastic_transport\_node\_http_urllib3.py", line 199, in perform_request
        raise err from None
    elastic_transport.ConnectionTimeout: Connection timeout caused by: ReadTimeoutError(HTTPConnectionPool(host='127.0.0.1', port=9200): Read timed out. (read timeout=10.0))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    问题分析

    在查阅网络资料时,一开始以为是字面意思上的连接超时问题,但调大 timeout 参数也一样报错,而且之前用相同方法创建类似索引时并未出现该问题。

    最后,受博文(https://blog.csdn.net/ckq707718837/article/details/136215814)的启发,查看 ElasticSearch 的日志(如下所示),才发现问题所在:电脑磁盘快满了,ES 自动把索引的状态由黄转红,变成只读状态,无法写入

    elasticsearch.log(节选内容)

    current.health="RED" message="Cluster health status changed from [YELLOW] to [RED] (reason: [reconcile-desired-balance])." previous.health="YELLOW" reason="reconcile-desired-balance"
    
    flood stage disk watermark [95%] exceeded on [D:\Softwares\elasticsearch-8.6.0\data] free: 5.8gb[2.1%], all indices on this node will be marked read-only
    
    • 1
    • 2
    • 3

    问题解决(两种方法)

    • (推荐)清理磁盘,释放更多空余空间,再重启 ElasticSearch;
    • 调整 ElasticSearch 配置,可参考博文(https://blog.csdn.net/liaomingwu/article/details/115425880)
  • 相关阅读:
    【Python百日进阶-WEB开发】Day173 - Django案例:05用户注册业务逻辑
    数据治理-数据仓库和商务智能-部分内容
    3BHE003855R0001 UNS2882A 用于嵌入式/工业用途的人工智能盒
    labview 表格
    【CodeForces】CF1700D River Locks
    css样式重置看这篇就够了
    ElasticSearch集群搭建
    【华为机试真题 JAVA】最长元音子串的长度-100
    用vue实现接口封装案例
    使用动态参数构建CUDA图
  • 原文地址:https://blog.csdn.net/qq_37430422/article/details/138038390