当前位置: 首页 > news >正文

docker部署elasticsearch+kibana+head

       前言

         最近,项目需要使用elasticsearch,所以就想快速安装一个使用,最开始是docker安装了7.10.1版本。

        后面计划使用Java开发,发现有 RestHighLevelClient 和 Elasticsearch Java API Client两种客户端连接方式。

然后网上查阅了一下:

Elasticsearch RestHighLevelClient 已标记为被弃用 它的替代方案 Elasticsearch Java API Client 的基础教程及迁移方案_resthighlevelclient弃用-CSDN博客

                在elasticsearch版本之后,elasticsearch官方将它的高级客户端RestHighLevelClient标记为弃用状态。同时推出了全新的Java API客户端Elasticsearch Java API Client,该客户端也将在elasticsearch8.0及以后版本中成为官方推荐使用的客户端。

        Elasticsearch Java API Client 支持除 Vector tile search API 和 Find structure API 之外的所有 Elasticsearch API。且支持所有API数据类型,并且不再有原始JsonValue属性。它是针对Elasticsearch8.0及之后版本的客户端,目前Elasticsearch已经更新至8.0.1,所以我们需要学习新的Elasticsearch Java API Client的使用方法。


版本选择

        基于上面的原因,在对两种Java客户端都不熟悉的前提下。决定安装7.17.6 这个版本。这个版本是7的大版本,elasticsearch 7.15版本之后,可以同时支持两种Java客户端,方便后续灵活选择java客户端开发。

        因此,在我们安装之前,确定自己熟悉哪种elasticsearch客户端,以及elasticsearch不同版本的特性,决定选择什么版本。

一下内容都是基于elasticsearch 7.17.6版本:

安装elasticsearch

参考文档:(文档中包含中文分词器的使用)

elasticsearch安装ik中文分词器-CSDN博客
下载镜像

下载镜像,并将镜像上传到自己的私有仓库 :  harbor.nl.com/es/elasticsearch:7.17.6

docker pull elasticsearch:7.17.6

修改系统参数

vi /etc/sysctl.conf

调整参数

vm.max_map_count=262144

刷新参数

sysctl -p

创建相关目录

mkdir -p /data/elk7/elasticsearch/{data,logs,config,plugins}

 安装ik中文插件

打开github地址:https://github.com/medcl/elasticsearch-analysis-ik

打开releases页面,下载7.17.6版本


注意:这个版本,必须和elasticsearch对应。

下载完成后,将文件elasticsearch-analysis-ik-7.17.6.zip上传到/opt目录

解压到指定目录

mkdir /data/elk7/elasticsearch/plugins/elasticsearch-analysis-ik
unzip /opt/elasticsearch-analysis-ik-7.10.1.zip -d /data/elk7/elasticsearch/plugins/elasticsearch-analysis-ik

设置文件权限

chmod 777 -R /data/elk7/elasticsearch/

配置文件

内容如下:

vi /data/elk7/elasticsearch/config/elasticsearch.yml
cluster.name: "docker-cluster"
node.name: "master"
network.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"

启动elasticsearch

以单例模式启动

 创建网络

docker network create es-net

 启动

docker run -d --name=elasticsearch \--restart=always \--privileged \--network es-net \-p 9200:9200 -p 9300:9300 \-e "discovery.type=single-node" \-v /data/elk7/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \-v /data/elk7/elasticsearch/data:/usr/share/elasticsearch/data \-v /data/elk7/elasticsearch/logs:/usr/share/elasticsearch/logs \-v /data/elk7/elasticsearch/plugins:/usr/share/elasticsearch/plugins \harbor.nl.com/es/elasticsearch:7.17.6

等待30秒左右,查看docker日志,是否有错误日志

docker logs -f elasticsearch

访问elasticsearch页面,修改对应的ip

http://ip:9200/

 

注意:这里是挂载的plugins目录,用来存放插件的。

查看插件接口

http://ip:9200/_cat/plugins

输出:

e30bb0e85e63 analysis-ik 7.17.6

说明插件安装成功了。
 

安装 elasticsearch-head和kibana

Docker安装Elasticsearch及相关插件详细步骤,全程亲测避坑_冰糖码奇朵的博客-CSDN博客

集群安装

docker简易搭建ElasticSearch集群(es)_docker 部署es集群-CSDN博客

6.1 Elasticsearch(一)Docker搭建ES集群-CSDN博客

相关文章:

  • uniapp+vue3路由跳转传参
  • 【渗透】记录阿里云CentOS一次ddos攻击
  • Jmeter对图片验证码的处理
  • C++学习之路(十五)C++ 用Qt5实现一个工具箱(增加16进制颜色码转换和屏幕颜色提取功能)- 示例代码拆分讲解
  • 基于springboot+vue的点餐系统(前后端分离)
  • 【sql】【mysql】【数据库】复杂查询中避免Join的办法
  • Gavin Wood:财库保守主义偏离了初心,应探索 Fellowship 等更有效的资金部署机制
  • powershell获取微软o365 21v日志
  • 第六十四周周报
  • Android Studio新版UI介绍
  • 目标检测YOLO系列从入门到精通技术详解100篇-【自动驾驶】激光雷达
  • 户外电力检测设备,如何实现远程数据实时互通?
  • 【WP】Geek Challenge 2023 web 部分wp
  • Linux系统之centos7编译安装Python 3.8
  • RPG项目01_场景及人物动画管理器
  • [译] 怎样写一个基础的编译器
  • [译]Python中的类属性与实例属性的区别
  • css的样式优先级
  • es6要点
  • JS基础篇--通过JS生成由字母与数字组合的随机字符串
  • python3 使用 asyncio 代替线程
  • React-Native - 收藏集 - 掘金
  • win10下安装mysql5.7
  • 创建一个Struts2项目maven 方式
  • 从零开始在ubuntu上搭建node开发环境
  • 分享一份非常强势的Android面试题
  • 无服务器化是企业 IT 架构的未来吗?
  • 一、python与pycharm的安装
  • 用element的upload组件实现多图片上传和压缩
  • ​​​​​​​sokit v1.3抓手机应用socket数据包: Socket是传输控制层协议,WebSocket是应用层协议。
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (23)Linux的软硬连接
  • (C语言)fgets与fputs函数详解
  • (二)PySpark3:SparkSQL编程
  • (附源码)spring boot车辆管理系统 毕业设计 031034
  • (蓝桥杯每日一题)love
  • (论文阅读23/100)Hierarchical Convolutional Features for Visual Tracking
  • (入门自用)--C++--抽象类--多态原理--虚表--1020
  • (五)Python 垃圾回收机制
  • (一)appium-desktop定位元素原理
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (转) Android中ViewStub组件使用
  • (转)可以带来幸福的一本书
  • .babyk勒索病毒解析:恶意更新如何威胁您的数据安全
  • .equals()到底是什么意思?
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .Net CoreRabbitMQ消息存储可靠机制
  • .NET delegate 委托 、 Event 事件,接口回调
  • .net 使用$.ajax实现从前台调用后台方法(包含静态方法和非静态方法调用)
  • .NET(C#、VB)APP开发——Smobiler平台控件介绍:Bluetooth组件
  • .net访问oracle数据库性能问题
  • .Net开发笔记(二十)创建一个需要授权的第三方组件
  • .NET面试题解析(11)-SQL语言基础及数据库基本原理