• Elasticsearch7.4工作笔记_02_【安装过程中的各种问题】


    问题环境,OS版本:CentOS release 6.9 (Final) ;ES版本:elasticsearch-7.4。

    1、max file descriptors

    max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

      每个进程最大同时打开文件数太小,可通过下面2个命令查看当前数量

    ulimit -Hn
    ulimit -Sn

      修改/etc/security/limits.conf文件,增加配置,用户退出后重新登录生效

    *               soft    nofile          65536
    *               hard    nofile          65536

    2、max number of threads

    max number of threads [3818] for user [es] is too low, increase to at least [4096]

      问题同上,最大线程个数太低。

         修改配置文件/etc/security/limits.conf 和 /etc/security/limits.d/90-nproc.conf ,增加配置

    vim /etc/security/limits.conf
    
    * soft nproc 65536
    * hard nproc 65536
    * soft nofile 65536
    * hard nofile 65536
    
    vim /etc/security/limits.d/90-nproc.conf 
    
    soft nproc 4096

      可通过命令查看

    ulimit -Hu
    ulimit -Su

    修改后的文件:

    3、max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

      修改/etc/sysctl.conf文件,增加配置vm.max_map_count=262144

    vi /etc/sysctl.conf

    vm.max_map_count=262144

    sysctl -p

      执行命令sysctl -p生效

     4、Exception in thread "main" java.nio.file.AccessDeniedException: /usr/local/elasticsearch/elasticsearch-6.2.2-1/config/jvm.options

      elasticsearch用户没有该文件夹的权限,执行命令

    chown -R es:es /usr/local/elasticsearch/

    5.OpenJDK 64-Bit Server VM warning 问题

    OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.

    原因是JDK9不再支持UseConcMarkSweepGC,具体情况如下:

    废弃的GC选项已被移除( JEP 214 )。 在 JDK 8( JEP 173 )中已经弃用了一些详细的 GC 选项和选项组合。这些将不会被识别,并将导致 JVM 在启动时中止。要注意的选项如下所示
    -XX:-UseParNewGC -XX:+UseConcMarkSweepGC
    -XX:+UseParNewGC
    -Xincgc
    -XX:+CMSIncrementalMode -XX:+UseConcMarkSweepGC
    -XX:+CMSIncrementalMode -XX:+UseConcMarkSweepGC -XX:-UseParNewGC
    -XX:+UseCMSCompactAtFullCollection
    -XX:+CMSFullGCsBeforeCompaction
    -XX:+UseCMSCollectionPassing
    在 JDK 9 中,concurrent-mark-sweep (iCMS) 的增量模式已被移除,目前的计划是在 JDK 10 中完全删除 CMS。。。
     

    在JVM配置文件中去掉UseConcMarkSweepGC 

    6、后台运行

    最后还有一个小问题,如果你在服务器上安装Elasticsearch,而你想在本地机器上进行开发,这时候,你很可能需要在关闭终端的时候,让Elasticsearch继续保持运行。最简单的方法就是使用nohup。

    先按Ctrl + C,停止当前运行的Elasticsearch,改用下面的命令运行Elasticsearch

    nohup ./bin/elasticsearch&

    这样,你就可以放心地关闭服务器终端,而不用担心Elasticsearch也跟着关闭了。

     7.bootstrap.memory_lock: true导致Elasticsearch启动失败问题

     elasticsearch官网建议生产环境需要设置bootstrap.memory_lock: true

    解决办法如下:

    需要修改
    /etc/security/limits.conf 
    baoshan soft memlock unlimited
    baoshan hard memlock unlimited

    修改:
    /etc/sysctl.conf 
    vm.swappiness=0

    之后重启机器

    参考相关博客:https://www.cnblogs.com/zhi-leaf/p/8484337.html

  • 相关阅读:
    一些技术摘选及随想
    新技术学习方法如何学习一门新编程语言(Lua)?
    什么时候该用ASSERT?
    MFC是否过时?如何学习MFC?
    Windows桌面开发者的必备软件
    Comet技术选择,论Is node.js best for Comet?
    关于C/C++内存管理一些乱讲
    debug
    C语言趣味题目
    CSS之简单的双引号
  • 原文地址:https://www.cnblogs.com/zzming/p/11666596.html
Copyright © 2020-2023  润新知