借鉴网上资料并实施验证结果

elasticsearch6.6安装

安装包下载路径

https://www.elastic.co/downloads/elasticsearch

本文使用安装包

elasticsearch-6.6.0.tar.gz

系统

Centos 6

安装

解压路径

/opt/elasticsearch-6.6.0

jdk1.8(原系统很多项目是用的jdk1.7的,保持不变,新源码装jdk1.8至目录/opt/jdk1.8)

一.修改es的jdk环境变量(es6.x需要jdk1.8版本)

vim ./bin/elasticsearch-env

添加并修改如下:

JAVA_HOME_1="/opt/jdk1.8"

并修改原JAVA_HOME为JAVA_HOME_1

如下图:

二.修改初始分配jvm内存大小

vim ./config/jvm.options
-Xms512m
-Xmx512m

三.修改es配置文件

vim ./config/elasticsearch.yml

cluster.name: test
node.name: test-
path.data: /opt/elasticsearch-6.6./data
path.logs: /opt/elasticsearch-6.6./logs
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
network.host: 0.0.0.0
http.port: #启用http配置
http.cors.enabled: true
http.cors.allow-origin: "*"

部分重要配置文件说明:

1.cluster.name:test

配置elasticsearch的集群名称,elasticsearch会自动发现在同一网段下的集群名为test的主机,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。生产环境时建议更改。

2.node.name: test-1

节点名,生产环境中建议更改以能方便的指定集群中的节点对应的机器

3.path.data: /opt/elasticsearch-6.6.0/data

设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开。

 四.权限与启动,es6.x不允许root用户启动es(启动问题及解决见文章末)

useradd elsearch
passwd elsearch
chown -R elsearch.elsearch elasticsearch-6.6.
su elsearch
#测试登陆es,如果后台报错解决办法在文末
./bin/elasticsearch

登陆浏览器测试,没问题再退出程序,继续下一步

五.安装插件head

1.nodejs安装  (由于head插件本质上还是一个nodejs的工程,因此需要安装node,使用npm来安装依赖的包)

官网下载地址: https://nodejs.org/en/download/

本次使用的源码包是:node-v8.9.0-linux-x64.tar.gz (最新已经更新到v10版本了,为了防止一些版本兼容问题,我还是按照网上博客版本来的)

#解压并重命名路径

/opt/node

#本文也没有通过修改环境变量的方式,直接通过软链接来使用命令

ln -s /opt/node/bin/node /usr/bin/node
ln -s /opt/node/bin/npm /usr/bin/npm

#设定nodejs安装软件的代理服务器

npm config set registry https://registry.npm.taobao.org

#执行npm,安装grunt (grunt是基于Node.js的项目构建工具,可以进行打包压缩、测试、执行等等工作,elasticsearch-head插件就是通过grunt启动的)

npm install -g grunt
npm install -g grunt-cli

#创建 grunt软链接

ln -s /opt/node/bin/grunt /usr/bin/grunt

2.phantomjs安装

#官网下载地址

https://github.com/Medium/phantomjs/releases/download/v2.1.1/phantomjs-2.1.1-linux-x86_64.tar.bz2

#解压并重命名路径

/opt/phantomjs

#安装依赖

yum -y install wget fontconfig

#创建phantomjs软链接

ln -s /opt/phantomjs/bin/phantomjs /usr/bin/

#测试

[root@danny phantomjs]# phantomjs
phantomjs>

3.安装head

下载路径

https://github.com/mobz/elasticsearch-hea

#安装unzip解压工具(如果没有unzip,就需要安装这个)

yum install -y unzip

#解压文件到 head

unzip elasticsearch-head-master.zip

#进入head的目录

cd elasticsearch-head-master/

#安装一下这个bzip2 ,如果没有,在编译head,会报错

yum install -y bzip2

#更换npm源

npm install -g cnpm --registry=https://registry.npm.taobao.org

#安装(进入 elasticsearch-head-master)的目录,执行安装命令

npm install

注意:此时可能会报错如下:

#执行以下安装命令即可

npm -g install phantomjs-prebuilt@2.1. --ignore-script

#配置head,默认端口号是9100,此处改一下测试

vim Gruntfile.js
connect: {
server: {
options: {
hostname:'0.0.0.0', //此处是添加段
port: ,
base: '.',
keepalive: true
}
}
}

#后台启动head服务

grunt server &

#或者使用官网启动方式

npm run start &

如图

备注:网页验证需要es启用http配置,如上config/elasticsearch.yml添加的http配置

#重启es

[root@danny elasticsearch-6.6.]# ./bin/elasticsearch -d

测试

es访问测试

head访问测试

感谢:https://blog.csdn.net/yelllowcong/article/details/78787012

六.插件ik分词器的安装

1.下载地址 https://github.com/medcl/elasticsearch-analysis-ik/releases

注:分词器版本一定要与ES版本保持一致

2.安装

将安装包直接上传至es的插件目录解压即可

cd /opt/elasticsearch-6.6./plugins
mkdir ik
unzip elasticsearch-analysis-ik-6.6..zip
rm -rf elasticsearch-analysis-ik-6.6..zip #再打开elasticsearch-6.6./config下的jvm.options,在最后面加上一行:
-Djava.security.policy=/opt/elasticsearch-6.6./plugins/ik/plugin-security.policy #重启
su elsearch
./bin/elasticsearch -d

3.测试ik插件(通过head插件测试)

1)查看日志看是否已经加载analysis-ik

2)登录head上验证查看

4.注意

ES6.0与ik6.0进行集成安装之后,只能通过head工具来进行测试,通过url进行测试的时候会报错,这是一个bug已经提交到gethub上了

问题

搭建过程遇到过的坑(主要是系统设置问题)
启动es报错:

1.

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

vim /etc/sysctl.conf
vm.max_map_count = //添加

2.

ERROR: bootstrap checks failed
system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
vim config/elasticsearch.yml
#添加下面两个
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

原因:
这是在因为Centos6不支持SecComp,而es6.x默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致es不能启动。

原因解释出处:https://github.com/elastic/elasticsearch/issues/22899

3.

java.lang.RuntimeException: can not runelasticsearch as root

这是因为es6.x为了安全考虑,已经不让root启动,2.x版本的还有解决办法,修改bin中的启动文件可实现root启动,但是后续版本已经没用了

解决办法:

useradd elsearch
passwd elsearch
chown -R elsearch.elsearch elasticsearch-6.6.
su elsearch
./bin/elasticsearch -d

4.

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

maxfile descriptors为最大文件描述符,设置其大于65536即可

vim /etc/security/limits.conf
* - nofile
* - memlock unlimited

5.

ERROR: [3] max number of threads [1024] for user [elsearch] is too low, increase to at least [4096]

vim /etc/security/limits.d/-nproc.conf
* soft nproc

注销用户,重新登录生效

elasticsearch6.6及其插件安装记录(较详细)的更多相关文章

  1. dedecms织梦二次开发报名表单模块插件安装及配置详细教程

    网上找了很多,都不是太满意,功能不全不全不说,还没有详细的安装配置教程,经过自己的折腾,成功了修改程序并配置成功,亲测,试用没有问题!所以,决定给大家出一个针对新手的详细教程. 废话不多,直接上干货. ...

  2. sublime 3插件安装记录

    安装sublime 3的package control管理器: 从菜单 View - Show Console 或者 ctrl + ~ 快捷键,调出 console.将以下 Python 代码粘贴进去 ...

  3. ASUS RT-AC68U 刷梅林固件及安装***插件记录(详细)

    本文借鉴网络并亲自刷机过程记录(网上很多教程都不太详细) 版本:华硕ASUS RT- AC68U    Wireless-AC1900 路由器的连接方式略,有说明书 连好后打开浏览器输入:http:/ ...

  4. Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):3、Maven独立插件安装与settings.xml配置

    文章目录: Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):1.JIRA账号注册 Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):2.PGP ...

  5. 最详细eclipse汉化插件安装教程

    最详细eclipse汉化插件安装教程(转) 转自:http://blog.csdn.net/dai_zhenliang/article/details/8588576#t4 教程作者:戴振良 本文与& ...

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

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

  7. IDEA中的lombok插件安装以及各注解的详细介绍

    IDEA中的lombok插件安装以及各注解的详细介绍 其实对于我们来说, 写好实体类后,直接用快捷方式生成get,set方法,还有 构造方法就行了,但是对于字段比较多的, 如果修改一个属性的话,就要再 ...

  8. 2018超详细sublime text3+python3.x安装配置教程(附常用插件安装教程)

    导读 本文是关于2018年7月最新版sublime text3+pythin3.x下载及安装配置教程,sublime text3版本为3176,python版本为3.7,安装环境是基于windows1 ...

  9. 关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用

    关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用   工作环境:window下 在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/) ...

随机推荐

  1. Java开发笔记(二十八)布尔包装类型

    前面介绍了数值包装类型,因为不管是整数还是小数,它们的运算操作都是类似的,所以只要学会了Integer的用法,其它数值包装类型即可一并掌握.但是对于布尔类型boolean来说,该类型定义的是“true ...

  2. 17、字符串转换整数 (atoi)

    17.字符串转换整数 (atoi) 请你来实现一个 atoi 函数,使其能将字符串转换成整数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止. 当我们寻找到的第一个非 ...

  3. 【JVM】7、深入理解Java G1垃圾收集器

    本文首先简单介绍了垃圾收集的常见方式,然后再分析了G1收集器的收集原理,相比其他垃圾收集器的优势,最后给出了一些调优实践. 一,什么是垃圾回收 首先,在了解G1之前,我们需要清楚的知道,垃圾回收是什么 ...

  4. C++系列总结——volatile关键字

    前言 volatile的中文意思是易变的,但这个易变和mutable是不同的含义.mutable是指编译期的易变,根据语法编译器默认不会让我们修改某些变量,但是加上mutable让编译器知道我们要修改 ...

  5. 高效开发者是如何个性化VS Code插件与配置的?

    2年之前,我放弃了Sublime Text,选择了Visual Studio Code作为代码编辑器. 我每天花在VS Code上的时间长达5~6个小时,因此按照我的需求优化VS Code配置十分必要 ...

  6. vue中如何使用mockjs摸拟接口的各种数据

    mockjs的作用 生成模拟数据 模拟 Ajax 请求,返回模拟数据 基于 HTML 模板生成模拟数据(后续更新) 帮助编写单元测试(后续更新) Vue 中使用 mock 有两种使用方式,一种是仅编写 ...

  7. 清清楚楚地搭建MongoDB数据库(以搭建4.0.4版本的副本集为例)

    数据的目录文件层次设计 我们一般采用多实例的方式,而不是将所有的数据库尽可能地放在一个实例中. 主要基于以下考虑: 1:不同业务线对应的数据库放在不同的实例上,部分操作的运维时间容易协调等到. 2:相 ...

  8. Linux中逻辑卷的快照与还原

    有关逻辑卷的其他操作,请看: Linux中对逻辑卷的建立 Linux中对逻辑卷进行扩容与缩小 Linux中对逻辑卷的移除 LVM还有快照的功能,类似windows的系统还原点.其特点: 1.快照卷的容 ...

  9. MySQL中Identifier Case Sensitivity

    在MySQL当中,有可能遇到表名大小写敏感的问题.其实这个跟平台(操作系统)有关,也跟系统变量lower_case_table_names有关系.下面总结一下,有兴趣可以查看官方文档"Ide ...

  10. python粗谈面向对象(二)

    浅谈super() super并不是一个函数,是一个类名,形如super(B, self)事实上调用了super类的初始化函数,产生了一个super对象:Python的多继承类是通过mro的方式来保证 ...