elasticsearch插件安装之--linux下安装及head插件

时间:2023-12-28 19:20:50

/**

* 系统环境: vm12 下的centos 7.2

* 当前安装版本: elasticsearch-2.4.0.tar.gz

*/

安装和学习可参照官方文档:

1, 安装

# 下载, 获取不成功可直接从官网下载
curl -L -O https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.4.0/elasticsearch-2.4.0.tar.gz
# 解压
sudo tar -xvf elasticsearch-2.4..tar.gz
# 进入目录
cd elasticsearch-2.4./bin

启动:

./bin/elasticsearch

启动成功的界面为:

elasticsearch插件安装之--linux下安装及head插件

此时可以使用浏览器访问: http://192.168.1.103:9200

elasticsearch插件安装之--linux下安装及head插件

注: 由于没有更改yml文件, 只能在本机访问

修改elasticsearch.yml 使得其他机器可访问

sudo vim ./config/elasticsearch.yml

elasticsearch插件安装之--linux下安装及head插件

elasticsearch插件安装之--linux下安装及head插件

2, 安装head,

elasticsearch-head是一个界面化的集群操作和管理工具,可以对集群进行傻瓜式操作。你可以通过插件把它集成到es(首选方式),也可以安装成一个独立webapp。

es-head主要有三个方面的操作:

显示集群的拓扑,并且能够执行索引和节点级别操作
搜索接口能够查询集群中原始json或表格格式的检索数据
能够快速访问并显示集群的状态
有一个输入窗口,允许任意调用RESTful API。这个接口包含几个选项,可以组合在一起以产生有趣的结果;
请求方法(get、put、post、delete),查询json数据,节点和路径
支持JSON验证器
支持重复请求计时器
支持使用javascript表达式变换结果
收集结果的能力随着时间的推移(使用定时器),或比较的结果
能力图表转换后的结果在一个简单的条形图(包括时间序列)

1), 直接安装

./bin/plugin install mobz/elasticsearch-head

2) ,zip包安装

. https://github.com/mobz/elasticsearch-head下载zip 解压
. 建立elasticsearch-2.4.0\plugins\head文件
. 将解压后的elasticsearch-head-master文件夹下的文件copy到head
. 运行es

安装验证:

elasticsearch插件安装之--linux下安装及head插件

3, 安装其他插件

$ ${ES_HOME}/bin/plugin --install lukas-vlcek/bigdesk
# 安装完成访问:http://localhost:9200/_plugin/bigdesk/#nodes $ ${ES_HOME}/bin/plugin -install royrusso/elasticsearch-HQ
# 安装完成访问:http://localhost:9200/_plugin/HQ/ $ ${ES_HOME}/bin/plugin -install lmenezes/elasticsearch-kopf
# 安装完成访问:http://localhost:9200/_plugin/kopf/#!/cluster

官方的文档:
https://github.com/mobz/elasticsearch-head

出现的错误:

错误1: 

Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root.
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:)
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:)

解决: 不使用root账户登录

错误2:

java.io.FileNotFoundException: /usr/docker/elasticsearch/elasticsearch-2.4./logs/elasticsearch_index_search_slowlog.log (权限不够)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:)
at java.io.FileOutputStream.<init>(FileOutputStream.java:)
at java.io.FileOutputStream.<init>(FileOutputStream.java:)
at org.apache.log4j.FileAppender.setFile(FileAppender.java:)

原因: 文件所有者不是当前用户

解决: 退回的解压目录, 更改整个文件夹的所有者为当前用户

chown -R wenbronk:wenbronk elasticsearch-2.4.

错误3:

ERROR: [] bootstrap checks failed
[]: max file descriptors [] for elasticsearch process is too low, increase to at least []
[]: max virtual memory areas vm.max_map_count [] is too low, increase to at least []

原因: 最大文件描述符太低, 需要增加到65536

su到root用户, vim /etc/security/limits.conf

*        hard    nofile
* soft nofile

错误4:

ERROR: [] bootstrap checks failed
[]: max virtual memory areas vm.max_map_count [] is too low, increase to at least []

原因: 堆内存太低, 继续调大

vi /etc/sysctl.conf 
vm.max_map_count=655360

执行:

sysctl -p

安装前准备

2.1 修改系统相关文件

启动前需要修改配置文件(需要权限)

1. 设置内核参数

vim /etc/sysctl.conf

添加如下内容:

fs.file-max=65536

vm.max_map_count=262144

之后可以使用sysctl –a查看 –p刷新

2. 设置资源参数

vim /etc/security/limits.conf

添加如下内容:

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

3. 修改进程数

vim /etc/security/limits.d/20-nproc.conf

修改( * soft nproc )的值为2048