Elasticsearch02-安装7.x

news2025/2/24 15:12:58

零、文章目录

Elasticsearch02-安装7.x

1、Windows安装Elasticsearch

(1)JDK安装
  • Elasticsearch是基于java开发的,所以需要安装JDK。
  • 我们安装的Elasticsearch版本是7.15,对应JDK至少1.8版本以上。
  • 也可以不安装jdk,程序启动会自动到es目录下启动内置的jdk。
  • 安装完成验证版本:java -version
(2)下载
  • 下载地址:https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-15-0

(3)安装
  • Windows 版的 Elasticsearch 的安装很简单,解压即安装完毕,目录结构如下

  • 目录结构说明如下:
文件夹/文件名称说明
bin存放可执行文件和脚本的目录。
config存放配置文件的目录,通常包含应用程序的设置。
jdk存放Java开发工具包(JDK)的目录,可能包含Java运行环境和开发工具。
lib存放库文件的目录,通常包含应用程序运行所需的依赖库。
logs存放日志文件的目录,用于记录应用程序的运行信息和错误信息。
modules存放模块文件的目录,可能包含应用程序的可插拔组件或插件。
plugins存放插件的目录,通常用于扩展应用程序的功能。
LICENSE.txt许可证文件,包含有关软件使用权限和限制的法律信息。
NOTICE.txt通知文件,可能包含有关软件的额外信息,如版权声明、第三方库的致谢等。
README.asciidoc说明文件,通常以ASCIIDoc格式编写,提供有关如何安装、配置和使用软件的指导。
(4)配置文件
  • 配置文件在config/elasticsearch.yml
  • 常用的配置项如下
cluster.name: 
    配置elasticsearch的集群名称,默认是elasticsearch。建议修改成一个有意义的名称。
node.name:
    节点名,通常一台物理服务器就是一个节点,es会默认随机指定一个名字,建议指定一个有意义的名称,方便管理
    一个或多个节点组成一个cluster集群,集群是一个逻辑的概念,节点是物理概念,后边章节会详细介绍。
path.conf: 
    设置配置文件的存储路径,tar或zip包安装默认在es根目录下的config文件夹,rpm安装默认在/etc/ elasticsearch
path.data:
    设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开。
path.logs:
    设置日志文件的存储路径,默认是es根目录下的logs文件夹
path.plugins: 
    设置插件的存放路径,默认是es根目录下的plugins文件夹
bootstrap.memory_lock: true
    设置为true可以锁住ES使用的内存,避免内存与swap分区交换数据。
network.host: 
    设置绑定主机的ip地址,设置为0.0.0.0表示绑定任何ip,允许外网访问,生产环境建议设置为具体的ip。
http.port: 9200
    设置对外服务的http端口,默认为9200。
transport.tcp.port: 9300  集群结点之间通信端口
node.master: 
    指定该节点是否有资格被选举成为master结点,默认是true,如果原来的master宕机会重新选举新的master。
node.data: 
    指定该节点是否存储索引数据,默认为true。
discovery.zen.ping.unicast.hosts: ["host1:port", "host2:port", "..."]
    设置集群中master节点的初始列表。
discovery.zen.ping.timeout: 3s
    设置ES自动发现节点连接超时的时间,默认为3秒,如果网络延迟高可设置大些。
discovery.zen.minimum_master_nodes:
    主结点数量的最少值 ,此值的公式为:(master_eligible_nodes / 2) + 1 ,比如:有3个符合要求的主结点,那么这里要设置为2。
node.max_local_storage_nodes: 
    单机允许的最大存储结点数,通常单机启动一个结点建议设置为1,开发环境如果单机启动多个节点可设置大于1。
(5)启动并检查
  • 进入 bin 目录,点击 elasticsearch.bat 启动 ES 服务
    • 9300 端口为 Elasticsearch 集群间组件的通信端口。
    • 9200 端口为浏览器访问的 http协议 RESTful 端口。
  • 浏览器输入访问地址:http://localhost:9200/如下表示启动成功。

  • 说明
    • name: 节点名称,取自机器的hostname
    • cluster_name: 集群名称(默认的集群名称就是elasticsearch)
    • version.number: es版本号
    • version.lucene_version:封装的lucene版本号
(6)集群检查
  • 浏览器输入访问地址: http://localhost:9200/_cluster/health?pretty
  • status:集群状态,green 所有分片可用。yellow所有主分片可用。red主分片不可用,集群不可用。

2、Windows安装Kibana

(1)概述
  • Kibana 是 ELK 官方的可视化 ES 管理工具
(2)下载
  • 下载地址:https://www.elastic.co/cn/downloads/past-releases/kibana-7-15-0

(3)安装
  • Windows 版的 Kibana 的安装很简单,解压即安装完毕,目录结构如下

  • 目录结构说明如下:
文件/文件夹名称说明
bin包含Kibana的可执行文件
config包含Kibana的配置文件
dataKibana可能会将一些数据存储在这个目录中
node包含Node.js的可执行文件(如果通过NPM安装)
node_modules包含Kibana项目依赖的所有Node.js模块
plugins存放Kibana插件的目录
src包含了Kibana的源代码(如果源码安装)
x-packX-Pack扩展包的相关文件
.j18nrc.json配置国际化(i18n)的资源文件
LICENSE.txt包含Kibana的许可证信息
NOTICE.txt关于Kibana的版权和商标信息,以及第三方库的版权声明
package.json定义了Kibana项目的元数据
README.txt提供关于Kibana的基本信息和使用说明
(4)启动并检查
  • 启动Kibana:bin\kibana.bat
  • 浏览器输入http://localhost:5601/进入kibana表示启动成功

(6)数据操作
  • 进入http://localhost:5601/app/dev_tools#/console就可以对数据进行操作,左边输入命令执行在右面可以看到结果

(7)中文汉化
  • config\kibana.yml 配置文件中加上汉化配置
i18n.locale: "zh-CN"
  • 修改完成重启生效

3、Windows安装head插件

(1)概述
  • head插件是ES的一个可视化管理插件,用来监视ES的状态,并通过head客户端和ES服务进行交互,比如创建映射、创建索引等。
  • head的项目地址:https://github.com/mobz/elasticsearch-head 。
  • head插件是一个基于node.js 的前端项目。
(2)安装node.js
  • node 相关知识请参考 node 详解:https://blog.csdn.net/liyou123456789/article/details/131240626
(3)下载并运行
git clone git://github.com/mobz/elasticsearch-head.git 
cd elasticsearch-head 
npm install 
npm run start 
(4)浏览器访问
  • 浏览器打开地址: http://localhost:9100/

(5)配置跨域
  • F12 打开浏览器调试工具发现报错
    • Origin null is not allowed by Access-Control-Allow-Origin.
  • 原因是:head插件作为客户端要连接ES服务(localhost:9200),此时存在跨域问题,elasticsearch默认不允许跨域访问。
  • 解决方案:设置elasticsearch允许跨域访问。在config/elasticsearch.yml 后面增加以下参数:
#开启跨域支持
http.cors.enabled: true
#设置允许的来源
http.cors.allow-origin: "*"
  • 配置完成重启 ES,重新连接,成功连接ES

4、Windows安装IK 分词器

(1)概述
  • 分词(Tokenization)是文本处理中的一个关键步骤,特别是在自然语言处理(NLP)和搜索引擎技术中。分词是将连续的文本字符串拆分成一个个独立的、有意义的单元(通常是单词或短语)的过程。这个过程对于文本的进一步分析和理解至关重要。
  • IK分词器是专门为中文文本设计的分词工具,尤其适用于搜索引擎和自然语言处理领域。
  • IK分词器提供了两种分词算法:ik_smartik_max_word
    • ik_smart:进行粗粒度的分词,尽量少的对文档进行拆分,适合短语查询。
    • ik_max_word:进行最细粒度的拆分,会将文本拆分成尽可能多的词,适合术语查询
(2)下载
  • 下载地址:https://release.infinilabs.com/analysis-ik/stable/
  • 选择和 es 一致的版本下载
(3)安装
  • 将下载的压缩包解压放到 es 的插件文件夹中,ik 分词器文件夹重新命名 ik
  • 重新启动 ES,发现 IK 分词器被加载了

(4)使用分词器
  • ik_smart(最少切分)测试:
# 请求
GET _analyze
{
  "analyzer": "ik_smart",
  "text": "道德制高点"
}

#返回
{
  "tokens" : [
    {
      "token" : "道德",
      "start_offset" : 0,
      "end_offset" : 2,
      "type" : "CN_WORD",
      "position" : 0
    },
    {
      "token" : "制高点",
      "start_offset" : 2,
      "end_offset" : 5,
      "type" : "CN_WORD",
      "position" : 1
    }
  ]
}
  • ik_max_word(最细粒度划分)测试:
# 请求
GET _analyze
{
  "analyzer": "ik_max_word",
  "text": "道德制高点"
}

# 返回
{
  "tokens" : [
    {
      "token" : "道德",
      "start_offset" : 0,
      "end_offset" : 2,
      "type" : "CN_WORD",
      "position" : 0
    },
    {
      "token" : "制高点",
      "start_offset" : 2,
      "end_offset" : 5,
      "type" : "CN_WORD",
      "position" : 1
    },
    {
      "token" : "高点",
      "start_offset" : 3,
      "end_offset" : 5,
      "type" : "CN_WORD",
      "position" : 2
    }
  ]
}
(5)自定义分词
  • 在 ik 插件的 config 文件夹中添加自己的分词文件 liyou.dic
  • 在分词文件中添加自己的分词

(6)配置自定义分词
  • 在 ik 分词器配置文件中配置自己的分词文件
  • 配置完成重启 ES
(7)测试自定义分词
  • 自己造出来的词“德制”已经出现在分词中
# 请求
GET _analyze
{
  "analyzer": "ik_max_word",
  "text": "道德制高点"
}

# 返回
{
  "tokens" : [
    {
      "token" : "道德",
      "start_offset" : 0,
      "end_offset" : 2,
      "type" : "CN_WORD",
      "position" : 0
    },
    {
      "token" : "德制",
      "start_offset" : 1,
      "end_offset" : 3,
      "type" : "CN_WORD",
      "position" : 1
    },
    {
      "token" : "制高点",
      "start_offset" : 2,
      "end_offset" : 5,
      "type" : "CN_WORD",
      "position" : 2
    },
    {
      "token" : "高点",
      "start_offset" : 3,
      "end_offset" : 5,
      "type" : "CN_WORD",
      "position" : 3
    }
  ]
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Qt】drawText字体大小问题探究

背景 软件的一个功能是: 打开图片在图片上绘制序号,序号的样式是圆圈内包含数字将带有序号的图片打印出来 实现思路也很简单,在屏幕上显示时重写paintEvent函数,利用QPainter完成图片和序号的绘制。打印时只需要将QPainter对应…

redis 缓存使用

工具类 package org.springblade.questionnaire.redis;import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.beans.factor…

C# OpenCvSharp DNN 实现百度网盘AI大赛-表格检测第2名方案第一部分-表格边界框检测

目录 说明 效果 模型 项目 代码 frmMain.cs YoloDet.cs 参考 下载 其他 说明 百度网盘AI大赛-表格检测的第2名方案。 该算法包含表格边界框检测、表格分割和表格方向识别三个部分,首先,ppyoloe-plus-x 对边界框进行预测,并对置信…

创建项目以及本地仓库和远程仓库并上传项目

创建项目以及本地仓库和远程仓库并上传项目 其详细流程如下: 1、本地创建项目 2、创建本地仓库(若使用idea在创建项目时选择了创建.git本地仓库,则此步骤省略) 进入到你需要上传的项目的目录下,右键找到Git Bah He…

鸿蒙操作系统简介

华为鸿蒙系统(HUAWEI HarmonyOS),是华为公司于2019年8月9日在东莞举行的华为开发者大会(HDC.2019)上正式发布的面向全场景的分布式操作系统,可以创造一个超级虚拟终端互联的世界,将人、设备、场…

MySQL存储引擎-概述

存储引擎 存储引擎(Storage Engine)是数据库管理系统中负责数据存储和检索的部分。之前在MySQL的历史地位中曾经讲过,存储引擎是可插拔的。5.5之前默认采用MyISAM存储引擎,从5.5开始采用InnoDB存储引擎。 9大存储引擎 可以通过…

【网络取证篇】取证实战之PHP服务器镜像网站重构及绕密分析

【网络取证篇】取证实战之PHP服务器镜像网站重构及绕密分析 在裸聊敲诈、虚假理财诈骗案件类型中,犯罪分子为了能实现更低成本、更快部署应用的目的,其服务器架构多为常见的初始化网站架构,也称为站库同体服务器!也就是说网站应用…

【数据结构进阶】AVL树深度剖析 + 实现(附源码)

🌟🌟作者主页:ephemerals__ 🌟🌟所属专栏:数据结构 目录 前言 一、AVL树的概念 二、AVL树底层解析及实现 1. 节点的定义 2. 接口声明 3. AVL树的插入 3.1 更新平衡因子 3.2 旋转(重点…

java_断点调试(debug)

按照如下配置好后,即可点击“F7”,进入相应的方法,查看源码 package com.hspedu.debug_;//debug对象创建的过程,加深对调试的理解 public class Debug01 {public static void main(String[] args) {//创建对象的流程//(1&#xff…

YOLOv11融合[CVPR2024]Starnet中的star block特征提取模块

YOLOv11v10v8使用教程: YOLOv11入门到入土使用教程 YOLOv11改进汇总贴:YOLOv11及自研模型更新汇总 《Rewrite the Stars》 一、 模块介绍 论文链接:https://arxiv.org/abs/2403.19967 代码链接:https://github.com/ma-xu/Rewri…

【kubernetes】k8s集群的简述与搭建

简述 Kubernetes(简称 K8s)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序 关键特性 自动化部署和回滚:Kubernetes 可以自动化地部署和回滚应用程序,确保应用程序始终处于预期的状态。服务发现…

SpringBoot+vue实现WebSocket通信

WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务器主动向客户端推送数据。 WebSocket的主要特点: 全双工通信:客户端和服务器之间的数据可以同时双向传输低延迟&…

【BUG】记一次context canceled的报错

文章目录 案例分析gorm源码解读gin context 生命周期context什么时候cancel的什么时候context会被动cancel掉呢? 野生协程如何处理 案例分析 报错信息 {"L":"ERROR","T":"2024-12-17T11:11:33.0050800","file"…

H5 中 van-popup 的使用以及题目的切换

H5 中 van-popup 的使用以及题目的切换 在移动端开发中,弹窗组件是一个常见的需求。vant 是一个轻量、可靠的移动端 Vue 组件库,其中的 van-popup 组件可以方便地实现弹窗效果。本文将介绍如何使用 van-popup 实现题目详情的弹窗展示,并实现…

【第一节】Git的简介和安装

目录 一、git的介绍 二、git 的安装 2.1 Linux 平台安装 2.2 源码安装 2.3 Windows 平台安装 2.4 Mac 平台安装 2.5 Git 配置 2.5.1 配置文件 2.5.2 用户信息配置 2.5.3 文本编辑器配置 2.5.4 差异分析工具配置 2.5.5 查看配置信息 一、git的介绍 Git 是一种开源的…

奇怪的知识又增加了,ESP32下的Lisp编程:ULisp--Lisp for microcontrollers

ESP32下有MicroPython,那么我就在想,有Lisp语言支持吗?答案是果然有!有ULisp,专门为MCU设计的Lisp! 网址:uLisp - Lisp for microcontrollers 介绍:用于微控制器的 Lisp 适用于 Ar…

决策树的生成与剪枝

决策树的生成与剪枝 决策树的生成生成决策树的过程决策树的生成算法 决策树的剪枝决策树的损失函数决策树的剪枝算法 代码 决策树的生成 生成决策树的过程 为了方便分析描述,我们对上节课中的训练样本进行编号,每个样本加一个ID值,如图所示…

51c嵌入式~单片机~合集2

我自己的原文哦~ https://blog.51cto.com/whaosoft/12362395 一、不同的电平信号的MCU怎么通信? 下面这个“电平转换”电路,理解后令人心情愉快。电路设计其实也可以很有趣。 先说一说这个电路的用途:当两个MCU在不同的工作电压下工作&a…

Kerberos实验

kdc:192.168.72.163 客户端(机器账户win10):192.168.72.159 用户:administrator 抓包:开机登录win10,使用administrator域用户凭据登录。 生成 Kerberos 解密文件 抓取 krbtgt 用户和 win1…