ElasticSearch详细搭建以及常见错误high disk watermark [ES系列] - 第497篇

导读

历史文章(文章累计490+)

《国内最全的Spring Boot系列之一》

《国内最全的Spring Boot系列之二》

《国内最全的Spring Boot系列之三》

《国内最全的Spring Boot系列之四》

《国内最全的Spring Boot系列之五》

《国内最全的Spring Boot系列之六》

15篇MyBatis-Plus系列集合篇「值得收藏学习」

全文检索[ES系列] - 第495篇

ElasticSearch应用场景以及技术选型[ES系列] - 第496篇

悟纤:师傅,安装ES碰到了很多奇奇怪怪的问题,为啥我总是碰到奇奇怪怪的问题呐。

师傅:学习吗,不可能是一帆风顺的。学习重要的是要培养自己在碰到问题的时候,自我思考、独立解决问题的能力。

悟纤:那师傅,我怎么培养这样的能力呢 ?

师傅:重要的是碰到问题,不要着急就问别人,尝试自己去解决问题。

悟纤:那要是解决不出来呢?

师傅:那就百度看看以及问问别人是否碰到过类似的问题。

悟纤:还有其它要点的吗 ?

师傅:那就是对于碰到的问题要多多总结。

悟纤:师傅,看来我的培养一下学习的方法了。

导读

Hi,大家好,我是悟纤。我就是我,不一样的烟火。我就是我,与众不同的小苹果。

在了解了ES之后,这一节就一起来搭建一下ES环境以及在搭建环境过程中经常碰到的一些问题。

一、安装ElasticSearch

安装文档:

https://www.elastic.co/guide/en/elasticsearch/reference/8.10/targz.html

1.1 下载ElasticSearch

下载地址:

https://www.elastic.co/cn/downloads/past-releases#elasticsearch

选择版本:8.10.2

选择相应的操作系统进行下载:

我这里是mac 选择的是第二个macos x64。

下载下来是一个类似这样的文件:

1.2 解压压缩文件

将文件进行解压即可:

elasticsearch-8.10.2-darwin-x86_64.tar.gz

目录结构:

目录

描述

bin

脚本文件,包括启动elasticsearch,安装插件,运行统计数据等

config

配置文件目录,如elasticsearch配置、角色配置、jvm配置等。

jdk

7.x 以后特有,自带的 java 环境,8.x版本自带 jdk 17

data

默认的数据存放目录,包含节点、分片、索引、文档的所有数据,生产环境需要修改。

lib

elasticsearch依赖的Java类库

logs

默认的日志文件存储路径,生产环境需要修改。

modules

包含所有的Elasticsearch模块,如Cluster、Discovery、Indices等。

plugins

已安装插件目录

1.3配置JDK环境

· ES比较耗内存,建议虚拟机4G或以上内存,jvm1g以上的内存分配

· 运行Elasticsearch,需安装并配置JDK。各个版本对Java的依赖 https://www.elastic.co/support/matrix#matrix_jvm

² Elasticsearch 5需要Java 8以上的版本

² Elasticsearch 从6.5开始支持Java 11

² 7.0开始,内置了Java环境。ES的JDK环境变量生效的优先级配置顺序ES_JAVA_HOME>JAVA_HOME>ES_HOME

² ES_JAVA_HOME:这个环境变量用于指定Elasticsearch使用的Java运行时环境的路径。在启动Elasticsearch时,它会检查ES_JAVA_HOME环境变量并使用其中的Java路径。

² ES_HOME:这个环境变量指定Elasticsearch的安装路径。它用于定位Elasticsearch的配置文件、插件和其他相关资源。设置ES_HOME环境变量可以让您在命令行中更方便地访问Elasticsearch的目录结构和文件。

可以参考es的环境文件bin/elasticsearch-env

windows下,设置ES_JAVA_HOME和ES_HOME的环境变量。

1.4启动ElasticSearch服务

进入bin目录,直接运行elasticsearch

解压压缩包进入bin文件里面启动 elasticsearch 直接启动即可 默认端口:9200

测试,浏览器中访问:http://localhost:9200/

二、常见错误

2.1错误not all primary shards

报错

exception during geoip databases updateorg.elasticsearch.ElasticsearchException: not all primary shards of [.geoip_databases] index are active

解决方式:修改config中elasticsearch.yml配置文件,添加如下三行配置

2.2错误received plaintext http traffic

报错:received plaintext http traffic on an https channel, closing connection Netty4HttpChannel{localAddress=/127.0.0.1:9200, remoteAddress=/127.0.0.1:59411}

解决方式:修改config中elasticsearch.yml配置文件,更改安全权限配置

2.3错误high disk watermark [90%] exceeded on

报错:current.health="RED" message="Cluster health status changed from [YELLOW] to [RED] (reason: [reconcile-desired-balance])." previous.health="YELLOW" reason="reconcile-desired-balance"

[2023-10-08T15:14:01,245][WARN ][o.e.c.r.a.DiskThresholdMonitor] [linxiangxiandeMacBook-Pro.local] high disk watermark [90%] exceeded on [pU7WL0B0SS2Ah7Y3MnfF_g][linxiangxiandeMacBook-Pro.local][/Users/linxiangxian/Documents/soft/elasticsearch-8.10.2/data] free: 28gb[6%], shards will be relocated away from this node; currently relocating away shards totalling [0] bytes; the node is expected to continue to exceed the high disk watermark when these relocations are complete

问题原因:磁盘空间不足,配置了集群的话,索引会不健康

解决方法:在elasticserach.yml

discovery.type: single-node

cluster.routing.allocation.disk.threshold_enabled: false

我就是我,是颜色不一样的烟火。
我就是我,是与众不同的小苹果。

à悟纤学院:https://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!

SpringBoot视频:http://t.cn/A6ZagYTi

SpringBoot交流平台:https://t.cn/R3QDhU0

SpringSecurity5.0视频:http://t.cn/A6ZadMBe

ShardingJDBC分库分表:http://t.cn/A6ZarrqS

分布式事务解决方案:http://t.cn/A6ZaBnIr

JVM内存模型调优实战:http://t.cn/A6wWMVqG

Spring入门到精通:https://t.cn/A6bFcDh4

大话设计模式之爱你:https://dwz.cn/wqO0MAy7

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/285679.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP使用symfony/process来实现多进程请求url或执行多个php文件

1、什么是symfony/process? Symfony/Process是Symfony框架中的一个组件,用于处理和管理子进程。它提供了一个简单易用的API,可以执行外部命令,并与子进程进行交互。 Symfony/Process可以执行各种操作系统命令,如运行…

Amazon CodeWhisperer 在 vscode 的应用

文章作者:旧花阴 CodeWhisperer 是一款可以帮助程序员更快、更安全地编写代码的工具,可以在他们的开发环境中实时提供代码建议和推荐。亚马逊云科技发布的这款代码生成工具 CodeWhisperer 最大的优势就是对于个人用户免费。以在 vscode 为例,演示安装过程…

百度地图添加坐标点,并返回坐标信息

1、创建地图容器 在mounted中初始化地图、鼠标绘制工具和添加鼠标监听事件 vue data中添加地图和绘制工具对象 2、添加初始化化地图方法 initMap(longitude, latitude) {let that thisthat.map new BMapGL.Map("container");// 创建地图实例if (longitude null ||…

使用SQL和Python处理Excel文件数据

目录 一、引言 二、使用SQL查询Excel文件数据 1、导入必要的库 2、创建数据库连接 3、读取Excel文件数据 4、将数据写入数据库 5、使用SQL查询数据 三、使用Python读取和处理Excel文件数据 1、导入必要的库 2、读取Excel文件数据 3、数据处理和分析 4. 将数据可视化…

【C盘清理】Jetbrains全家桶(PyCharm、Clion……)更改 IDE 特定文件(配置、缓存、插件、日志等)存储位置

文章目录 一、官网说明二、更改 IDE 目录的位置1. 转到“帮助”|“编辑自定义属性”2. 各文件位置3. 以PyCharm系统目录为例4. 修改idea.properties 三、清理旧的 IDE 目录 一、官网说明 IDE 使用的目录官网说明 二、更改 IDE 目录的位置 默认情况下,PyCharm 将每…

【DOM笔记一】什么是DOM?获取元素的方法有哪些?什么是事件以及事件的三要素包括哪些?

文章目录 1 引入1.1 JS组成1.2 API 和 Web API1.3 DOM1.4 DOM树 2 获取元素2.1 通过ID获取2.2 通过标签名获取2.3 通过类名的方法获取2.4 获取特殊元素 3 事件基础 1 引入 1.1 JS组成 JS基础 阶段:ECMAScript 只是标准规定的基本语法,做不了常用的网页…

GaussDB数据库表创建行访问控制策略

目录 一、前言 二、GaussDB中的行访问控制 1、CREATE ROW LEVEL SECURITY POLICY语法 2、ALTER ROW LEVEL SECURITY POLICY语法 3、ROW LEVEL SECURITY策略与适配SQL语法关系 三、GaussDB中的行访问控制策略示例 1、实现GaussDB行访问控制的一般步骤 2、行访问控制策略…

利用canvas封装录像时间轴拖动(uniapp),封装上传uniapp插件市场

gitee项目地址,项目是一个空项目,其中包含了封装的插件,自己阅读,由于利用了canvas所以在使用中暂不支持.nvue,待优化; 项目也是借鉴了github上的一个项目,timeline-canvas,​​​​​​​ ​​​​​​​

【赠书活动】OpenCV4工业缺陷检测的六种方法

文章目录 前言机器视觉缺陷检测工业上常见缺陷检测方法延伸阅读推荐语 赠书活动 前言 随着工业制造的发展,对产品质量的要求越来越高。工业缺陷检测是确保产品质量的重要环节,而计算机视觉技术的应用能够有效提升工业缺陷检测的效率和精度。 OpenCV是一…

openwrt docker nginx 站点搭建

应为家里一直是 openwrt 软路由,这样以来也不用 重新买服务器了,就直接在 openwrt 上面跑个 nginx就行了。把自己的一些东西就可以放上面了。资源再利用哈哈; 先 ssh 连接上 openwrt :我这里的 openwrt 最近刚更新的固件&#xff…

网络安全之Linux环境配置及Linux基础知识讲解<三>

目录 一.下载安装Vmware二.下载安装Kali三.Linux目录结构四.Linux文件属性五.文件目录管理六.vim编辑器 一.下载安装Vmware Vmware官网:https://www.vmware.com 二.下载安装Kali Kali包含数百种工具,可用于各种信息安全任务,例如渗透测试、…

零售EDI:如何与EDEKA 建立EDI连接?

艾德卡EDEKA 是德国最大的食品零售商,因其采用“指纹付款”的方式进行结算,成为德国超市付款方式改革的先驱。 与EDEKA建立EDI连接,首先需要填写EDEKA提供的调查问卷,其中包括公司信息、EDI负责人信息、EDI供应商信息、销售部门信…