Elasticsearch 核心技术(一):Elasticsearch 安装、配置、运行(Windows 版)

news2024/10/7 12:27:00

在这里插入图片描述

❤️ 个人主页:水滴技术
🚀 支持水滴:点赞👍 + 收藏⭐ + 留言💬
🌸 订阅专栏:大数据核心技术从入门到精通

文章目录

  • 一、Elasticsearch 版本的选择
  • 二、下载 **Elasticsearch**
  • 三、安装 Elasticsearch
  • 四、配置 Elasticsearch
    • 1. 集群名称
    • 2. 节点名称
    • 3. 数据存储路径
    • 4. 日志存储路径
    • 5. 网络主机
    • 6. HTTP 端口
    • 7. 节点间通信端口
    • 8. 集群与发现
    • 9. JVM 堆大小
  • 五、运行 Elasticsearch
  • 热门专栏


大家好,我是水滴~~

从现在开始,我们一起学习 Elasticsearch 的核心技术。

一、Elasticsearch 版本的选择

Elasticsearch 的版本更新很快,目前已经更新到了 8.5 版。选择版本时也不能一味地求新,还要看其他框架或组件的支持情况,比如:IK 分词器、Spring Boot 等。

在这里插入图片描述

目前 Spring Boot 3.0 是能够支持 Elasticsearch 8.5 版本的,但由于 Spring Boot 3.0 是基于 Java 17,而绝大部分企业还是基于 Java 8 的,所以我们选择 Elasticsearch 3.17 版。

在这里插入图片描述

这里要统一一下版本,后面介绍与 Spring Boot 集成的时候,使用 Spring Boot 2.7.3,它的默认版本是 Elasticsearch 7.17.7,我们就使用该版本进行安装吧。

二、下载 Elasticsearch

打开 Elasticsearch 的历史版本下载页,选择 Elasticsearch 的版本为 7.17.7,然后点击右侧的【Download】按钮进入下载页。

在这里插入图片描述

在 Elasticsearch 7.17.7 下载页中,根据自己的操作系统进行选择下载,这里我们选择【WINDOWS】进行下载。

在这里插入图片描述

开始下载…

在这里插入图片描述

下载完后就是一个 ZIP 压缩包:elasticsearch-7.17.7-windows-x86_64.zip

三、安装 Elasticsearch

Elasticsearch 的安装比较简单,直接解压即可,我的解压目录是:D:\elastic\elasticsearch-7.17.7,目录结构如下:

在这里插入图片描述

  • bin:存入一些二进制脚本,包括启动 ES、安装插件命令等都在这里。
  • config:存放 ES 的配置文件,主要是elasticsearch.yml
  • jdk:ES 自带的 Java 环境,所以我们无需自己安装 Java 环境。
  • lib:存放 ES 相关组件的 jar 包。
  • logs:日志文件存放位置。
  • plugins:插件文件存放位置,每个插件都包含在一个子目录中。
  • data:运行后会自动生成该目录,用于存放该节点上分配的索引/分片的数据文件。

四、配置 Elasticsearch

Elasticsearch 提供了良好的默认值,只需要修改少量的配置即可使用(如果你只是在自己电脑上使用 Elasticsearch 做一些测试,完全不用修改任何配置,直接运行即可)。

Elasticsearch 有三个配置文件:

  • elasticsearch.yml用于配置 Elasticsearch
  • jvm.options用于配置 Elasticsearch JVM 设置
  • log4j2.properties用于配置 Elasticsearch 日志记录

elasticsearch.yml 配置是我们重点要讲的,一些重要的配置如下:

1. 集群名称

如果搭建的是集群环境,需要在每个节点上配置相同的集群名称,默认集群名称:elasticsearch

cluster.name: my-application

2. 节点名称

在群集环境中,用于配置当前节点的名称,每个节点应该配置不同的名称

node.name: node-1

3. 数据存储路径

可以配置 Elasticsearch 数据文件的存储路径,默认:主目录下的data 目录。

path.data: D:\elastic\elasticsearch-7.17.7\data

4. 日志存储路径

可以配置 Elasticsearch 日志文件的存储路径,默认:主目录下的logs目录。

path.logs: D:\elastic\elasticsearch-7.17.7\logs

5. 网络主机

默认情况下,Elasticsearch 只能在本地主机上访问,这里可以设置一个主机地址,用于在局域网中访问。

network.host: 192.168.0.1

6. HTTP 端口

修改配置 Elasticsearch 监听的端口,默认:9200

http.port: 9200

7. 节点间通信端口

在多节点集群环境中,每个节点间的通信会有一个专门的端口,可以修改这个监听的端口,默认:9300

transport.port: 9300

8. 集群与发现

在多节点集群环境中,需要节点之间可以互相发现并选择主节点,有两个配置可以设置:

(1)配置集群环境中所有节点的通信地址,节点使用此配置发现集群中其他节点(如果不配置,默认扫描当前服务器的 9300~9305端口,生产环境还是要配置的)。

  • 可配置主机 + 端口,端口就是上一小节的“节点间通信端口”
  • 端口也可以不填写,默认使用:9300
  • 也可以是域名或IPv6地址,IPv6地址必须在中括号内。
discovery.seed_hosts:
  - 192.168.1.10:9300
  - 192.168.1.11
  - seeds.mydomain.com
  - [0:0:0:0:0:ffff:c0a8:10c]:9301

(2)配置符合条件的主节点,他们会参与主节点的选举,配置项可以使用上面小节中的“节点名称”(未配置将从所有节点中进行选举主节点,生产上建议明确列出符合主节点条件的节点)。

cluster.initial_master_nodes: 
   - node-1
   - node-2
   - node-3

9. JVM 堆大小

默认情况下,Elasticsearch 会根据当前节点的总内存自动设置 JVM 堆大小。如果是生产环境,建议对默认大小进行调整。

该配置在 jvm.options 文件中进行配置:

-Xms2g
-Xmx2g

五、运行 Elasticsearch

在 Elasticsearch 安装目录下,双击 bin\elasticsearch.bat 即可运行。

在这里插入图片描述

输出如下内容表示启动成功。

在这里插入图片描述

此时在浏览器中输入 http://localhost:9200,会输出如下内容,表示 Elasticsearch 启动成功

{
  "name" : "WIN-AS4BRM3L8AU",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "MHVG4nBpTeGXhf0Fz5Chxg",
  "version" : {
    "number" : "7.17.7",
    "build_flavor" : "default",
    "build_type" : "zip",
    "build_hash" : "78dcaaa8cee33438b91eca7f5c7f56a70fec9e80",
    "build_date" : "2022-10-17T15:29:54.167373105Z",
    "build_snapshot" : false,
    "lucene_version" : "8.11.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

热门专栏

👍 《Python入门核心技术》
👍 《IDEA 教程:从入门到精通》
👍 《Java 教程:从入门到精通》
👍 《MySQL 教程:从入门到精通》
👍 《大数据核心技术从入门到精通》

在这里插入图片描述

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

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

相关文章

Springboot+Netty实现基于天翼物联网平台CTWing(AIOT)终端TCP协议(透传模式)-云服务端(IOT平台)

之前有文章用java实现了设备端和应用订阅端,那么我根据AIOT的协议也可以实现一个demo物联网平台端,这种简易的平台是实现自己搭建物联网平台的基础。 直接用代码 新建Springboot的maven项目,pom.xml文件导入依赖包(用到了swagge…

UDP协议在Windows上使用示例

UDP(User Datagram Protocol,用户数据报协议)是无连接的,因此在两个进程通信前没有握手过程。UDP协议提供一种不可靠数据传送服务,也就是说,当进程将一个报文发送进UDP套接字时,UDP协议并不保证该报文将到达接收进程。…

过孔基础常识

过孔,一个绝大多数硬件工程师都听说过,但又并非真正了解的名词。了解的都知道,其在PCB板中其着至关重要的的作用。没有过孔的存在,很难画出一块完美的PCB板。所以呢,小编今日就带大家了解了解什么是过孔。 什么是过孔…

FCN代码及效果展示

1. 代码获取 代码地址: https://github.com/Le0v1n/ml_code/tree/main/Segmentation/FCN 2. 从头开始训练 2.1 测试平台 GPU:NVIDIA RTX 3070CPU: Intel I5-10400FRAM: 16GBOS: Windows 11Dataset: VOC2012Class num: 21(201)Batch size: 4Learning Rate: 0.1Ep…

嘉兴经开区第四届创新创业大赛总决赛成功举办

12月21日至12月22日,嘉兴经济技术开发区第四届创新创业大赛总决赛成功举办,经过激烈角逐最后共有10家企业分别获得大赛初创组和成长组的一二三等奖。 总决赛现场 嘉兴经开区第四届中国创新创业大赛于6月正式启动,陆续在嘉兴、成都、北京、西…

【详细学习SpringBoot源码之内嵌Tomcat启动原理分析编译部署Tomcat源码过程解析-9】

一.知识回顾 【0.SpringBoot专栏的相关文章都在这里哟,后续更多的文章内容可以点击查看】 【1.SpringBoot初识之Spring注解发展流程以及常用的Spring和SpringBoot注解】 【2.SpringBoot自动装配之SPI机制&SPI案例实操学习&SPI机制核心源码学习】 【3.详细学…

12-RabbitMq概述与工作模式深度剖析

MQ概述 MQ全称 Message Queue(消息队列),是在消息的传输过程中保存消息的容器。多用于分布式系统之间进行通信。 MQ 的优势 应用解耦:提高系统容错性和可维护性 异步提速:提升用户体验和系统吞吐量 削峰填谷&#xff1…

unity中使用代码接绘制三维模型

一 模型的构成 在三维世界中,绘制一个模型并不是什么很复杂的问题。只要知道了基本原理一切需求便迎刃而解。 如下图所示,任何模型都是由点线面构成的,而面的最小单位是三角形。 任何一个多边形的面,都是由多个三角形构成的。比…

Web前端105天-day64-HTML5_CORE

HTML5CORE04 目录 前言 一、复习 二、WebSocket 三、服务器搭建 四、聊天室 五、defineProperty 5.1.初识defineProperty 5.2.配置多个属性 5.3.可配置 5.4.赋值监听 5.5.练习 5.6.计算属性 总结 前言 HTML5CORE04学习开始 一、复习 SVG: 利用HTML的 DOM 来绘制图…

PCB贴片机如何送料?

1.常见的贴片机供料器四种形式 http://www.sz-bjzn.com/1547.html 2.模块化设计SMT贴片机送料器的操作方法 3.淘宝 https://item.taobao.com/item.htm?spma230r.1.14.98.33e41823OZ1zzn&id579043582781&ns1&abbucket20#detail 不错:https://item.tao…

distinct与group by 去重

distinct与group by 去重distinct 特点:group by 特点:总结:mysql中常用去重复数据的方法是使用 distinct 或者group by ,以上2种均能实现,但也有不同的地方。distinct 特点: 1、distinct 只能放在查询字段…

重新更新anaconda

更新anaconda问题阐述问题分析打开Anaconda Nvaigator打开文件所在位置复制文件所在路径找到此电脑或者打开设置找到高级系统设置环境变量添加环境变量打开scripts文件修改成功再一次启动感谢观看今天手贱,不小心删掉的anaconda,我想一不做二不休,直接重新重装了,就找到了anaco…

经典SQL语句大全(基础、提升、技巧、数据开发、基本函数)

目录 前言 正文 第一章:基础 第二章:提升 第三章:技巧 第四章:数据开发-经典​​​​​​​ 第五章:SQL Server基本函数 第六章:常识 第七章:SQLServer2000 同步复制技术实现步骤 总结…

juc-4-synchronized原理

目录 1、synchronized 作用于静态方法 总结 ​编辑 案例 静态成员变量 (synchronized锁非静态方法) 案例 静态成员变量 (synchronized锁静态方法 或 直接锁类) 2、监视器锁(monitor) 2.1 synchronized怎么实现的线程安全呢? 3、JDK6 synchronized 的优化 3.1 C…

互联网技术不再是统领,当下正在发生着一场深刻的变革

拥抱实体经济,绝对是当下互联网玩家们的首要选择。无论是头部的互联网企业来讲,还是新生的互联网玩家而言,它们都不约而同地将关注的焦点聚焦在了这样一个方向上。   透过这一点,我们可以非常明显地感受到,一个全新的…

圣诞节,记录前行中跨过的2022

2022年,我人生的第二十四年,是我大学生活的最后一年,是我职场生涯的第一年,这一年从学生到打工人,从实习生到职场员工,变化了许多,做了许多,收获了许多,同时也成长了许多…

m自适应FSK解调系统误码率matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 FSK信号的解调也有非相干和相干两种,FSK信号可以看作是用两个频率源交替传输得到的,所以FSK的接收机由两个并联的ASK接收机组成。 (1)相干解调 相干解调是利用乘法器&…

Minecraft(我的世界) Fabric 1.19.3 服务器搭建教程

Debian系统使用MCSManager9面板搭建MC Java版MOD服务器的教程,本教程用的Fabric1.19.3服务端,用其他服务端的也可以参考一下。 视频教程:https://www.bilibili.com/video/BV1Zd4y1h7zG/ 我的世界(MC) Fabric 1.19.3 开服教程,新手…

IDEA Git 选项栏各项功能详解

IDEA Git 选项栏各项功能详解 如图所示 Copy Revision Number 顾名思义 拷贝当前版本号 到剪切板 a8e4b86ce9ca01968629504a6e19b4b99d76a853 Create Patch 在 git 日志中选择要创建补丁的commit,右键选择Create Patch...同一个文件在多次commit中都存在&#xff…

DSP-离散时间系统

目录 概念: 累加器(Accumulator): N点滑动滤波器: 离散时间系统的分类 : 线性系统 Linear System 移不变系统 Shift-Invariant Systems 因果系统 Causal System 稳定系统 Stable System 无源(passive&#x…