Elasticsearch 插件

1、Head 插件

通过使用插件可以实现对 ES 集群的状态监控,数据访问,管理配置等功能。

Head 是一个 ES 在生产较为常用的插件。

git地址:https://github.com/mobz/elasticsearch-head

三种安装方法:

  • 编译安装
  • Docker
  • 浏览器插件

1.1、编译安装

安装 Head 插件前准备

修改elasticsearch节点的服务配置文件,开启跨域访问支持,然后重启elasticsearch服务。

root@es-node1:~# vim /etc/elasticsearch/elasticsearch.yml
#在文件最后添加下面两行
http.cors.enabled: true      #开启支持跨域访问
http.cors.allow-origin: "*"   #指定允许访问范围

root@es-node1:~# systemctl restart elasticsearch.service

服务方式启动

在elasticsearch 5.x版本以后不再支持直接安装head插件,而是通过服务启动

此安装方式通过 npm 工具实现

npm(Node Package Manager)是和NodeJS一起安装的包管理和分发工具,使用npm 可以很方便让JavaScript开发者下载、安装、上传以及管理已经安装的相关包。

root@es-node1:~# apt -y install npm

root@es-node1:~# npm config set registry https://registry.npm.taobao.org
root@es-node1:~# npm config get registry
https://registry.npm.taobao.org/

root@es-node1:~# wget https://github.com/mobz/elasticsearch-head/archive/refs/tags/v5.0.0.zip
root@es-node1:~# unzip elasticsearch-head-5.0.0.zip


root@es-node1:~# cd elasticsearch-head-5.0.0
root@es-node1:~/elasticsearch-head-5.0.0# npm install
root@es-node1:~/elasticsearch-head-5.0.0# npm run start &
图片[1]-Elasticsearch 插件-李佳程的个人主页

1.2、Docker 方式启动 Head 插件

docker run -d -p 9100:9100 --name head mobz/elasticsearch-head:5

1.3、浏览器安装插件

从谷歌应用商店下载安装插件,支持chrome和edge浏览器

图片[2]-Elasticsearch 插件-李佳程的个人主页

1.4、利用 Head 插件观察状态

head 插件中集群状态说明

状态颜色说明:

  • 绿色:索引数据完整,副本满足,所有条件都满足
  • 黄色:索引数据完整,副本不满足,即数据没有丢失,但副本丢失,可能会影响容错功能
  • 红色:有索引数据不完整的情况,即数据丢失
  • 紫色:有数据分片正在同步过程中

0 表示分片的片shard编号

粗体线框为主分片,细体线框为副本分片

星表示主master节点,圆点表示slave工作节点

图片[3]-Elasticsearch 插件-李佳程的个人主页
图片[4]-Elasticsearch 插件-李佳程的个人主页
图片[5]-Elasticsearch 插件-李佳程的个人主页
图片[6]-Elasticsearch 插件-李佳程的个人主页
root@es-node3:~# systemctl stop elasticsearch.service
图片[7]-Elasticsearch 插件-李佳程的个人主页

2、Cerebro 插件

Cerebro 是开源的 elasticsearch 集群 Web 管理程序,需要 java1.8 或者更高版本,此工具应用也很广泛

Cerebro v0.9.4 需要 Java11

github链接: https://github.com/lmenezes/cerebro

2.1、包安装

内存建议大于3G以上

root@client:~# apt -y install openjdk-11-jdk

root@client:~# wget https://github.com/lmenezes/cerebro/releases/download/v0.9.4/cerebro_0.9.4_all.deb

root@client:~# dpkg -i cerebro_0.9.4_all.deb

root@client:~# vim /etc/cerebro/application.conf
data.path: "/var/lib/cerebro/cerebro.db"
#data.path = "./cerebro.db"

root@client:~# systemctl restart cerebro.service

root@client:~# ss -ntlp|grep 9000
LISTEN    0         100                      *:9000                   *:*        users:(("java",pid=39783,fd=127))
图片[8]-Elasticsearch 插件-李佳程的个人主页
图片[9]-Elasticsearch 插件-李佳程的个人主页
图片[10]-Elasticsearch 插件-李佳程的个人主页
图片[11]-Elasticsearch 插件-李佳程的个人主页

2.2、利用 cerebro 插件创建索引

图片[12]-Elasticsearch 插件-李佳程的个人主页

建议shard分片数配置为ELK服务器的数量,副本为1表示对数据有一个备份

图片[13]-Elasticsearch 插件-李佳程的个人主页

再创建一个索引index-test2,不指定分片信息

图片[14]-Elasticsearch 插件-李佳程的个人主页

ES7.0版本默认分片为1个,并且只有1个副本
ES6.X版本前默认分片为5个副本1个

利用 head 插件删除索引

图片[15]-Elasticsearch 插件-李佳程的个人主页
图片[16]-Elasticsearch 插件-李佳程的个人主页
图片[17]-Elasticsearch 插件-李佳程的个人主页

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享