• 首先下载

elasticsearch包下载地址:点击跳转官网

  • 上传到服务器并且解压.

  • 修改配置文件 elasticsearch.yml (其他根据需要配置)

#集群名称
cluster.name: myes
#节点名字
node.name: myes01
#数据位置
path.data: /usr/java/elk/elasticsearch-5.5.1/espath/data
#日志位置
path.logs: /usr/java/elk/elasticsearch-5.5.1/espath/logs
#本机IP
network.host: 192.168.80.123
#可以选取的节点(如果是多台就["lijie","lijie1","lijie2"])但是必须是基数个
discovery.zen.ping.unicast.hosts: ["lijie"]

#这两个配置是支持跨域访问用的
http.cors.allow-origin: "/.*/"
http.cors.enabled: true
  • 启动es
/usr/java/elk/elasticsearch-5.5.1/bin/elasticsearch -d

报错:

Elasticsearch requires at least Java 8 but your Java version from /usr/java/jdk1.7.0_79/bin/java does not meet this requirement

解决:
最低只支持JDK1.8,换成JDK8就行

  • 启动失败,查看日志,es和solr一样不允许用root用户启动,切换一个用户即可:
[WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [myes01] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:127) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:114) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.cli.Command.main(Command.java:88) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) ~[elasticsearch-5.5.1.jar:5.5.1]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
    at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:106) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:194) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:351) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:123) ~[elasticsearch-5.5.1.jar:5.5.1]
  • 启动失败,查看日志:
java.lang.UnsupportedOperationException: seccomp unavailable: requires kernel 3.5+ with CONfig_SECCOMP and CONfig_SECCOMP_FILTER compiled in
    at org.elasticsearch.bootstrap.SystemCallFilter.linuxImpl(SystemCallFilter.java:350) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.SystemCallFilter.init(SystemCallFilter.java:638) ~[elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.JNANatives.tryInstallSystemCallFilter(JNANatives.java:245) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Natives.tryInstallSystemCallFilter(Natives.java:113) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:111) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:194) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:351) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:123) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:114) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.cli.Command.main(Command.java:88) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) [elasticsearch-5.5.1.jar:5.5.1]
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) [elasticsearch-5.5.1.jar:5.5.1]

查看内核版本:

[root@lijie ~]# cat /proc/version
Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013

问题:
linux的内核版本过低

  • 升级linux内核

首先导入publicKey:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

然后执行

rpm -Uvh http://www.elrepo.org/elrepo-release-6-8.el6.elrepo.noarch.rpm

安装kmod-r8168

yum install -y kmod-r8168

然后:

yum --enablerepo=elrepo-kernel install kernel-lt -y

然后:

vi /etc/grub.conf
#将第一个default的值改为0  -> default=0

然后重启:

reboot

重启后再查看内核版本:

[root@lijie ~]# cat /proc/version
Linux version 3.10.107-1.el6.elrepo.x86_64 (mockbuild@Build64R6) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC) ) #1 SMP Tue Jun 27 10:57:54 EDT 2017

重新启动,还是报错,查看日志文件:

错误内容如下:

bootstrap checks Failed
[1]: max file descriptors [4096] for elasticsearch process is too low,increase to at least [65536]
[2]: max number of threads [1024] for user [hadoop] is too low,increase to at least [2048]
[3]: max virtual memory areas vm.max_map_count [65530] is too low,increase to at least [262144]
  • 三个错误的解决方案:

其中[1]: max file descriptors [4096] for elasticsearch process is too low,increase to at least [65536]
解决方法:

#用root用户执行
vi /etc/security/limits.conf 

#添加
* soft    nofile  65536
* hard    nofile  131072

其中[2]: max number of threads [1024] for user [hadoop] is too low,increase to at least [2048]
解决方法:

#用root用户执行
vi /etc/security/limits.d/90-nproc.conf 

#修改
*          soft    nproc     10242048

其中[3]: max virtual memory areas vm.max_map_count [65530] is too low,increase to at least [262144]
解决方法:

#用root用户执行
vi /etc/sysctl.conf 

#添加一条配置:
vm.max_map_count=262144

#然后执行:
sysctl -p

解决上面的错误之后重启elasticsearch
/usr/java/elk/elasticsearch-5.5.1/bin/elasticsearch -d

注意事项: 用root用户做完上面的修改后再切回普通用户,这样上面的配置才能生效,不然还是会报错

查看日志:

[2017-08-10T13:38:32,471][INFO ][o.e.t.TransportService ] [myes01] publish_address {192.168.80.123:9300},bound_addresses {192.168.80.123:9300}
[2017-08-10T13:38:32,574][INFO ][o.e.b.BootstrapChecks ] [myes01] bound or publishing to a non-loopback or non-link-local address,enforcing bootstrap checks
[2017-08-10T13:38:33,245][WARN ][o.e.m.j.JvmGcMonitorService] [myes01] [gc][2] overhead,spent [625ms] collecting in the last [1s]
[2017-08-10T13:38:36,327][INFO ][o.e.c.s.ClusterService ] [myes01] new_master {myes01}{4B84juCUSKqRiddNlMOuCw}{sBOoIcHPTZmCt5O3olccrg}{192.168.80.123}{192.168.80.123:9300},reason: zen-disco-elected-as-master ([0] nodes joined)
[2017-08-10T13:38:36,444][INFO ][o.e.g.GatewayService ] [myes01] recovered [0] indices into cluster_state
[2017-08-10T13:38:36,446][INFO ][o.e.h.n.Netty4HttpServerTransport] [myes01] publish_address {192.168.80.123:9200},bound_addresses {192.168.80.123:9200}
[2017-08-10T13:38:36,446][INFO ][o.e.n.Node ] [myes01] started

终于启动成功!

  • 查看http://192.168.80.123:9200/

返回:

{
  "name" : "myes01","cluster_name" : "myes","cluster_uuid" : "N74wJcOMTAGkyANd9_qpvA","version" : { "number" : "5.5.1","build_hash" : "19c13d0","build_date" : "2017-07-18T20:44:24.823Z","build_snapshot" : false,"lucene_version" : "6.6.0" },"tagline" : "You KNow,for Search" }

安装特别简单,就是新版本的安装可能会遇到上述的问题.

安装sql插件(详见 :https://github.com/NLPchina/elasticsearch-sql/):

[hadoop@lijie elasticsearch-5.5.1]$ ./bin/elasticsearch-plugin install https://github.com/NLPchina/elasticsearch-sql/releases/download/5.5.1.0/elasticsearch-sql-5.5.1.0.zip

[hadoop@lijie site-server]$ wget https://github.com/NLPchina/elasticsearch-sql/releases/download/5.4.1.0/es-sql-site-standalone.zip

[hadoop@lijie site-server]$ unzip es-sql-site-standalone.zip

下载nodejs(http://nodejs.cn/download/):

上传解压:
[root@lijie nodejs]# xz -d node-v8.7.0-linux-x64.tar.xz
[root@lijie nodejs]# tar -xvf node-v8.7.0-linux-x64.tar 

然后创建软链接:
[root@lijie node-v8.7.0-linux-x64]# ln -s /usr/nodejs/node-v8.7.0-linux-x64/bin/npm /usr/local/bin/ 


[root@lijie node-v8.7.0-linux-x64]# ln -s /usr/nodejs/node-v8.7.0-linux-x64/bin/node /usr/local/bin/ 

[root@lijie node-v8.7.0-linux-x64]# node -v
v8.7.0

在site-server目录下:

[hadoop@lijie site-server]$ npm install express --save

[hadoop@lijie site-server]$ node node-server.js

最后重启es并且查询:

#访问
http://192.168.80.123:9200/_sql?sql=select * from school where score > 90

CentOS6.5安装elasticsearch-5.5.1以及elasticsearch-sql插件安装的更多相关文章

  1. Elasticsearch属性单词常用解析说明

    这篇文章主要介绍了Elasticsearch属性单词常用解析说明,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下

  2. Java操作Elasticsearch rest-high-level-client 的基本使用

    这篇文章主要介绍了Java操作Elasticsearch rest-high-level-client 的基本使用,本篇主要讲解一下 rest-high-level-client 去操作 Elasticsearch的方法,结合实例代码给大家详细讲解,需要的朋友可以参考下

  3. Elasticsearch插件及nodejs的安装配置

    这篇文章主要为大家介绍了Elasticsearch插件及nodejs的安装配置,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  4. SpringBoot+Elasticsearch实现数据搜索的方法详解

    Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。本文将利用SpringBoot整合Elasticsearch实现海量级数据搜索,需要的可以参考一下

  5. PHP中使用ElasticSearch最新实例讲解

    这篇文章主要介绍了PHP中使用ElasticSearch最新实例讲解,这篇文章的教程是比较详细,有需要的同学可以研究下

  6. Laravel使用scout集成elasticsearch做全文搜索的实现方法

    这篇文章主要介绍了Laravel使用scout集成elasticsearch做全文搜索的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  7. SpringBoot 整合 Elasticsearch 实现海量级数据搜索功能

    这篇文章主要介绍了SpringBoot 整合 Elasticsearch 实现海量级数据搜索,本文主要围绕 SpringBoot 整合 ElasticSearch 接受数据的插入和搜索使用技巧,在实际的使用过程中,版本号尤其的重要,不同版本的 es,对应的 api 是不一样,需要的朋友可以参考下

  8. Elasticsearch映射字段数据类型及管理

    这篇文章主要介绍了Elasticsearch映射字段数据类型及管理的讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  9. Elasticsearch之倒排索引及索引操作

    这篇文章主要为大家介绍了Elasticsearch之倒排索引及索引操作示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. Java注解之Elasticsearch的案例详解

    学会了技术就要使用,否则很容易忘记,因为自然界压根就不存在什么代码、变量之类的玩意,这都是一些和生活常识格格不入的东西。这篇文章主要介绍了Java中Elasticsearch的案例,感兴趣的可以了解一下

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部