安装和启动

这里使用docker进行安装的

docker pull elasticsearch

然后使用

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx265m" -d -p 9200:9200 -p 9300:9300 --name ES01 5acf0e8da90b

进行启动(因为需要很大的内存空间,所以把占用的内存空间限制在256m上)


以上是docker下的安装,注意要安装2.6以下的版本,5x以上的版本连接9300需要在yaml里面做配置


正常的安装

1.安装jdk

1.1 执行命令下面命令查看可安装java版本
yum -y list java*
1.2 选择一个java版本进行安装,
yum install -y java-1.8.0-openjdk-devel.x86_64

这里有个地方要注意,要选择 要带有-devel的安装,因为这个安装的是jdk,而那个不带-devel的安装完了其实是jre。

1.3 输入java -version查看已安装的jdk版本,当出现如下输出表示安装成功。
1.4 jdk 的安装目录
/usr/lib/jvm
1.5 配置环境变量,编辑/etc/profile文件:
vi /etc/profile
1.6 在文件尾部添加如下配置:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el6_10.x86_64    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar     export PATH=$PATH:$JAVA_HOME/bin
1.7 :wq退出vim编辑器,然后使用命令更新配置
source /etc/profile

2. 安装ES

2.1 依次执行命令

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.2.zip
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.2.zip.sha512
shasum -a 512 -c elasticsearch-6.3.2.zip.sha512
unzip elasticsearch-6.3.2.zip
cd elasticsearch-6.3.2/
遇到错误1
-bash: shasum: command not found

    解决方案:在CentOS上,“shasum”被称为“sha1sum”,运行下面命令修复此问题

ln -s /usr/bin/sha1sum /usr/bin/shasum
遇到错误2
sha1sum: invalid option -- 'a'

    解决方案:

yum install -y perl-Digest-SHA
遇到报错3
OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N      OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c5330000, 986513408, 0) failed; error='Cannot allocate memory' (errno=12)

    解决方案:调小启动内存,如果512m还是不行的话,就得要再往下调了

[root@iZwz9ahuk6xeihs1n3gqy5Z elasticsearch-6.3.2]# vi config/jvm.options        
#-Xms2g        
#-Xmx2g        
-Xms512m        
-Xmx512m
遇到报错4:

无法以root权限启动

org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root

    解决方案:创建一个非root用户并赋予目录该用户权限,再启动

#root身份 groupadd es       
useradd es -g es -p es        
chown es:es ${elasticsearch_HOME}/ #存放elasticsearch的目录 
su - es #切换到es用户下        
${elasticsearch_HOME}/bin/elasticsearch #启动elasticsearch
遇到报错5
ERROR: [4] bootstrap checks failed
      [1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]
[2]: max number of threads [1024] for user [e] is too low, increase to at least [4096]
      [3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
      [4]: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk

    解决方案:

    【5.1】【5.2】

#root身份
vi /etc/security/limits.conf
#文件末尾添加内容(*也是要加上去)
* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 4096

    【5.3】

#root身份
sysctl -w vm.max_map_count=262144
vim /etc/sysctl.conf #让配置永久生效
#文件末尾添加内容
vm.max_map_count=262144

  【5.4】

    Centos6不支持SecComp,而ES6默认bootstrap.system_call_filter为true

vim config/elasticsearch.yml 

      禁用:在elasticsearch.yml中配置bootstrap.system_call_filter为false,注意要在Memory下面:       

#注意在":"后面需要空格
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
遇到报错6

还有一些其他的错误,比如防火墙没开放端口

遇到报错7

OpenJDK 64-Bit

问题二:OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N

报错原因:某些软件包启动的时候默认启用 -XX:+AssumeMP导致

解决方案:在jvm.optipons配置文件添加 -XX:-AssumeMP

遇到报错8

启动失败,检查没有通过,报错

[2018-05-18T17:44:59,658][INFO ][o.e.b.BootstrapChecks    ] [gFOuNlS] bound or publishing to a non-loopback address, enforcing bootstrap checks
ERROR: [2] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536] [2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

编辑 /etc/security/limits.conf,追加以下内容;
* soft nofile 65536
* hard nofile 65536
此文件修改后需要重新登录用户,才会生效
  • soft nofile 65536
  • hard nofile 65536

    此文件修改后需要重新登录用户,才会生效
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

编辑 /etc/sysctl.conf,追加以下内容:
vm.max_map_count=655360
保存后,执行:
sysctl -p

重启成功

编辑 /etc/sysctl.conf,追加以下内容:

vm.max_map_count=655360

保存后,执行:

sysctl -p

在此感谢两位博主

https://blog.csdn.net/feng12345zi/article/details/80367907

https://www.cnblogs.com/jj81/p/9404576.html

elasticSearch 起步(CentOS7 success)的更多相关文章

  1. 爬虫数据存储——安装docker和ElasticSearch(基于Centos7)

    爬虫数据存储--安装docker和ElasticSearch(基于Centos7) 先决条件 操作系统要求 要安装Docker Engine-Community,您需要一个CentOS 7的维护版本. ...

  2. 分布式搜索引擎Elasticsearch在CentOS7中的安装

    1. 概述 随着企业业务量的不断增大,业务数据随之增加,传统的基于关系型数据库的搜索已经不能满足需要. 在关系型数据库中搜索,只能支持简单的关键字搜索,做不到分词和统计的功能,而且当单表数据量到达上百 ...

  3. Elasticsearch——起步

    1.下载 地址:https://www.elastic.co/downloads/elasticsearch 2.解压 unzip elasticsearch-1.7.0.zip 3.启动 mv el ...

  4. elasticsearch起步

    elasticsearch教程 elastic入门教程 阮一峰的elasticsearch教程 elasticsearch官网 kibana用户手册 elasticsearch安装步骤 参考:http ...

  5. Elasticsearch 在CentOs7 环境中开机启动

    由于园区的电源不是很稳定,经常会断电,断电之后几十台服务器,启动服务都要人肉启动,真是非常蠢的行为: 开机自启动服务就很有必要,之前设置过,后来没有成功就不管了,断电好几次之后,意识到这个问题就很严重 ...

  6. centos7安装Elasticsearch及Es-head插件详细教程(图文)

    懒惰了很久,今天来写一下Elasticsearch在centos7上安装教程以及安装过程中可能出现的报错解决方式,有不对的地方,烦请各位看官多多指教! 一.ES安装 1.环境检查 确保有java环境, ...

  7. CentOS7.5搭建ELK6.2.4集群及插件安装

    一 简介 Elasticsearch是一个高度可扩展的开源全文搜索和分析引擎.它允许您快速,近实时地存储,搜索和分析大量数据.它通常用作支持具有复杂搜索功能和需求的应用程序的底层引擎/技术. 下载地址 ...

  8. 第一章·ELKstack介绍及Elasticsearch部署

    一.ELKstack课程大纲  二.ELKstack简介 什么是ELK? 通俗来讲,ELK是由Elasticsearch.Logstash.Kibana 三个开源软件的组成的一个组合体,这三个软件当 ...

  9. Centos7安装elasticsearch6.3及ik分词器,设置开机自启

    参考Elasticsearch 在CentOs7 环境中开机启动 建议虚拟机的内存大小为4G 1. 新建一个用户john 出于安全考虑,elasticsearch默认不允许以root账号运行. 创建用 ...

随机推荐

  1. Redis基础详解

    1. Redis是什么.特点.优势 Redis是一个开源的使用C语言编写.开源.支持网络.可基于内存亦可持久化的日志型.高性能的Key-Value数据库,并提供多种语言的API. 它通常被称为 数据结 ...

  2. Netty中CompositeByteBuf的理解以及读写操作

    转载请注明出处 https://www.cnblogs.com/majianming/articles/the_composite_byte_buf_read_and_wite_operation_o ...

  3. [转]从实例谈OOP、工厂模式和重构

    有了翅膀才能飞,欠缺灵活的代码就象冻坏了翅膀的鸟儿.不能飞翔,就少了几许灵动的气韵.我们需要给代码带去温暖的阳光,让僵冷的翅膀重新飞起来.结合实例,通过应用OOP.设计模式和重构,你会看到代码是怎样一 ...

  4. Python学习笔记四:主要图表

    图表部分,很多要记忆的.以下来自于培训材料的记录. 但我个人觉得更重要的是要根据业务特点确定用什么样的图表,然后再去查具体的参数,光记住参数意义不是很大. import numpy as np imp ...

  5. Mysql快速入门(二)

    多表关联查询 JOIN 按照功能大致分为如下三类: CROSS JOIN(交叉连接) INNER JOIN(内连接或等值连接). OUTER JOIN(外连接) 交叉连接 交叉连接的关键字:CROSS ...

  6. php 时间 日期

    获取月初与月末 /** * 获取当前月初与月末时间 * * */ $month =8; $year = 2019; $startDay = $year . '-' . $month . '-1'; $ ...

  7. http协议的POST传数据

    PostRequest使用StreamWriter对象写入请求流,不需要使用HttpUtility.UrlEncode显示转码,而下面的需要显示转码,还需要将参数转为字节码 蛋疼…………. publi ...

  8. smarty文章字符截取

    {%$data.dealer_info.address|replace:' ':''|cutstr:58%} cutstr:58

  9. 诡异的Integer

    先看下面的这个代码,为什么同样的都是赋值,却得不到同样的结果,也没有超出int的范围啊?这是为什么? package ppt_test; public class StrangeIntegerBeha ...

  10. BZOJ3531 SDOI2014 旅行 - 树链剖分,主席树

    题意:给定一棵树,树上每个点有权值和类型.支持:修改某个点的类型:修改某个点的权值:询问某条链上某个类型的点的和/最大值.点数/类型数/询问数<=100000. 分析: 树链剖分,对每个类型的点 ...