代码之家  ›  专栏  ›  技术社区  ›  Stpete111

ElasticSearch无法在Ubuntu 16.04.3上启动-状态=1失败

  •  0
  • Stpete111  · 技术社区  · 7 年前

    这台ubuntu16.04.3机器上的ElasticSearch 6.2.2服务已经正常运行了几个月。我今天重新启动了机器,发现ElasticSearch服务还没有启动。所以我试过了 sudo systemctl start elasticsearch.service . 没有给我任何错误。但我注意到它还没有开始。

    systemctl status elasticsearch 我明白了:

    `● elasticsearch.service - Elasticsearch
       Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: enabled)
      Drop-In: /etc/systemd/system/elasticsearch.service.d
               └─override.conf
       Active: inactive (dead) (Result: exit-code) since Tue 2018-09-18 02:35:58 UTC; 19min ago
         Docs: http://www.elastic.co
      Process: 14147 ExecStart=/usr/share/elasticsearch/bin/elasticsearch -p ${PID_DIR}/elasticsearch.pid --quiet (code=exited, status=1/FAILURE)
     Main PID: 14147 (code=exited, status=1/FAILURE)
    
    Sep 18 02:35:58 elastic-eu-vm-000 systemd[1]: elasticsearch.service: Unit entered failed state.
    Sep 18 02:35:58 elastic-eu-vm-000 systemd[1]: elasticsearch.service: Failed with result 'exit-code'.
    Sep 18 02:35:58 elastic-eu-vm-000 systemd[1]: elasticsearch.service: Service hold-off time over, scheduling restart.
    Sep 18 02:35:58 elastic-eu-vm-000 systemd[1]: Stopped Elasticsearch.
    Sep 18 02:35:58 elastic-eu-vm-000 systemd[1]: elasticsearch.service: Start request repeated too quickly.
    Sep 18 02:35:58 elastic-eu-vm-000 systemd[1]: Failed to start Elasticsearch.
    

    这个解决方案似乎帮助了很多无法在Ubuntu上启动ES服务的人( Can not start elasticsearch as a service in ubuntu 16.04 ),那个被接受的答案,对我没有帮助。

    编辑1-在努力追踪日志文件后,它现在位于@ArnavRay的每个建议的以下url https://file.io/ASnEG4

    3 回复  |  直到 7 年前
        1
  •  1
  •   ArnavRay    7 年前

    日志上唯一的错误与x-pack安全性有关。您是否使用了x-pack的任何功能?下面是一个链接,描述了x-pack许可证过期时发生的情况。 https://www.elastic.co/guide/en/x-pack/current/license-expiration.html

    试着跑步 elasticsearch-plugin remove x-pack

    从中删除所有与x-pack相关的配置弹性搜索.yml重新启动ElasticSearch。

    https://github.com/deviantony/docker-elk/issues/154

    如果你仍然面临问题,你可以尝试以下方法。

    1. 增加上的堆内存jvm.options 在/etc/elasticsearch下/
    2. 使用ls-a并检查是否有其他弹性搜索.yml文件已创建。如果是这样,请将其移除。
    3. 运行这些命令

      echo -e "elasticsearch - memlock unlimited\nstorm - nproc 257597" >> /etc/security/limits.conf ulimit -n 32768 ulimit -u 65536 echo -e "* - nofile 32768\n* - nproc 65536" >> /etc/security/limits.conf

    4. 尝试重新启动系统。这些年来,这让我省去了很多头疼的事:)
        2
  •  1
  •   hamid bayat    7 年前

    这可能是因为两个原因: 第一个elasticsearch进程没有正确停止。

    尝试

    日本

    ps aux | grep弹性搜索

    找出PID和

    杀死-9

    其次,内存没有正确释放。 为了找到答案,请尝试

    自由-m

    有几种方法可以释放内存,但我建议重新启动服务器。

        3
  •  1
  •   ArnavRay    7 年前

    我查了你的日志。x-pack许可证已过期。如果您正在使用x-pack的任何功能,则必须获得新的许可证密钥。如果您不使用x-pack,可以禁用它并重新启动ElasticSearch。您可以将以下行添加到弹性搜索.yml禁用x-pack功能。

    xpack.graph.enabled: false
    xpack.ml.enabled : false
    xpack.monitoring.enabled: false
    xpack.reporting.enabled: false
    xpack.security.enabled: false
    xpack.watcher.enabled: false
    

    根据您的日志,ElasticSearch在无法执行监视程序后立即停止。如果您正在使用任何观察程序,请停止查询并检查ElasticSearch是否启动。这应该能解决问题。