zoukankan      html  css  js  c++  java
  • centos6安装elasticsearch6.0

    环境准备

    1台centos6操作系统主机,关闭selinux及iptables
    官方下载elasticsearch6.0软件包:https://artifacts.elastic.co/...
    官方下载java1.8软件包:http://www.oracle.com/technet...

    系统配置

    创建elasticsearch账户用于启动elasticsearch服务
    [root@elasticsearch ~]# useradd elasticsearch
    
    修改系统ulimit并重启
    1.  
      [root@elasticsearch ~]# cat /etc/security/limits.d/90-nproc.conf
    2.  
       
    3.  
      # Default limit for number of user's processes to prevent
    4.  
      # accidental fork bombs.
    5.  
      # See rhbz #432903 for reasoning.
    6.  
       
    7.  
      * soft nproc 1024
    8.  
      root soft nproc unlimited
    9.  
      elasticsearch soft nofile 655360
    10.  
      elasticsearch hard nofile 655360
    11.  
      elasticsearch soft nproc 655360
    12.  
      elasticsearch hard nproc 655360
    修改内核参数配置
    1.  
      [root@elasticsearch ~]# echo 'vm.max_map_count = 655360' >> /etc/sysctl.conf
    2.  
      [root@elasticsearch ~]# sysctl -p
    3.  
      net.ipv4.ip_forward = 0
    4.  
      net.ipv4.conf.default.rp_filter = 1
    5.  
      net.ipv4.conf.default.accept_source_route = 0
    6.  
      kernel.sysrq = 0
    7.  
      kernel.core_uses_pid = 1
    8.  
      net.ipv4.tcp_syncookies = 1
    9.  
      error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
    10.  
      error: "net.bridge.bridge-nf-call-iptables" is an unknown key
    11.  
      error: "net.bridge.bridge-nf-call-arptables" is an unknown key
    12.  
      kernel.msgmnb = 65536
    13.  
      kernel.msgmax = 65536
    14.  
      kernel.shmmax = 68719476736
    15.  
      kernel.shmall = 4294967296
    16.  
      vm.max_map_count = 655360
    17.  
      [root@elasticsearch ~]#
    安装java并配置环境变量,jdk版本以实际下载的版本为准
    1.  
      [elasticsearch@elasticsearch software]$ ls
    2.  
      elasticsearch-6.0.0.tar.gz jdk-8u121-linux-x64.tar.gz x-pack-6.0.0.zip
    3.  
      [elasticsearch@elasticsearch software]$ pwd
    4.  
      /home/elasticsearch/software
    5.  
      [elasticsearch@elasticsearch software]$ tar -xf jdk-8u121-linux-x64.tar.gz
    6.  
      [elasticsearch@elasticsearch software]$ ls
    7.  
      elasticsearch-6.0.0.tar.gz jdk1.8.0_121 jdk-8u121-linux-x64.tar.gz x-pack-6.0.0.zip
    8.  
      [elasticsearch@elasticsearch software]$ cat ~/.bashrc
    9.  
       
    10.  
      # .bashrc
    11.  
       
    12.  
      # Source global definitions
    13.  
      if [ -f /etc/bashrc ]; then
    14.  
      . /etc/bashrc
    15.  
      fi
    16.  
       
    17.  
      # User specific aliases and functions
    18.  
       
    19.  
      JAVA_HOME='/home/elasticsearch/software/jdk1.8.0_121'
    20.  
      JRE_HOME="$JAVA_HOME/jre"
    21.  
      CLASSPATH=".:$JAVA_HOME/lib/:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/tools.jar"
    22.  
      PATH="$JAVA_HOME/bin:$JRE_HOME/bin:$PATH"
    23.  
      export JAVA_HOME JRE_HOME PATH CLASSPATH
    24.  
       
    25.  
      [elasticsearch@elasticsearch software]$ source ~/.bashrc
    26.  
      [elasticsearch@elasticsearch software]$ java -version
    27.  
      java version "1.8.0_121"
    28.  
      Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
    29.  
      Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
    30.  
      [elasticsearch@elasticsearch software]$

    安装elasticsearch

    安装相关软件包
    1.  
      [elasticsearch@elasticsearch software]$ tar -xf elasticsearch-6.0.0.tar.gz
    2.  
      [elasticsearch@elasticsearch software]$ ls
    3.  
      elasticsearch-6.0.0 elasticsearch-6.0.0.tar.gz jdk1.8.0_121 jdk-8u121-linux-x64.tar.gz x-pack-6.0.0.zip
    4.  
      [elasticsearch@elasticsearch software]$ cd elasticsearch-6.0.0
    5.  
      [elasticsearch@elasticsearch elasticsearch-6.0.0]$ ls
    6.  
      bin config lib LICENSE.txt modules NOTICE.txt plugins README.textile
    7.  
      [elasticsearch@elasticsearch elasticsearch-6.0.0]$ echo 'network.host: 0.0.0.0' >> config/elasticsearch.yml
    8.  
      [elasticsearch@elasticsearch elasticsearch-6.0.0]$ echo 'bootstrap.system_call_filter: false' >> config/elasticsearch.yml
    9.  
      [elasticsearch@elasticsearch elasticsearch-6.0.0]$ tail config/elasticsearch.yml
    10.  
      # For more information, consult the gateway module documentation.
    11.  
      #
    12.  
      # ---------------------------------- Various -----------------------------------
    13.  
      #
    14.  
      # Require explicit names when deleting indices:
    15.  
      #
    16.  
      #action.destructive_requires_name: true
    17.  
      network.host: 0.0.0.0
    18.  
      bootstrap.system_call_filter: false
    19.  
      [elasticsearch@elasticsearch elasticsearch-6.0.0]$
    启动服务
    1.  
      [elasticsearch@elasticsearch elasticsearch-6.0.0]$ ./bin/elasticsearch -d
    2.  
      [elasticsearch@elasticsearch elasticsearch-6.0.0]$ ps -ef | grep elastic
    3.  
      503 1583 1 99 18:41 pts/0 00:00:13 /home/elasticsearch/software/jdk1.8.0_121/bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+AlwaysPreTouch -server -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -XX:-OmitStackTraceInFastThrow -Dio.netty.noUnsafe=true -Dio.netty.noKeySetOptimization=true -Dio.netty.recycler.maxCapacityPerThread=0 -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -XX:+HeapDumpOnOutOfMemoryError -Des.path.home=/home/elasticsearch/software/elasticsearch-6.0.0 -Des.path.conf=/home/elasticsearch/software/elasticsearch-6.0.0/config -cp /home/elasticsearch/software/elasticsearch-6.0.0/lib/* org.elasticsearch.bootstrap.Elasticsearch -d
    4.  
      503 1626 1532 0 18:41 pts/0 00:00:00 grep elastic
    5.  
      [elasticsearch@elasticsearch elasticsearch-6.0.0]$
    6.  
       
    查看集群状态信息
    1.  
      [elasticsearch@elasticsearch elasticsearch-6.0.0]$ curl 'http://localhost:9200/_cat/health?v'
    2.  
      epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
    3.  
      1515581011 18:43:31 elasticsearch green 1 1 0 0 0 0 0 0 - 100.0%

    常见报错

    disable system call filters at your own risk
    [2018-01-10T18:06:35,482][WARN ][o.e.b.BootstrapChecks    ] [fzP4t-4] system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
    

    添加 bootstrap.system_call_filter: false 至ES_HOME/config/elasticsearch.yml即可

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

    修改系统ulimit并重启即可,详细配置如下

    1.  
      [root@elasticsearch ~]# cat /etc/security/limits.d/90-nproc.conf
    2.  
       
    3.  
      # Default limit for number of user's processes to prevent
    4.  
      # accidental fork bombs.
    5.  
      # See rhbz #432903 for reasoning.
    6.  
       
    7.  
      * soft nproc 1024
    8.  
      root soft nproc unlimited
    9.  
      elasticsearch soft nofile 655360
    10.  
      elasticsearch hard nofile 655360
    11.  
      elasticsearch soft nproc 655360
    12.  
      elasticsearch hard nproc 655360
    13.  
       
    14.  
      [root@elasticsearch ~]# reboot
    vm.max_map_count [65530] is too low
    max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
    

    修改内核参数配置

    1.  
      [root@elasticsearch ~]# echo 'vm.max_map_count = 655360' >> /etc/sysctl.conf
    2.  
      [root@elasticsearch ~]# sysctl -p
    3.  
      net.ipv4.ip_forward = 0
    4.  
      net.ipv4.conf.default.rp_filter = 1
    5.  
      net.ipv4.conf.default.accept_source_route = 0
    6.  
      kernel.sysrq = 0
    7.  
      kernel.core_uses_pid = 1
    8.  
      net.ipv4.tcp_syncookies = 1
    9.  
      error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
    10.  
      error: "net.bridge.bridge-nf-call-iptables" is an unknown key
    11.  
      error: "net.bridge.bridge-nf-call-arptables" is an unknown key
    12.  
      kernel.msgmnb = 65536
    13.  
      kernel.msgmax = 65536
    14.  
      kernel.shmmax = 68719476736
    15.  
      kernel.shmall = 4294967296
    16.  
      vm.max_map_count = 655360
    17.  
      [root@elasticsearch ~]#

    参考文档

    elasticsearch官方文档:https://www.elastic.co/guide/...

  • 相关阅读:
    python 注释
    python元祖
    浅谈单片机应用程序架构----本质是定时调用
    原子哥的STM32视频,我发现他们都看不懂原子哥里面按键扫描程序
    指针函数与函数指针的区别
    基于不带字库的图形LCD模块汉字显示解决方案
    GB2312编码
    C语言可变参简介
    kEIL5环境下移置STM32库文件
    nodejs表单验证
  • 原文地址:https://www.cnblogs.com/ThinkVenus/p/9670659.html
Copyright © 2011-2022 走看看