环境准备

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/...

centos6安装elasticsearch6.0的更多相关文章

  1. centos6 安装redis-4.0.9

    从redis官网下载Linux redis4.0.9版本,我下载的redis-4.0.9.tar.gz(目前最新稳定版),下载到/usr/local/src目录,如果没有就mkdir创建一个. 下载链 ...

  2. CentOS6安装Zabbix4.0

    安装依赖包yum install net-snmp-devel libevent-devel libxml2-devel curl-devel libjpeg-devel libpng-devel l ...

  3. Mac环境下 elasticsearch-6.0.1 和 elasticsearch-head 完整安装过程

     安装步骤: 安装java jdk 安装elasticsearch-6.0.1 及中文分词 anslysis-ik-6.0.1 安装elasticsearch-head 下载jdk https://w ...

  4. CentOS6.5安装ElasticSearch6.2.3

    CentOS6.5安装ElasticSearch6.2.3 1.Elastic 需要 Java 8 环境.(安装步骤:http://www.cnblogs.com/hunttown/p/5450463 ...

  5. (转载)CentOS6下 源代码方式安装openERP7.0

    CentOS6下 源代码方式安装openERP7.0 安装背景 :CPU32 bit,CentOS 6.4版本,openERP7.0,linux shell为bash,PostgreSQL9.2 1. ...

  6. Elasticsearch6.0及其head插件安装

    Elasticsearch6.0及其head插件安装 1.下载并解压elasticsearch 2.修改elasticsearch.yml文件 # 集群的名字 cluster.name: my-app ...

  7. (新)elasticsearch6.0版本安装head插件

    ES6.0版本安装head插件 1.1 前言 不知道是我电脑问题还是最近的开源软件都比较**,mysql和elasticsearch新版本变动都比较大. elasticsearch6.0貌似已经不支持 ...

  8. Centos6.5安装Redis3.0备忘记录

    Centos6.5安装Redis3.0 1. 安装C编译环境 首先需要安装编译Redis的C环境,在命令行执行以下命令: [root@itzhouq32 tools] yum install gcc- ...

  9. CentOS6.10安装redis5.0

    1.以安装redis5.0.0为例 下载安装包:http://redis.io 安装非常简单! [root@centos6 ~]#yum install gcc #需要先安装GCC,如果已安装请忽略 ...

随机推荐

  1. C++获取private的变量-偷走private

    private提供了对数据的封装,使得private成员只能被类自身的成员函数以及类的友元访问,其他的函数或者类想要访问private成员只能通过该类所提供的set和get的方法进行访问, 或者返回其 ...

  2. LeetCode题解:(19) Remove Nth Node From End of List

    题目说明 Given a linked list, remove the nth node from the end of list and return its head. For example, ...

  3. JVM内存管理机制

    Java与C++之间有一堆由内存动态分配与垃圾收集技术所围成的“高墙”,墙外面的人想进去,墙里面的人却想出来. —— <深入理解Java虚拟机:JVM高级特性与最佳实践> Java虚拟机在 ...

  4. 栈java实现

    这几天,过得挺充实的,每天都在不停的上课,早上很早就起来去跑步,晚上到图书馆看书.一边紧张的学习,一边在默默的备战软考.最近还接手了一个公司官网的建设.这是我在川信最后的一个完整学期了,每件事我都要认 ...

  5. 执行SCP命令拷贝文件失败

    scp是我最常用的远程文件拷贝工具,今天发现突然不能用了: svan-mac:hive-tools xiean$ scp  -Pxx target/urs-hive-tools-jar-with-de ...

  6. 概率图模型(PGM)综述-by MIT 林达华博士

    声明:本文转载自http://www.sigvc.org/bbs/thread-728-1-1.html,个人感觉是很好的PGM理论综述,高屋建瓴的总结了PGM的主要分支和发展趋势,特收藏于此. “概 ...

  7. CIR,CBS,EBS,PIR,PBS傻傻分不清楚?看这里!—-揭秘令牌桶

    概述 春暖花开的时候,大家都开着汽车外出旅游欣赏美丽的风景,却被堵在高速公路上,你是否为此感到痛苦?但如果有一种机制可以评估高速公路上的车流量.控制车流情况,确保进入高速公路的汽车都能在路上安全畅行, ...

  8. Statement和PreparedStatement之间的区别

    Statement和PreparedStatement之间的区别: 1.PreparedStatement是预编译的,对于批量处理可以大大提高效率. 也叫JDBC存储过程2.使用 Statement ...

  9. 【算法复习】codevs1022 匈牙利算法

    题目描述 Description 有一个N×M的单位方格中,其中有些方格是水塘,其他方格是陆地.如果要用1×2的矩阵区覆盖(覆盖过程不容许有任何部分重叠)这个陆地,那么最多可以覆盖多少陆地面积.   ...

  10. 【Learning】分数规划

    分数规划 ​ 分数规划是一类决策性问题.一般地,题目会要求你针对问题规划一种方案,使得其代价函数最小或最大.其中,代价函数一般是分数形式,且分子分母的构成元素一般呈现一一对应关系. 直接上例题观察:B ...