Docker安装ElasticSearch集群以及ES可视化工具(Head)

这篇具有很好参考价值的文章主要介绍了Docker安装ElasticSearch集群以及ES可视化工具(Head)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一 安装Elasticsearch
1. 安装前准备,容器数据卷映射路径创建以及集群配置文件设置
容器数据卷映射路径创建

# 递归创建所有路径 集群有三台节点 就创建三个目录
mkdir -p /home/docker/container/volume/elasticsearch
# es数据备份路径
mkdir -p /home/docker/container/volume/elasticsearch/node1/data
mkdir -p /home/docker/container/volume/elasticsearch/node2/data
mkdir -p /home/docker/container/volume/elasticsearch/node3/data
# es elasticsearch.yml 配置文件容器数据卷
mkdir -p /home/docker/container/volume/elasticsearch/node1/config
mkdir -p /home/docker/container/volume/elasticsearch/node2/config
mkdir -p /home/docker/container/volume/elasticsearch/node3/config
# 挂载elasticsearch插件 容器数据卷 三个节点共用一个文件 这样一个节点安装了,其他节点也有插件
mkdir -p /home/docker/container/volume/elasticsearch/plugin
# elasticsearch-head插件 的容器数据卷映射
mkdir -p /home/docker/container/volume/elasticsearch/head

# 改变目录权限 要执行这个命令, 否则会导致启动集群时, docker容器无法挂载数据卷
chmod -r 777 /home/docker/container/volume/elasticsearch

修改集群配置文件
配置文件还有一些其他参数的设置, 具体需要查看ES的官网

# 编辑 节点一的配置文件
vim /home/docker/container/volume/elasticsearch/node1/config/elasticsearch.yml
# 编辑 节点二的配置文件
vim /home/docker/container/volume/elasticsearch/node2/config/elasticsearch.yml
# 编辑 节点三的配置文件
vim /home/docker/container/volume/elasticsearch/node3/config/elasticsearch.yml
#节点1
# es集群名称
cluster.name: elasticsearch-cluster
# 节点名称 
node.name: es-node1
network.bind_host: 0.0.0.0
# 填写宿主机的IP
network.publish_host: 192.168.222.132
http.port: 9200
transport.tcp.port: 9300 
# 跨域设置
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Content-Type,Accept,Authorization, x-requested-with
node.master: true
node.data: true
# 设置集群通信IP
discovery.zen.ping.unicast.hosts: ["192.168.222.132:9300","192.168.222.132:9301","192.168.222.132:9302"]
# es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
cluster.initial_master_nodes: es-node1

#节点2
# es集群名称
cluster.name: elasticsearch-cluster
# 节点名称 
node.name: es-node2
network.bind_host: 0.0.0.0
# 填写宿主机的IP
network.publish_host: 192.168.222.132
http.port: 9200
transport.tcp.port: 9300 
# 跨域设置
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Content-Type,Accept,Authorization, x-requested-with
node.master: true
node.data: true
# 设置集群通信IP
discovery.zen.ping.unicast.hosts: ["192.168.222.132:9300","192.168.222.132:9301","192.168.222.132:9302"]
# es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
cluster.initial_master_nodes: es-node1

#节点3
# es集群名称
cluster.name: elasticsearch-cluster
# 节点名称 
node.name: es-node3
network.bind_host: 0.0.0.0
# 填写宿主机的IP
network.publish_host: 192.168.222.132
http.port: 9200
transport.tcp.port: 9300 
# 跨域设置
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Content-Type,Accept,Authorization, x-requested-with
node.master: true
node.data: true
# 设置集群通信IP
discovery.zen.ping.unicast.hosts: ["192.168.222.132:9300","192.168.222.132:9301","192.168.222.132:9302"]
# es7.x 之后新增的配置,初始化一个新的集群时需要此配置来选举master
cluster.initial_master_nodes: es-node1

ES分词器安装包准备
下载中文分词器https://github.com/medcl/elasticsearch-analysis-ik, 这里选择 7.8.0版本
https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.8.0/elasticsearch-analysis-ik-7.8.0.zip, 下载后将zip包放入/home/docker/container/volume/elasticsearch/plugin目录中,并解压;

# 先创建ik目录
mkdir /home/docker/container/volume/elasticsearch/plugin/ik
# 将zip包移动到ik目录下解压
unzip elasticsearch-analysis-ik-7.8.0.zip

或者 在容器启动后 通过命令安装分词器插件 (可能因为github访问太慢导致失败)

# 进入容器后 执行命令 
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.8.0/elasticsearch-analysis-ik-7.8.0.zip

2. 下载镜像, 这里选择tag为7.8.0版本的, 也可选择其他版本;

docker pull elasticsearch:7.8.0

3. 启动三个ES节点
根据GitHub上ES项目(GitHub-ES7-Dockerfile)的Dockerfile 文件中 WORKDIR: /usr/share/elasticsearch得知 es的工作空间目录是 /usr/share/elasticsearch,
因此数据容器卷的挂载是
-v /xxx/elasticsearch/node1/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
-v /xxx/elasticsearch/node1/data:/usr/share/elasticsearch/data
-e ES_JAVA_OPTS="-Xms256m -Xmx256m"限制ES启动占用的内存空间, 生产环境以具体情况而定;

#节点1
docker run -d -p 9200:9200 -p 9300:9300 --privileged=true -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -v /home/docker/container/volume/elasticsearch/node1/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/docker/container/volume/elasticsearch/node1/data:/usr/share/elasticsearch/data -v /home/docker/container/volume/elasticsearch/plugins:/usr/share/elasticsearch/plugins --name es_node1  elasticsearch:7.8.0
#节点2
docker run -d -p 9201:9200 -p 9301:9300 --privileged=true -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -v /home/docker/container/volume/elasticsearch/node2/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/docker/container/volume/elasticsearch/node2/data:/usr/share/elasticsearch/data -v /home/docker/container/volume/elasticsearch/plugins:/usr/share/elasticsearch/plugins --name es_node2  elasticsearch:7.8.0
#节点3
docker run -d -p 9202:9200 -p 9302:9300 --privileged=true -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -v /home/docker/container/volume/elasticsearch/node3/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/docker/container/volume/elasticsearch/node3/data:/usr/share/elasticsearch/data -v /home/docker/container/volume/elasticsearch/plugins:/usr/share/elasticsearch/plugins --name es_node3  elasticsearch:7.8.0

4. 集群启动后查看集群状态: 出现下图则表示集群启动成功;

curl http://192.168.222.132:9200/_cat/health?v

Docker安装ElasticSearch集群以及ES可视化工具(Head)
**查看中文分词插件安装情况:**请求参数中 analyzer:ik_max_word 表示使用 ik分词器, 成功返回数据没有报错则表示分词器插件安装成功

# 发送分词请求
curl -H "Content-Type: application/json" -d '{"analyzer":"ik_max_word","text":"各个国家有各个国家的国歌"}' http://192.168.222.132:9200/_analyze

Docker安装ElasticSearch集群以及ES可视化工具(Head)

二 安装Elasticsearch-Head插件

  1. 下载镜像
docker pull mobz/elasticsearch-head:5
  1. 启动容器
docker run -d -p 9100:9100 --name es-head mobz/elasticsearch-head:5
# 查看容器
docker ps 

Docker安装ElasticSearch集群以及ES可视化工具(Head)

  1. 容器启动之后使用浏览器访问 http://192.168.222.132:9100; 在链接地址处填写集群其中一个节点的地址即可http://192.168.222.132:9200Docker安装ElasticSearch集群以及ES可视化工具(Head)
  2. 使用elasticsearch-head插件创建索引等等操作;
    如果发现插件发送请求后接口返回 Content-Type header [application/x-www-form-urlencoded异常提示信息, 需要对插件请求接口的方式做修改;
    Docker安装ElasticSearch集群以及ES可视化工具(Head)
    因elasticsearch-head所在容器内编辑文件比较麻烦, 所以将elasticsearch-head插件容器中 /usr/src/app/_site/vendor.js 目录下的文件拷贝至宿主机上
# docker cp 容器ID:容器内文件目录 宿主机目标目录
docker cp 7d70511668d4:/usr/src/app/_site/vendor.js /home/docker/container/volume/elasticsearch/head
# 修改vendor.js文件
vim /home/docker/container/volume/elasticsearch/head/vendor.js
# 查找vendor.js文件中这个字眼的地方 使用n/N向下查找, 一般有两处地方 
# 查找到后将 application/x-www-form-urlencoded 改为 application/json;charset=UTF-8
/x-www-form-urlencoded

查找vendor.js文件中这个字眼的地方 使用n/N向下查找, 一般有两处地方
查找到后将 application/x-www-form-urlencoded 改为 application/json;charset=UTF-8
contentType: "application/x-www-form-urlencoded"改为 contentType: "application/json;charset=UTF-8"
var inspectData = s.contentType === "application/x-www-form-urlencoded"&&改为 var inspectData = s.contentType === "application/json;charset=UTF-8" &&
修改未完成后 :wq 保存文件;

  1. 删除当前 elasticsearch-head容器, 重新启动 elasticsearch-head容器 并挂载vendor.js文件
# 删除 容器
docker rm -f 7d70511668d4
# 重新启动一个head容器
docker run -d -p 9100:9100 -v /home/docker/container/volume/elasticsearch/head/vendor.js:/usr/src/app/_site/vendor.js --name es-head mobz/elasticsearch-head:5

至此elasticsearch-head就可以正常调用elasticsearch接口;文章来源地址https://www.toymoban.com/news/detail-466439.html

到了这里,关于Docker安装ElasticSearch集群以及ES可视化工具(Head)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ELK(Elasticsearch、Kibana、Logstash)以及向ES导入mysql数据库数据或CSV文件数据,创建索引和可视化数据

    地址:Past Releases of Elastic Stack Software | Elastic 在Products和version处分别选择需要下载的产品和版本,E(elasticsearch)L(logstash)K(kibana)三者版本必须相同 将下载好的elk分别解压到相同路径下 本文中elasticsearch=E=ES=es;L=logstash;K=kibana 一般情况下使用默认配置即可,下面对我的

    2024年02月15日
    浏览(59)
  • Docker 安装 nginx 和 tomcat 并部署 es + kibana 和可视化

             Portainer 是 Docker 的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、 Swarm 集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分

    2024年02月17日
    浏览(51)
  • Docker 安装 nginx 和 tomcat 并部署 es + kibana 和可视化(四)

             Portainer 是 Docker 的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、 Swarm 集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分

    2024年02月16日
    浏览(53)
  • docker安装部署Elasticsearch(ES)以及相关配置

    mysql用作持久化存储,ES用作检索 基本概念:index库type表document文档 index索引(相当于MySQL的数据库) 动词:相当于mysql的insert 名词:相当于mysql的db Type类型(相当于MySQL的数据表) 在index中,可以定义一个或多个类型 类似于mysql的table,每一种类型的数据放在一起 Document文档

    2024年01月16日
    浏览(52)
  • Docker安装ElasticSearch、Kibana、IK分词器以及设置ES账户密码

    版本声明: 系统 :CentOS 7.9(云服务器) ES版本 :7.6.1 Kibana :7.6.1 Ik分析器版本 :7.6.1 1、拉取镜像 2、创建挂载目录 设置所有用户读写执行权限 : sudo chmod -R 777 /docker_config/elasticsearch/ 3、创建elasticsearch.yml 配置文件 4、创建容器 参数说明 : -p 端口映射 -e discovery.type=single

    2023年04月09日
    浏览(71)
  • 简单好用的ElasticSearch可视化工具:es-client和Head

    使用 ElasticSearch(简称 es) 的过程中,经常有一些临时查询(如 排查问题、验证效果),一个趁手的可视化工具 可以提高工作效率。 个人倾向于 免费(最好开源)、易于安装(如 浏览器插件), es-client 就是 比较简单好用的一个,尤其是 查询。 es官方的可视化工具,天花板级别,当

    2024年02月07日
    浏览(50)
  • Kibana 可视化数据分析以及es常用的数据分析函数

    1、Discover 的使用及生成报表:https://elasticstack.blog.csdn.net/article/details/131119502 2、Dashboard的使用:https://elasticstack.blog.csdn.net/article/details/131121890 该文档主要介绍Dashboard中的Lens使用方式,但其余的也都差不多,可以自行尝试 3、将制作好的Dashboard生成共享文件:https://elasticstack

    2024年02月14日
    浏览(47)
  • 【ElasticSearch系列-06】Es集群架构的搭建以及集群的核心概念

    ElasticSearch系列整体栏目 内容 链接地址 【一】ElasticSearch下载和安装 https://zhenghuisheng.blog.csdn.net/article/details/129260827 【二】ElasticSearch概念和基本操作 https://blog.csdn.net/zhenghuishengq/article/details/134121631 【三】ElasticSearch的高级查询Query DSL https://blog.csdn.net/zhenghuishengq/article/details/1

    2024年02月04日
    浏览(60)
  • ES的可视化工具-Kibana的安装和使用

        Kibana 是为 Elasticsearch设计的开源分析和可视化平台。你可以使用 Kibana 来搜索,查看存储在 Elasticsearch 索引中的数据并与之交互。你可以很容易实现高级的数据分析和可视化,以图表的形式展现出来。     下面是Kibana的安装步骤,控制台可以非常方便的来调用es的api,强

    2024年02月12日
    浏览(50)
  • win下安装 Elasticsearch与Elasticsearch可视化工具

    目录 1 安装Elasticsearch(简称ES) 2 下载ES的可视化工具 在这里下载——》官方下载地址 Elasticsearch 7.10.1 | Elastic 对应的版本JAVA版本如下图 注意ES7.1只支持springboot 2.4及其以上的版本  ,并且依赖于JDK11(JAVA11)及其以上JDK的版本,需要升级JAVA版本的可以查看这篇文章的。 Windows从j

    2024年02月06日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包